Windows Server 2003 및 Windows XP의 64비트 버전에서 32비트 프로그램에 대한 호환성 고려 사항 개요

기술 자료 번역 기술 자료 번역
기술 자료: 896456 - 이 문서가 적용되는 제품 보기.
이 문서에 나와 있는 타사 공급업체 제품은 Microsoft와 무관한 회사에서 제조한 것입니다. Microsoft는 이들 제품의 성능이나 신뢰성에 관하여 명시적이든 묵시적이든 어떠한 보증도 하지 않습니다.



Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹에 참여하시기 바랍니다.
모두 확대 | 모두 축소

이 페이지에서

요약

Microsoft Windows Server 2003 및 Microsoft Windows XP의 64비트 버전에서는 32비트 프로그램을 수정하지 않고 실행하기 위해 Microsoft Windows-32-on-Windows-64(WOW64) 하위 시스템을 사용합니다. Windows Server 2003 및 Windows XP의 64비트 버전에서는 16비트 이진 명령이나 32비트 드라이버는 지원하지 않습니다. 16비트 이진 명령이나 32비트 드라이버를 사용하는 프로그램은 프로그램 제조업체에서 해당 업데이트를 제공하지 않으면 Windows Server 2003이나 Windows XP의 64비트 버전에서 실행할 수 없습니다.

프로그램의 호환성이나 성능에 영향을 주는 고려 사항이 있을 수도 있습니다. Windows Server 2003이나 Windows XP의 64비트 버전 중 하나에서 프로그램을 테스트하면 프로그램에 호환성이나 성능 문제가 발생할지 여부를 확인할 수 있습니다.

본 문서에서는 Windows Server 2003 및 Windows XP의 64비트 버전에서 32비트 프로그램을 실행하기 위한 호환성 고려 사항 중 일부에 대해 설명합니다. 본 문서에서는 Windows Server 2003 및 Windows XP의 32비트 및 64비트 버전 또는 기타 64비트 운영 체제를 비교하지 않습니다. 본 문서에서는 사용자가 32비트 바이너리와 64비트 바이너리 간의 차이를 이해한다고 가정합니다.

본 문서에서 설명하는 호환성 고려 사항은 Windows Server 2003 및 Windows XP의 64비트 버전에 적용되지만, 본 문서는 주로 Microsoft Windows Server 2003 서비스 팩 1(SP1) 릴리스에 대해 작성되었습니다. Windows Server 2003의 이전 64비트 버전과 Windows Server 2003 SP1 간의 주요 기능상의 차이점은 구체적으로 명시되어 있습니다.

소개

Microsoft Windows Server 2003의 x64 기반 버전 및 Microsoft Windows XP Professional x64 Edition은 기본 64비트 프로그램의 실행에 최적화되어 있습니다. 또한 Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition은 32비트 프로그램의 실행을 위해 WOW64 하위 시스템을 사용합니다.

추가 정보

32비트 프로그램 실행

Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서는 WOW64 하위 시스템을 통해 32비트 프로그램을 수정하지 않고 실행할 수 있습니다. WOW64 하위 시스템에서는 Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서 32비트 환경을 만드는 방법으로 이를 수행합니다. WOW64 하위 시스템에 대한 자세한 내용은 Microsoft Platform SDK 문서의 64-Bit Windows 절에서 "Running 32-bit Applications" 항목을 참조하십시오. 이 문서를 보려면 다음 Microsoft 웹 사이트를 방문하십시오.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/win64/win64/running_32_bit_applications.asp(영문)

프로그램 성능 고려 사항

WOW64 하위 시스템에서는 Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서 32비트 환경을 만듭니다. 일부 32비트 프로그램은 이러한 운영 체제에서 Windows Server 2003 및 Windows XP의 32비트 버전보다 느리게 실행될 수 있습니다. 예를 들어, 32비트 프로그램은 Microsoft Windows XP Professional에서 실행될 때보다 Windows XP Professional x64 Edition에서 더 느리게 실행될 수 있습니다. 또는 많은 양의 메모리를 요구하는 일부 32비트 프로그램은 Windows Server 2003의 x64 기반 버전 및 Microsoft Windows XP Professional x64 Edition에서 성능이 향상될 수도 있습니다. 이러한 성능 향상의 이유는 Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서 Windows Server 2003 및 Windows XP의 32비트 버전보다 큰 실제 메모리를 지원하기 때문입니다.

