the Memory Manager in Windows XP, with unmapped views dynamically reusable by the memory manager depending on pool usage. Memory pages in working sets are trimmed more efficiently for multiprocessor systems depending on how recently they were accessed. Lock contention is reduced, as a number of unnecessary locks used in resource synchronizations (RAM allocation and mapping through Address Windowing Extensions, system page table entries, charging non-paged/paged pool quotas, charging commitment of pages) have been removed. The dispatcher lock contention has been reduced and the Page Frame Number (PFN) lock has been optimized for increased parallelism and granularity. Windows XP uses push locks on the event synchronization object if there is no contention as they support shared and exclusive acquisition. Push locks protect handle table entries in the Executive, and in the Object Manager (to protect data structures and security descriptors) and Memory Manager (to protect AWE-related locks). Windows XP uses the SYSENTER/SYSEXIT mechanisms which require fewer clock cycles to transition to and from user mode to kernel mode to speed up system calls. The kernel page write protection limit in Windows XP is enabled on systems up to 256 MB of RAM beyond which large pages are enabled for increased address translation performance. Windows XP introduces the CreateMemoryResourceNotification function which can notify user mode processes of high or low memory availability so applications can allocate more memory or free up memory as necessary. Registry In versions of Windows prior to Windows XP, the registry size was limited to 80% of the paged pool size. In Windows XP, the registry is reimplemented outside of the paged pool; the registry hives are memory mapped by the Cache Manager into the system cache, eliminating the registry size limit. The registry size is now limited only by the available disk space. The System hive still has a maximum size, but it has been raised from 12 MB to 200 MB, eliminating the issue previous Windows versions faced of being unable to boot because of a large or fragmented System hive. The Configuration Manager has been updated to minimize the registry's memory footprint and lock contention, reduce fragmentation and thus page faults when accessing the registry, and improved algorithms to speed up registry query processing. An in-memory security cache eliminates redundant security descriptors. Debugging Windows XP supports cross user session debugging, attaching the debugger to a non-crashing user-mode program, dumping the process memory space using