fbpx
Wikipedia

Win32s

Win32s is a 32-bit application runtime environment for the Microsoft Windows 3.1 and 3.11 operating systems. It allowed some 32-bit applications to run on the 16-bit operating system using call thunks. A beta version of Win32s was available in October 1992.[1] Version 1.10 was released in July 1993[2] simultaneously with Windows NT 3.1.

Concept and characteristics edit

Win32s was intended as a partial implementation of the Win32 Windows API as it existed in early versions of Windows NT.[3]

The "s" in Win32s signifies subset, as Win32s lacked a number of Windows NT functions, including multi-threading, asynchronous I/O, newer serial port functions and many GDI extensions. This generally limited it to "Win32s applications" which were specifically designed for the Win32s platform,[4] although some standard Win32 programs would work correctly, including Microsoft's 3D Pinball Space Cadet and some of Windows 95's included applets.[5] Early versions of Internet Explorer (up to Version 5) were also Win32s compatible, although these also existed in 16-bit format.[5] Generally, for a 32-bit application to be compatible with Win32s, it had to not use more than 16MB of memory or any extended features such as DirectX.

Win32s inherits many of the limitations of the Win16 environment. True Win32 applications execute within a private virtual address space, whereas Windows 3.x used an address space shared among all running applications. An application running on Win32s has the shared address space and cooperative multitasking characteristics of Windows 3.1. Consequently, for a Win32 application to run on Win32s, it must contain relocation information.

A technique named thunking is fundamental to the implementation of Win32s as well as Chicago-kernel operating systems, which are Windows 95, Windows 98, and Windows ME. However, allowing user-level thunking greatly complicates attempts to provide stable memory management or memory protection on a system-wide basis, as well as core or kernel security—this allows poorly written applications to undermine system stability on Win32s, as well as the Chicago-kernel systems. 32-bit versions of Windows NT transparently provide a virtual machine for running Win16 applications, although this feature was removed from 64-bit versions of Windows.

Compatibility edit

Win32s-compatible applications could be built using Microsoft's development tools, as well as at least Borland C++ 4.x and Symantec C++ (now Digital Mars C++). However, several program compilation options (such as EXE relocation information) and DLLs which were implicit in Windows NT 3.1 have to be included with the application in Win32s. Microsoft ceased support for Win32s in Visual C++ version 4.2 released in late 1996.

Win32s included an implementation of the card game FreeCell as an example application, a couple of years before the game became famous with its inclusion in Windows 95.

Warcraft II: Tides of Darkness, a DOS game, included a level editor that required Win32s to run. The editor used a Windows GUI for displaying the large maps because high-resolution graphic modes were already handled by Windows. The NCSA Mosaic web browser version 2 also required Win32s.[6]

C# applications can be compiled by the CoreRT compiler into Win32 code that is accepted by the 1994 Visual C++ linker. This combination produces Win32 executables that can run on Windows 3.1 with Win32s.[7]

Sources and installation edit

Win32s can still be found using web search engines; PW1118.EXE is generally the installation file used.

$ sha512sum pw1118.exe 31b532f324a1eebd1073e043e0c81cb131ad40681b1a7e5e73f881369eafa38ba9d91a541d99fd8b96e937f0e93bfd17cf9c26cc77daf8c77d7c9df803b3aef9 

Developers should ensure they are installing OLE if they require consistent clipboard handling. Many applications which need to be made OLE aware (i.e. setting up their OLE server) must be reinstalled. Win32s was also included with some early Win32 programs.

References edit

  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. Hacker News.

External links edit

  • Win32s Compatibility List
  • Download Win32s from Microsoft [dead link]
  • Download Win32s from mirror
  • Archive of almost every version of Win32s
  • Andreas C. Hofmann: Win32 subset / Win32s (1993 to 1995), in: Computing History Dictionary (german) [⁴11.10.2021].

