기술 자료: 126962 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

현상

다수의 Windows 기반 프로그램을 실행할 경우 사용 가능한 실제 메모리 및 페이지 파일 메모리가 충분하더라도 새 프로그램을 시작하려고 하거나 이미 실행 중인 프로그램을 사용하려고 하면 "메모리 부족" 오류 메시지가 나타납니다.

원인

이 동작은 WIN32 하위 시스템의 데스크톱 힙이 고갈될 경우에 발생할 수 있습니다.

참고 이 문제는 데스크톱 힙의 기본 크기가 512K인 Windows NT 3.5에서 더 자주 발생합니다. Windows NT 3.1에서 기본값은 3072K입니다. 이 기본값은 성능 향상을 위해 감소되었습니다.

해결 방법

중요 이 절, 방법 또는 작업에는 레지스트리를 수정하는 방법에 대한 단계가 포함되어 있습니다. 그러나 레지스트리를 잘못 수정하면 심각한 문제가 발생할 수도 있으므로 다음 단계를 주의하여 수행해야 합니다. 추가 보호 조치로 레지스트리를 수정하기 전에 해당 레지스트리를 백업하는 것이 좋습니다. 이렇게 하면 문제가 발생하는 경우 레지스트리를 복원할 수 있습니다. 레지스트리 백업 및 복원 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
322756 Windows에서 레지스트리를 백업, 편집 및 복원하는 방법
Microsoft에서 사용자를 위해 이 문제점을 해결할 수 있도록 하려면 "해결 지원" 절로 이동하십시오. 이 문제를 직접 해결하려면 직접 해결 절로 이동하십시오.

해결 지원



이 문제를 자동으로 해결하려면 Fix it 단추나 링크를 클릭합니다. 파일 다운로드 대화 상자에서 실행을 클릭하고 Fix it 마법사의 단계를 따릅니다.

문제 자동 해결
Microsoft Fix it 50496

참고
  • 이 마법사는 영어로만 제공될 수 있습니다. 그러나 다른 언어 버전의 Windows에서도 자동 해결 기능을 사용할 수 있습니다.
  • 현재 문제가 있는 컴퓨터에서 작업하고 있지 않은 경우 FIx it 솔루션을 플래시 드라이브 또는 CD에 저장한 후 문제가 있는 컴퓨터에서 실행하십시오.
  • 문제가 여전히 해결되지 않으면 컴퓨터 메모리를 늘리십시오.

그런 다음 "문제가 해결되었습니까?" 절로 이동하십시오.



직접 해결

이 문제를 해결하려면 데스크톱 힙 크기를 늘리십시오.
  1. 레지스트리 편집기(Regedt32.exe)를 실행합니다.
  2. HKEY_LOCAL_MACHINE
    하위 트리에서 다음 키로 이동합니다.
    \System\CurrentControlSet\Control\Session Manager\SubSystems
  3. Windows 값을 선택합니다.
  4. 편집 메뉴에서 String을 선택합니다.
  5. SharedSection 매개 변수 값을 늘립니다.

    Windows NT의 경우:
    SharedSection은 다음 형식을 사용하여 시스템 및 데스크톱 힙을 지정합니다.
    SharedSection=xxxx,yyyy
    yyyy 숫자 뒤에 ",256" 또는 ",512"를 추가합니다.

    Windows 2000, Windows XP 및 Windows Server 2003의 경우:
    SharedSection은 다음 형식을 사용하여 시스템 및 데스크톱 힙을 지정합니다.
    SharedSection=xxxx,yyyy,zzzz
    32비트 운영 체제의 경우 yyyy 값을 "12288"로 늘립니다.
    zzzz 값을 "1024"로 늘립니다.
    64비트 운영 체제의 경우 yyyy 값을 "20480"으로 늘립니다.
    zzzz 값을 "1024"로 늘립니다.

추가 정보

Windows NT는 데스크톱에서 실행하는 모든 Windows 기반 프로그램에 특수한 메모리 힙을 사용합니다. 데스크톱 힙은 모든 개체(창, 메뉴, 펜, 아이콘 등)에 사용됩니다. 다수의 Windows 기반 프로그램이 실행되고 있을 때 이 힙의 메모리가 부족할 수 있습니다. 할당 요청을 만족할 만큼의 충분한 메모리가 없는 경우 시스템은 오류를 반환하고 사용자에게 메모리가 부족함을 알립니다. 일부 프로그램은 실패를 제대로 처리하지 못하며, 일부 경우에는 오류 메시지 대화 상자를 만들기 위한 메모리가 부족할 수도 있습니다. 따라서 아무런 표시 없이 요청된 작업이 실패합니다.

SharedSection 키를 레지스트리 편집기를 사용하여 보면 긴 문자열로 나타납니다. 이 키의 기본값은 아래와 같습니다.
   %SystemRoot%\system32\csrss.exe
   ObjectDirectory=\Windows
   SharedSection=1024,3072,512
   Windows=On
   SubSystemType=Windows
   ServerDll=basesrv,1
   ServerDll=winsrv:GdiServerDllInitialization,4
   ServerDll=winsrv:UserServerDllInitialization,3
   ServerDll=winsrv:ConServerDllInitialization,2
   ProfileControl=Off
   MaxRequestThreads=16
				


첫 번째 SharedSection 값(1024)은 모든 데스크톱에 공통되는 힙 크기를 정의합니다. 여기에는 전역 처리 테이블(Window 핸들은 시스템마다 고유함) 및 공유 시스템 설정(예: SystemMetrics)이 포함됩니다. 이 값은 변경할 필요가 없습니다.

두 번째 SharedSection 값(3072)은 대화식 창 스테이션과 연결된 데스크톱 힙의 크기를 제어합니다(Windows 개체에 사용). 이 정적 값은 잘못 동작하는 응용 프로그램이 너무 많은 리소스를 소비하지 않도록 하는 데 사용됩니다. 데스크톱 힙이 각 프로세스의 주소 공간에 매핑되므로 이 값을 임의의 높은 값으로 설정하면 안 되며(성능이 저하되므로) 원하는 모든 응용 프로그램을 실행하는 데 충분한 정도로만 늘려야 합니다.

세 번째 SharedSection 값(512)은 "비대화식" 창 스테이션과 연결된 각 데스크톱의 데스크톱 힙 크기를 제어합니다. 이 값이 없으면 비대화식 창 스테이션의 데스크톱 힙 크기는 대화식 창 스테이션에 대해 지정된 크기와 같습니다(두 번째 SharedSection 값).
SharedSection 키의 매개 변수에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
184802 PRB: User32.dll 또는 Kernel32.dll이 초기화되지 못함

문제가 해결되었습니까?

  • 문제가 해결되었는지 확인합니다. 문제가 해결된 경우는 이 절에 설명된 작업이 끝난 것이지만 문제가 해결되지 않은 경우에는 기술 지원 서비스에 문의할 수 있습니다.
  • 의견을 보내 주셔서 감사합니다. 의견을 보내거나 이 해결 방법에 대한 문제점을 보고하려면 "Fix it for me" 블로그에 의견을 남겨 주시거나 전자 메일을 보내 주십시오.

속성

기술 자료: 126962 - 마지막 검토: 2011년 5월 16일 월요일 - 수정: 4.0
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Advanced Server 3.1
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
키워드:?
kbenv kbmsifixme kbfixme KB126962

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com