Windows의 64비트와 32비트 버전 간의 메모리 관리상 차이점에 대한 자세한 정보는 Microsoft Platform SDK 문서의 About Memory Management 절에서 "Virtual Address Space" 항목을 참조하십시오. 이 문서를 보려면 다음 Microsoft 웹 사이트를 방문하십시오.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/memory/base/virtual_address_space.asp(영문)

WOW64 하위 시스템의 제한 사항

WOW64 하위 시스템에서는 다음과 같은 프로그램을 지원하지 않습니다.
  • 16비트 운영 체제용으로 컴파일된 프로그램
  • 32비트 운영 체제용으로 컴파일된 커널 모드 프로그램

16비트 프로그램

Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서는 16비트 프로그램이나 16비트 프로그램 구성 요소를 지원하지 않습니다. Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서 16비트 프로그램을 실행하기 위해 필요한 소프트웨어 에뮬레이션은 이러한 프로그램의 성능을 크게 저하시킬 수 있습니다.

32비트 프로그램을 설치하고 구성하기 위해 16비트 설치 관리자가 사용되는 경우가 많습니다. 또한 일부 32비트 프로그램은 올바른 실행을 위해 16비트 구성 요소가 필요하기도 합니다. 16비트 구성 요소가 필요한 32비트 프로그램은 설치된 후에 제대로 실행될 수도 있지만, 32비트 프로그램을 설치하기 위해 16비트 설치 관리자를 사용할 수는 없습니다. 16비트 구성 요소가 필요한 프로그램은 Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서 실행할 수 없습니다.

16비트 구성 요소가 필요한 32비트 프로그램에서 16비트 파일이나 구성 요소를 실행하려고 하면 32비트 프로그램에서 시스템 로그에 오류 메시지를 기록합니다. 그런 다음 운영 체제는 32비트 프로그램에서 오류를 처리하도록 합니다.

프로그램에 16비트 구성 요소가 필요한지 여부를 확인하려면 프로그램을 설치하고 실행해 봅니다. 프로그램에서 오류 메시지가 발생하면, Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition과 호환되는 업데이트가 있는지 제조업체에 문의하십시오.

32비트 드라이버

Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서는 32비트 드라이버를 지원하지 않습니다. 모든 하드웨어 장치 드라이버 및 프로그램 드라이버는 Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition용으로 컴파일되어야 합니다.

Windows Server 2003 SP1의 x64 기반 버전이나 Windows XP Professional x64 Edition을 실행 중인 컴퓨터에서 32비트 프로그램이 32비트 드라이버를 설치하려고 하면 드라이버가 설치되지 않습니다. 이러한 동작이 발생하면 Windows Server 2003 SP1의 x64 기반 버전이나 Windows XP Professional x64 Edition에서 32비트 프로그램에 오류를 보고합니다.

Windows Server 2003의 x64 기반 버전이나 Windows XP Professional x64 Edition을 실행 중인 컴퓨터에서 32비트 프로그램이 32비트 드라이버를 자동 시작으로 등록하려고 하면 컴퓨터의 부트스트랩 로더에서는 32비트 드라이버가 지원되지 않음을 인식합니다. 이러한 경우 Windows Server 2003의 x64 기반 버전이나 Windows XP Professional x64 Edition에서 32비트 드라이버가 시작되지 않지만 등록된 기타 드라이버는 시작됩니다.

프로그램에 32비트 드라이버가 필요한지 여부를 확인하려면 프로그램을 설치하고 실행해 봅니다. 프로그램에서 오류 메시지가 발생하면, Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition과 호환되는 업데이트가 있는지 제조업체에 문의하십시오.

추가 고려 사항

레지스트리 및 파일 리디렉션

WOW64 하위 시스템에서는 레지스트리 호출 및 일부 파일 시스템 호출을 리디렉션하는 방법으로 32비트 바이너리와 64비트 바이너리를 분리합니다. WOW64 하위 시스템이 바이너리를 분리하는 이유는 32비트 바이너리에서 실수로 64비트 바이너리의 데이터에 액세스하지 못하도록 하기 위한 것입니다. 예를 들어, %systemroot%\System32 폴더에 있는 .dll 파일을 실행하는 32비트 바이너리에서 실수로 32비트 바이너리와 호환되지 않는 64비트 .dll 파일에 액세스를 시도할 수 있습니다. 이 문제를 방지하기 위해 WOW64 하위 시스템에서는 %systemroot%\System32 폴더에 대한 액세스를 %systemroot%\SysWOW64 폴더로 리디렉션합니다. 이러한 리디렉션을 통해 32비트 프로그램에서 작동하도록 설계된 .dll 파일이 액세스되므로 호환성 오류가 방지됩니다.

