Knowledge Base

Windows Reports Out of Resources Error When Memory Is Available

Article ID: 142719

Article Last Modified on 2/21/2007


APPLIES TO


This article was previously published under Q142719

SYMPTOMS

Windows or a Windows service reports an error in the event log stating that the system is out of resources; however, according to Performance Monitor and Windows Diagnostics, there is plenty of RAM available. For example, if a large number of connections are made to SQL Server, SQL Server reports an error 1450 - Insufficient System Resources, even though this system has plenty of RAM available.

CAUSE

The Windows kernel is running out of paged-pool memory. When Windows starts, it calculates the amount of paged-pool memory available to the kernel based on the amount of physical RAM in the system. The following lists describes the maximum values in Windows:
  • In Windows NT, the maximum value for paged-pool memory is 192 MB.
  • In Windows 2000, the maximum value for paged-pool memory is 470 MB; the maximum value for non-paged-pool memory is 256 MB.
If the kernel allocates all of its allotted paged- pool memory, it will not be able to perform many tasks and will instead return a STATUS_INSUFFICIENT_RESOURCES (0xC000009A) message.

MORE INFORMATION

This behavior is by design. Windows currently uses 32-bit addressing for memory. This only allows for 4 GB of addressable RAM, which must be divided into various sections of virtual memory. The kernel only has 2 GB to divide up and, in this distribution of addresses, paged-pool memory is allocated a maximum of 192 MB. This is a restriction of the 32-bit addressing.

Additional query words: prodnt

Keywords: kbnetwork KB142719