Kernel Enhancements In Windows XP
Kernel Enhancements In Windows Xp
Kernel Enhancements
Microsoft has made many enhancements to the kernel of the Microsoft® Windows® XP operating system. This section provides an overview of the new features and changes in the kernel for Windows XP and later versions, intended for system and peripheral designers, driver developers, and firmware developers who are creating products that run on Windows XP and later versions.
Kernel improvements are significant because the kernel provides low-level operating system functions, including thread scheduling, interrupt and exception dispatching, multiprocessor synchronization, and a set of routines and basic objects used by the rest of the operating system to implement higher-level constructs.
This documentation describes the kernel improvements for Windows XP and later versions, which include:
Here's an example of what you'll see when you click each catagory such as (Registry Enhancements)
Registry Enhancements
As with Windows 2000, the registry plays a key role in the configuration and control of Windows XP. The registry, which resides on the disk as multiple files called hives, was originally designed as a repository for system configuration data. Although most people think of the registry as static data stored on the hard disk, it is also a window into various in-memory structures maintained by the Windows XP executive and kernel.
The registry code is redesigned for Windows XP, providing enhanced performance while remaining transparent to applications by using existing registry programming interfaces. Windows XP registry enhancements provide performance improvements, including the following areas:
Converting a delayed close table to a Least Recently Used (LRU) list.
In previous versions of Windows, the system used exclusive locks for registry changes and for searches. To avoid lock contention, Windows XP does not use exclusive registry locks unless it is essential, such as when a program deletes a key control block. To eliminate the need for locks during registry searches,
Windows XP uses hardware instructions to maintain reference counts. Locks are used only when a search changes other data, such as the least-recently-used list. While registry access has improved, for best performance, applications should avoid accessing the registry frequently.
Providing a security cache to eliminate duplicate security descriptors.
The new registry implementation delivers two key benefits
Larger registries
Faster queries
Larger Registries
Windows XP supports larger registries than previous versions of the kernel, which were effectively limited to about 80 percent of the total size of paged pool. The new implementation is limited only by available system disk space.
A tendency to use the registry more like a database developed among registry consumers, which increased demands on registry size. The original design of the registry kept all of the registry files in the paged pool, which, in the 32-bit kernel, is effectively limited at approximately 160 MB because of the layout of the kernel virtual address space. A problem arose because, as larger registry consumers such as Terminal Services and COM appeared, a considerable amount of paged pool was used for the registry alone, potentially leaving too little memory for other kernel-mode components.
Windows XP solves this problem by moving the registry out of paged pool and using the cache manager to do an in-house management of mapped views of the registry files. The mapped views are mapped in 256-KB chunks into system cache space instead of paged pool.
Faster Queries
Another issue that affected registry performance in earlier versions is the locality problem. Related cells are spread through the entire registry files. Accessing certain information, such as attributes of a key, could degenerate into page-faults, which lowers performance.
The Windows XP registry uses an improved algorithm for allocating new cells that keeps related cells in closer proximity — such as keeping cells on the same page or nearby pages, which solves the locality problem and reduces the page faults incurred when accessing related cells. A new hive structure member tracks freed cells instead of relying on linked freed cells. When future cells are allocated, the freed cell list and a vicinity argument are used to ensure the allocation is in the same bin as the hive.
Windows XP improves the way the registry handles big data. In versions before Windows XP, if an inefficient application constantly increased a value with a small increment, it created a sparse and wasteful registry file. Windows XP solves this problem with a big cell implementation where cells larger than 16 KB are split into increments of 16-KB chunks. This reduces fragmentation when the data length of a value is increased within a certain threshold.
Other Topics
Support_Enhancements
Cross-session debugging, new quit and detach command for debugging without killing the application, and built-in user mode heap-leak detection.
I/O Subsystem Enhancements
New input/output (I/O) interfaces for performance enhancement, while retaining compatibility with Windows 2000 drivers. Kernel-mode support routines for File System Filter driver improvements. Support for performance measurements in retail code, and improved low-memory performance.
Memory Management Enhancements
Broad range of improvements, including logical prefetch to improve boot and logon performance, reduced paged pool usage, enhanced terminal server support, support of giant drivers, and Windows XP execution from ROM.
Power Management Enhancements
Native support for processor performance control, including Intel SpeedStep Technology, AMD PowerNow!, and Transmeta LongRun for longer mobile computer battery life. Hibernate, standby, and resume performance have been greatly improved.
Improved Boot and Logon Performance
When a Windows XP system is first booted, data is saved about all logical disk read operations. On later boots, this information is used to prefetch these files in parallel with other boot operations.
Headless Support
For "lights-out" datacenter deployment and remote administration.
ccNUMA Support for Windows Server 2003
Provides better performance for Cache CoherentNon Uniform Memory Access (ccNUMA) computers, as well as an interface to let applications tailor their execution characteristics in the ccNUMA environment.
The Windows XP kernel improvements provide new opportunities for independent software vendors (ISV), independent hardware vendors (IHV), and other value-added providers working with Windows 2000. Windows XP provides compatibility with Windows 2000 devices and drivers, while providing new routines, enhancements, and other features that can be leveraged into future products and services.
Back To The Top
Bud's CDs FREE MP3s Alphabetical Index Of Everything In This Site