Microsoft KB Archive/147428

{|
 * width="100%"|

Win32s Is No Longer Limited to 256 Selectors

 * }

Q147428

-

The information in this article applies to:


 * Microsoft Win32s versions 1.2, 1.25a, 1.30, 1.30a, 1.30c

-

Prior to version 1.2, Win32s had a limit of 256 selectors that it maintained for selector synthesis and once a selector had been allocated, it could not be reused after freeing it.

When thunking pointers down to the 16-bit side, Win32s allocates selectors on the fly for mapping the 0:32 linear address to the 16:16 address that the 16-bit side could use. These synthesized selectors were saved in an internal table and reused later whenever needed. It was this table that was limited only to 256 selectors in Win32s prior to version 1.20. Since Win32s could reuse these synthesized selectors, they can not be freed either.

However, this problem was eliminated in Win32s version 1.2 and the solution was further enhanced in Win32s version 1.25. Now, the current version of Win32s (version 1.30c) is no longer limited to 256 selectors.

However, it is still possible that a Win32s application could consume all available selectors in the system and potentially bring Windows 3.x to a halt, but such a scenario rarely occurs and is probably specific to a given application.

Additional query words: 1.20 256 selector synthesis fix kbinf

Keywords : kbOSWin32s

Issue type :

Technology : kbWin32sSearch kbWin32s120 kbWin32s125a kbWin32s130a