The issue is generated by the evolution of the operating system's Memory Manager

Oct 17, 2007 11:44 GMT  ·  By

An overhauled system memory management model is one of the aspects of the evolution from Windows XP to Windows Vista. Essentially, Microsoft has scrapped the inflexible boot-based Memory Manager in Windows XP, for a revamped and dynamic system in Windows Vista. However, the migration has not been as streamlined as the Redmond company might have hopped. Currently, Microsoft has already integrated a fix into Windows Server 2008, formerly codenamed Longhorn, with Release Candidate 0 build. On top of this, the first service pack for Windows Vista will also resolve the issues associated with kernel memory dumps in the operating system.

"With the advent of Windows Vista there are changes made in how the operating system determines if it can take a kernel memory dump or not. Starting in Vista the amount of memory allocated for kernel mode could vary dynamically. If the pagefile is not big enough, switching to minidump at dump time can't be done easily. So the dump stack initialization is happening at the time of boot where this check for the pagefile size is done," explained Brad Rutkowski, from the Windows Diagnostic and Debug team at Microsoft.

Rutkowski revealed that in the context in which there is not a correlation between the size of the pagefile and that of the physical memory at boot, in a scenario where the configurations of the operating system are pointing to a kernel dump, then only a fraction of the process is actually accomplished. Microsoft will also introduce the modifications already in Windows Server 2008, into Windows Vista, starting with Service Pack 1 Release Candidate 0.

"Starting with the release of RC0, there is a new registry key that can be set which will tell the OS to ignore the page file check on boot up and you'll take your chances getting a valid kernel dump. We've tested this internally and all works as expected. So if you need kernel dumps on your large memory systems, this might be something to remember for your bag of tricks. Key: HKLM System CurrentControlSet Control CrashControl - Value: IgnorePagefileSize - Type: DWORD - Data: 1", Rutkowski added.