윈32스

Win32s

Win32s마이크로소프트 윈도우즈 3.1 및 3.11 운영 체제를 위한 32비트 애플리케이션 런타임 환경이다.그것은 콜 을 사용하여 일부 32비트 애플리케이션을 16비트 운영 체제에서 실행할 수 있도록 했다.Win32s의 베타 버전은 1992년 10월에 출시되었다.[1]버전 1.10은 윈도 NT 3.1과 동시에 1993년[2] 7월에 출시되었다.

개념과 특성

Win32s는 초기 버전의 Windows NT에서 존재했던 것처럼 Win32 Windows API의 부분적인 구현을 의도했다.[3]

Win32s의 "s"는 Win32s가 멀티스레딩, 비동기 I/O, 새로운 직렬 포트 기능 및 많은 GDI 확장을 포함한 많은 윈도우 NT 기능이 부족했기 때문에 하위 집합을 의미한다.이는 Microsoft의 3D 핀볼 스페이스 캐더와 Windows 95가 포함된 애플릿을 포함하여 일부 표준 Win32 프로그램이 올바르게 작동하지만 일반적으로 Win32s 플랫폼용으로 특별히 설계된 "Win32s 애플리케이션"으로 제한했다.[4][5]초기 버전의 Internet Explorer(버전 5까지)도 Win32s 호환이 가능했지만, 이것들은 16비트 형식으로도 존재했다.[5]일반적으로 32비트 애플리케이션이 Win32s와 호환되려면 16MB 이상의 메모리나 DirectX와 같은 확장 기능을 사용하지 않아야 했다.

Win32s는 Win16 환경의 많은 한계를 계승하고 있다.True Win32 애플리케이션은 전용 가상 주소 공간 내에서 실행되는 반면 Windows 3.x는 실행 중인 모든 애플리케이션 간에 공유되는 주소 공간을 사용했다.Win32s에서 실행되는 애플리케이션은 Windows 3.1의 공유 주소 공간과 협동 멀티태스킹 특성을 가지고 있다.따라서 Win32 응용 프로그램이 Win32s에서 실행되려면 재배치 정보를 포함해야 한다.

Thunking이라는 이름의 기술은 Win32s뿐만 아니라 Windows 95, Windows 98, Windows ME인 시카고 커널 운영 체제의 구현에 필수적이다. 그러나 사용자 레벨 Thunking을 허용하면 코어 또는 커널 증권화뿐만 아니라 시스템 전체에서 안정적인 메모리 관리나 메모리 보호를 제공하려는 시도가 크게 복잡해진다.y—이것은 서툴게 작성된 응용 프로그램이 Win32s와 시카고 커널 시스템의 시스템 안정성을 해칠 수 있게 해준다. 32비트 버전의 Windows NT 기능이 64비트 버전의 Windows에서 제거되었음에도 불구하고 투명하게 Win16 응용 프로그램을 실행할 수 있는 가상 머신을 제공한다.

호환성.

Win32s 호환 애플리케이션은 마이크로소프트의 개발 툴뿐만 아니라 최소한 볼랜드 C++ 4.x와 Symantec C++(현재의 Digital Mars C+++)를 사용하여 구축할 수 있었다.그러나 윈도 NT 3.1에 내포되어 있던 몇 가지 프로그램 컴파일 옵션(예: EXE 재배치 정보)과 DLL은 Win32s의 어플리케이션에 포함되어야 한다.마이크로소프트는 1996년 말에 출시된 Visual C++ 버전 4.2에서 Win32s에 대한 지원을 중단했다.

윈32s는 윈도 95에 포함되면서 게임이 유명해지기 몇 년 전, 카드 게임 프리셀의 구현을 예시로 포함시켰다.

워크래프트 II: Traise of Darkness, DOS 게임에는 Win32s를 실행해야 하는 레벨 에디터가 포함되어 있었다.편집자는 고해상도 그래픽 모드는 이미 윈도우가 처리하고 있었기 때문에 대형 맵을 표시하기 위해 윈도우 GUI를 사용했다.NCSA 모자이크브라우저 버전 2도 Win32s가 필요했다.[6]

C# 애플리케이션은 Core에서 컴파일할 수 있음RT 컴파일러는 1994년 Visual C++ Linker에서 승인한 Win32 코드로 컴파일러한다.이 조합은 Win32s와 함께 Windows 3.1에서 실행할 수 있는 Win32 실행 파일을 생성한다.[7]

출처 및 설치

Win32s는 여전히 웹 검색 엔진인 PW1118을 사용하여 찾을 수 있다.EXE는 일반적으로 사용되는 설치 파일이다.

$sha256sum pw1118.exe 5e7162ba950856104b4c6cb39df55e73f86b1d65c3134dba8ba6455 pw1118.exe

개발자는 일관된 클립보드 처리가 필요한 경우 OLE를 설치하고 있는지 확인해야 한다.OLE 인식(즉, OLE 서버 설정)이 필요한 많은 응용프로그램을 다시 설치해야 한다.윈32s는 일부 초기 윈32 프로그램에도 포함되었다.

참조

  1. ^ "Win32s Beta".
  2. ^ "Win32s 1.1".
  3. ^ "General Overview of Win32s". Microsoft Corporation. 12 April 2004. Retrieved 2007-09-05.
  4. ^ "General limitations under Win32s". Microsoft Corporation. 22 November 2005. Retrieved 2007-09-05.
  5. ^ a b "The Win32s compatibility list". Retrieved 2008-11-30.
  6. ^ December, John; Randall, Neil (1994). World Wide Web Unleashed. Sams Publishing. ISBN 0-672-30617-4.
  7. ^ Strehovský, Michal (9 January 2020). "1/7 Did you ever need to run a piece of C# code on Windows 3.11? Me neither, but I did it anyway". Twitter. 해커 뉴스.

외부 링크