파일 시스템 및 레지스트리 리디렉션에 대한 자세한 내용은 Microsoft Platform SDK 문서의 64-Bit Windows 절에서 "Running 32-bit Applications" 항목을 참조하십시오. 이 문서를 보려면 다음 Microsoft 웹 사이트를 방문하십시오.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/win64/win64/running_32_bit_applications.asp(영문)
WOW64 하위 시스템에서는 32비트 바이너리를 변경하지 않고도 32비트 이진 호출을 리디렉션할 수 있습니다. 그러나 일부 작업을 수행할 때 이러한 리디렉션의 영향이 드러날 수도 있습니다. 예를 들어, 64비트 명령 프롬프트에서 명령줄 스크립트를 입력하면 명령 프롬프트에서 Program Files 폴더의 32비트 프로그램에 액세스할 수 없습니다. 이는 WOW64 하위 시스템에서 32비트 프로그램을 리디렉션하여 Program Files (x86) 폴더에 설치하기 때문입니다. 올바른 폴더에 액세스하려면 명령줄 스크립트를 변경해야 합니다. 또는 32비트 명령 프롬프트에 명령줄 스크립트를 입력할 수도 있습니다. 32비트 명령 프롬프트에서는 파일 시스템 호출을 자동으로 올바른 32비트 디렉터리로 리디렉션합니다.

32비트 명령 프롬프트를 시작하려면 다음과 같이 하십시오.
  • 시작, 실행을 차례로 누르고 %windir%\SysWoW64\cmd.exe를 입력한 다음 확인을 누릅니다.

버전 확인

일부 32비트 프로그램에서는 운영 체제의 버전 정보를 검사합니다. 이러한 검사를 수행하는 많은 32비트 프로그램에서는 Windows Server 2003의 x64 기반 버전이나 Windows XP Professional x64 Edition을 호환되는 운영 체제로 인식하지 못합니다. 이러한 문제가 발생하면 32비트 프로그램은 버전 확인 오류를 생성한 다음 종료합니다. 이러한 문제가 발생하면, Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition과 호환되는 업데이트가 있는지 32비트 프로그램의 제조업체에 문의하십시오.

Microsoft .NET Framework

Microsoft .NET Framework로 컴파일된 프로그램은 다음 조건이 성립하면 WOW64 하위 시스템에서 32비트 프로그램으로 실행됩니다.
  • 프로그램의 헤더 정보에 ILONLY 비트가 설정되어 있습니다.
  • 프로그램이 Microsoft .NET Framework 1.1로 컴파일되어 있습니다.
프로그램의 헤더 정보에 ILONLY 비트가 설정되어 있지 않거나 프로그램이 Microsoft .NET Framework 버전 2.0으로 컴파일되어 있으면 프로그램은 기본 64비트 프로그램으로 실행됩니다.

OpenGL

Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에는 OpenGL 그래픽 드라이버가 없습니다. Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition과 호환되는 드라이버가 있는지 장치 제조업체에 문의하십시오.

Microsoft Management Console(MMC)

Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서는 다양한 스냅인을 실행하기 위해 Microsoft Management Console(MMC)의 64비트 버전을 사용합니다. 그러나 WOW64 하위 시스템에서 스냅인을 실행하기 위해 MMC의 32비트 버전이 필요한 경우도 있습니다. Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서 MMC의 동작에 대한 자세한 내용은 Microsoft Platform SDK 문서의 Using MMC 2.0 절에서 "Running 32-bit and 64-bit Snap-ins in 64-bit Windows" 항목을 참조하십시오. 이 문서를 보려면 다음 Microsoft 웹 사이트를 방문하십시오.
http://msdn2.microsoft.com/en-us/library/aa815172.aspx(영문)

Itanium 고려 사항

다음 절에서는 Microsoft Windows Server 2003 및 Microsoft Windows XP의 Itanium 기반 버전에서 실행되는 32비트 프로그램에 대한 고려 사항 및 제한 사항을 간략하게 설명합니다.

