Windows 2000 Virtual Memory on Multiple Drives

Microsoft Windows 2000 improves system performance by allowing the virtual memory paging file (pagefile.sys) to be split across multiple physical hard drives. By distributing paging files across independent physical disks, the operating system's Virtual Memory Manager (VMM) can perform parallel read and write operations, reducing disk bottlenecking. This article explains how Windows 2000 manages pagefile allocation across multiple physical drives, how the system chooses which drive to access, and the architectural requirements for crash dumps.

Concurrent Paging and Drive Selection

When multiple paging files are configured on separate physical drives, the Windows 2000 Virtual Memory Manager does not statically divide memory pages sequentially. Instead, it dynamically routes page-in and page-out requests to the least busy physical disk drive at any given moment.

When a page fault occurs or dirty pages must be written to disk, the VMM examines the current I/O request queues of the underlying disk controllers. It sends the read or write request to the physical drive that has the fewest pending I/O operations. If multiple drives have idle queues, Windows 2000 alternates requests in a round-robin fashion, effectively load-balancing paging traffic across the physical disk subsystem.

Physical Drives vs. Multiple Partitions

To gain a performance advantage, each paging file must reside on a distinct physical drive rather than different logical partitions on the same physical drive.

  • Separate Physical Drives: Distributing pagefile.sys across multiple physical drives enables true hardware concurrency. Disk heads move independently, and separate disk controllers or channels can transfer data simultaneously, significantly cutting down disk latency.
  • Partitions on the Same Physical Drive: Placing multiple paging files across different partitions on a single physical drive severely degrades performance. The single drive mechanism must continuously swing its read/write heads back and forth across different disk sectors to service the separate files, causing severe disk thrashing.

Crash Dump Limitations on the Boot Volume

While spreading paging files across multiple physical drives improves overall operating system responsiveness, Windows 2000 imposes a strict constraint regarding system crash dumps:

  1. System Partition Requirement: When a STOP error (Blue Screen of Death) occurs, the operating system's crash dump driver uses basic BIOS-level I/O routines that only communicate with the boot/system volume (the drive hosting the \WINNT directory).
  2. File Size Requirements: For Windows 2000 to save a complete memory dump, a paging file must reside on the boot partition with an initial size at least equal to the amount of installed physical RAM plus 1 megabyte (MB). For a kernel memory dump, a smaller pagefile is permissible, typically around 50 MB to 100 MB depending on the system's memory size.
  3. Hybrid Allocation Strategy: The optimal configuration in Windows 2000 is to place a smaller paging file on the system drive—just large enough to satisfy crash dump requirements—and place the primary, larger paging file on a dedicated, fast secondary physical disk that does not host the operating system files.

Configuration and Sizing

Paging files in Windows 2000 are configured through the System Properties applet under the Advanced tab by selecting Performance Options and then Change under Virtual Memory.

Administrators can specify an Initial Size and Maximum Size for each detected drive volume. Setting the initial size and maximum size to the same value on secondary physical drives prevents the file system from fragmenting the paging file as the system runs, ensuring continuous, sequential read and write blocks across the disk platters.