Memory Leak in Windows 95 Kernel Using Windows Sockets

Last reviewed: February 24, 1998
Article ID: Q148336
The information in this article applies to:
  • Microsoft Windows 95

SYMPTOMS

When you run a program that uses Windows Sockets in Windows 95, a gradual increase in the memory used by the operating system may occur over time, especially if the program opens and closes a large number of sockets.

CAUSE

There is an error in the Windows 95 Kernel (Kernel32.dll) that prevents the proper freeing of certain small data structures associated with Windows Socket processes and allocated sockets. Over time, these small memory leaks can result in a significant loss of available memory.

Note that you can free the resources associated with a program by closing the program. If you quit and restart Windows 95, the memory is freed.

RESOLUTION

Microsoft has released an updated version of the Kernel32.dll file that corrects the problem described in this article. The updated file is:

   KERNEL32.DLL version 4.00.951 (dated 2/2/96) and later

To install the updated Kernel, follow these steps:

  1. Download the Krnlupd.exe file to an empty folder.

  2. In My Computer or Windows Explorer, double-click the KRNLUPD.EXE file you downloaded in step 1.

  3. Follow the instructions on the screen.

The following file(s) are available for download from the Microsoft Software Library:

 ~ Krnlupd.exe (size: 337016 bytes) 

For more information about downloading files from the Microsoft Software Library, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q119591
   TITLE     : How to Obtain Microsoft Support Files from Online Services

MORE INFORMATION

When you run the Krnlupd.exe file, the following file is installed:

   File name      Folder           Size      Date       Version
   -------------------------------------------------------------
   Kernel32.dll   Windows\System   411,136   02/02/96   4.00.951
   Krnl32un.inf   Windows              533   07/25/97

If you wish to uninstall the updated Kernel32.dll file, use the right Mouse button to click the Krnl32un.inf file in the Windows folder, and then click Install from the menu that appears. This step replaces the updated Kernel32.dll with the version that was previously installed on your computer and removes Krnl32un.inf.


Additional query words: 95
Keywords : diskmem win95 kbfile kbnetwork
Version : 95
Platform : WINDOWS


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: February 24, 1998
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.