IA-32 EL(Intel Architecture 32-bit Execution Layer)

Microsoft Windows Server 2003 서비스 팩 1(SP1) 및 Microsoft Windows XP의 Itanium 기반 버전에서는 32비트 프로그램을 지원하기 위해 IA-32 EL(Intel Architecture 32-bit Execution Layer)을 사용합니다. Microsoft Windows Server 2003 및 Windows XP의 이전 Itanium 기반 버전에서는 WOW64 하위 시스템에서 이러한 프로그램을 지원합니다. WOW64 하위 시스템에서는 CPU의 특수 하드웨어를 사용하여 32비트 프로그램의 x86 명령을 실행합니다. 그러나 IA-32 EL은 32비트 프로그램의 x86 명령을 Windows Server 2003 및 Windows XP의 Itanium 기반 버전에서 대응하는 명령으로 변환합니다. IA-32 EL은 기본 64비트 모드에서 32비트 프로그램의 x86 명령을 변환한 다음 WOW64 하위 시스템이 Itanium 기반 CPU 하드웨어에서 32비트 프로그램을 실행하도록 합니다.

32비트 프로그램을 Itanium 기반 CPU 하드웨어에서 실행하면 32비트 프로그램의 성능이 향상됩니다. IA-32 EL에서 32비트와 64비트 명령 집합 간에 변환할 때 약간의 오버헤드가 발생하지만 전체적인 성능 향상을 체감할 수 있습니다. 또한 IA-32 EL에서는 32비트 프로그램의 성능 향상을 위한 많은 기능을 제공합니다. 예를 들어, IA-32 EL은 이미 변환된 명령을 캐시할 수 있습니다. 이를 통해 현재 실행 중인 32비트 응용 프로그램의 성능이 향상됩니다.

IA-32 EL에 대한 자세한 내용은 다음 Intel 웹 사이트를 방문하십시오.

http://www.intel.com/cd/products/services/apac/kor/219773.htm 이 문서에 포함된 타사 공급업체의 연락처 정보는 기술 지원을 받는 데 도움을 주기 위한 것입니다. 이 연락처 정보는 예고 없이 변경될 수 있습니다. Microsoft는 이러한 타사 공급업체 연락처 정보의 정확성을 보증하지 않습니다.

메모리 관리

Microsoft Windows Server 2003 및 Windows XP의 Itanium 기반 버전에서는 32비트 프로그램에 대해 다음과 같은 메모리 관리 기능이 지원되지 않습니다.
  • IO(입력/출력) 분산/수집(scatter/gather)
    자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    160606 Windows NT의 SQL Server에 대한 성능 향상
  • AWE(Address Windowing Extensions)
  • 메모리 페이지 변경 알림
이러한 기능을 사용하는 32비트 프로그램은 Windows Server 2003 및 Windows XP의 Itanium 기반 버전에서 실행할 수 없으며, 해당 프로그램의 64비트 버전을 실행해야 합니다.

이러한 메모리 관리 기능을 사용하는 32비트 프로그램에서 오류가 발생하면, Windows Server 2003 및 Windows XP의 Itanium 기반 버전과 호환되는 업데이트가 있는지 프로그램 제조업체에 문의하십시오.

그래픽 지원

다음 표에서는 Windows Server 2003 및 Windows XP의 Itanium 기반 버전에서 실행되는 32비트 바이너리를 위해 지원되는 그래픽 솔루션을 보여 줍니다.
표 축소표 확대
그래픽 솔루션소프트웨어 가속하드웨어 가속
DDraw아니요
D3D3아니요아니요
D3D5아니요아니요
D3D6아니요아니요
D3D7아니요아니요
D3D8아니요아니요
D3D9아니요아니요
OpenGL
그래픽 하드웨어 가속이 지원되지 않는 경우, 그래픽 하드웨어 가속을 사용하는 바이너리는 Windows Server 2003 및 Windows XP의 Itanium 기반 버전에서 32비트 바이너리로 실행할 수 없습니다. 또한 그래픽을 집중적으로 사용하는 32비트 바이너리는 하드웨어 가속이 지원되지 않을 경우 성능이 저하될 수 있습니다.

32비트 프로그램에서 DirectX 하드웨어 가속을 사용하는 경우, Windows Server 2003 및 Windows XP의 Itanium 기반 버전과 호환되는 업데이트가 있는지 프로그램 제조업체에 문의하십시오.