win32s, application, runtime, environment, microsoft, windows, operating, systems, allowed, some, applications, operating, system, using, call, thunks, beta, version, available, october, 1992, version, released, july, 1993, simultaneously, with, windows, conte. Win32s is a 32 bit application runtime environment for the Microsoft Windows 3 1 and 3 11 operating systems It allowed some 32 bit applications to run on the 16 bit operating system using call thunks A beta version of Win32s was available in October 1992 1 Version 1 10 was released in July 1993 2 simultaneously with Windows NT 3 1 Contents 1 Concept and characteristics 2 Compatibility 3 Sources and installation 4 References 5 External linksConcept and characteristics editWin32s was intended as a partial implementation of the Win32 Windows API as it existed in early versions of Windows NT 3 The s in Win32s signifies subset as Win32s lacked a number of Windows NT functions including multi threading asynchronous I O newer serial port functions and many GDI extensions This generally limited it to Win32s applications which were specifically designed for the Win32s platform 4 although some standard Win32 programs would work correctly including Microsoft s 3D Pinball Space Cadet and some of Windows 95 s included applets 5 Early versions of Internet Explorer up to Version 5 were also Win32s compatible although these also existed in 16 bit format 5 Generally for a 32 bit application to be compatible with Win32s it had to not use more than 16MB of memory or any extended features such as DirectX Win32s inherits many of the limitations of the Win16 environment True Win32 applications execute within a private virtual address space whereas Windows 3 x used an address space shared among all running applications An application running on Win32s has the shared address space and cooperative multitasking characteristics of Windows 3 1 Consequently for a Win32 application to run on Win32s it must contain relocation information A technique named thunking is fundamental to the implementation of Win32s as well as Chicago kernel operating systems which are Windows 95 Windows 98 and Windows ME However allowing user level thunking greatly complicates attempts to provide stable memory management or memory protection on a system wide basis as well as core or kernel security this allows poorly written applications to undermine system stability on Win32s as well as the Chicago kernel systems 32 bit versions of Windows NT transparently provide a virtual machine for running Win16 applications although this feature was removed from 64 bit versions of Windows Compatibility editWin32s compatible applications could be built using Microsoft s development tools as well as at least Borland C 4 x and Symantec C now Digital Mars C However several program compilation options such as EXE relocation information and DLLs which were implicit in Windows NT 3 1 have to be included with the application in Win32s Microsoft ceased support for Win32s in Visual C version 4 2 released in late 1996 Win32s included an implementation of the card game FreeCell as an example application a couple of years before the game became famous with its inclusion in Windows 95 Warcraft II Tides of Darkness a DOS game included a level editor that required Win32s to run The editor used a Windows GUI for displaying the large maps because high resolution graphic modes were already handled by Windows The NCSA Mosaic web browser version 2 also required Win32s 6 C applications can be compiled by the CoreRT compiler into Win32 code that is accepted by the 1994 Visual C linker This combination produces Win32 executables that can run on Windows 3 1 with Win32s 7 Sources and installation editWin32s can still be found using web search engines PW1118 EXE is generally the installation file used sha512sum pw1118 exe 31b532f324a1eebd1073e043e0c81cb131ad40681b1a7e5e73f881369eafa38ba9d91a541d99fd8b96e937f0e93bfd17cf9c26cc77daf8c77d7c9df803b3aef9 Developers should ensure they are installing OLE if they require consistent clipboard handling Many applications which need to be made OLE aware i e setting up their OLE server must be reinstalled Win32s was also included with some early Win32 programs References edit Win32s Beta Win32s 1 1 General Overview of Win32s Microsoft Corporation 12 April 2004 Retrieved 2007 09 05 General limitations under Win32s Microsoft Corporation 22 November 2005 Retrieved 2007 09 05 a b The Win32s compatibility list Retrieved 2008 11 30 December John Randall Neil 1994 World Wide Web Unleashed Sams Publishing ISBN 0 672 30617 4 Strehovsky 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 Hacker News External links editWin32 Tutorial by Graeme Chandler Win32s Compatibility List Download Win32s from Microsoft dead link Download Win32s from mirror Archive of almost every version of Win32s Andreas C Hofmann Win32 subset Win32s 1993 to 1995 in Computing History Dictionary german 11 10 2021 Retrieved from https en wikipedia org w index php title Win32s amp oldid 1160998782, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.