x64 고려 사항

Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서는 32비트 명령과 64비트 명령을 지원합니다. WOW64 하위 시스템에서는 프로세서의 기본 모드를 전환하는 방법으로 기본 64비트 모드에서 32비트 프로그램을 실행할 수 있습니다. 별도의 하드웨어 또는 소프트웨어 계층은 필요하지 않습니다. Windows Server 2003의 x64 기반 버전 및 Windows XP Professional x64 Edition에서 32비트 프로그램을 실행할 때 성능이 저하될 가능성은 낮습니다.

x64 기반 프로세서의 성능에 대한 자세한 내용은 프로세서 제조업체에 문의하거나 제조업체의 웹 사이트를 방문하십시오.본 문서의 정보 및 솔루션은 문서를 게시할 때 이러한 문제에 대한 Microsoft Corporation의 당시 관점을 나타냅니다. 이 솔루션은 Microsoft나 타사 공급업체를 통해 구할 수 있습니다. Microsoft는 본 문서에 언급된 특정 타사 공급업체나 타사 솔루션을 특별히 권장하지 않습니다. 본 문서에 언급되지 않은 다른 타사 공급업체나 타사 솔루션이 있을 수도 있습니다. Microsoft는 변화하는 시장 환경에 대처해야 하므로 Microsoft가 본 문서에 대해 책임을 지는 것으로 해석해서는 안됩니다. Microsoft는 Microsoft나 위에 언급된 타사 공급업체가 제시한 정보 또는 솔루션 일체에 대해 정확성을 보장하거나 보증하지 않습니다.

Microsoft는 보증을 하지 않으며 명시적, 암묵적 또는 법적인 모든 의사 표현, 보증 및 조건을 배제합니다. 여기에는 모든 서비스, 솔루션, 제품 또는 기타 모든 자료나 정보와 관련된 의사 표현, 보증, 제품명 조건, 저작권 비침해, 만족도, 상업성 및 특정 목적에 대한 적합성이 포함되며 이에 국한되지 않습니다. Microsoft는 어떠한 경우에도 본 문서에 언급된 타사 솔루션에 대해 책임을 지지 않습니다.

참조

Intel의 Itanium II 프로세서에 대한 자세한 내용을 보려면 다음 Intel 웹 사이트를 방문하십시오.
http://www.intel.com/products/processor/itanium2/index.htm
이 문서에 포함된 타사 공급업체의 연락처 정보는 기술 지원을 받는 데 도움을 주기 위한 것입니다. 이 연락처 정보는 예고 없이 변경될 수 있습니다. Microsoft는 이러한 타사 공급업체 연락처 정보의 정확성을 보증하지 않습니다.

AMD64 프로세서에 대한 자세한 정보를 보려면 다음 Advanced Micro Devices 웹 사이트를 방문하십시오.
http://www.amd.com/kr-kr/
이 문서에 포함된 타사 공급업체의 연락처 정보는 기술 지원을 받는 데 도움을 주기 위한 것입니다. 이 연락처 정보는 예고 없이 변경될 수 있습니다. Microsoft는 이러한 타사 공급업체 연락처 정보의 정확성을 보증하지 않습니다.

Windows Server 2003 및 Windows XP의 Itanium 기반 버전 프로그램 개발에 대한 자세한 내용을 보려면 다음 Microsoft 웹 사이트를 방문하십시오.
http://msdn2.microsoft.com/en-us/library/ms952405.aspx(영문)


Windows Server 2003 및 Windows XP의 64비트 버전 프로그램 개발과 관련한 다른 문제에 자세한 내용을 보려면 다음 Microsoft 웹 사이트를 방문하십시오.
http://www.microsoft.com/korea/msdn/
http://msdn.microsoft.com/library/en-us/sdkintro/sdkintro/devdoc_platform_software_development_kit_start_page.asp(영문)
http://msdn.microsoft.com/library/en-us/Intro_g/hh/Intro_g/ddksplash_d0c992d8-3d64-44cc-ab2c-13bcfa0faffb.xml.asp(영문)


속성

기술 자료: 896456 - 마지막 검토: 2007년 1월 30일 화요일 - 수정: 4.4
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows XP Professional x64 Edition
키워드:?
kbinfo kbtshoot kbperformance kbinterop kbhardware kbusage KB896456

피드백 보내기

 

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