windows paging

1
Windows Paging When a process is created, it can in principle make use of the entire user space of 2 Gbytes (minus 128 Kbytes). This space is divided into fixed-size pages, any of which can be brought into main memory. In practice, to simplify the accounting, a page can be in one of three states: • Available: Pages not currently used by this process. • Reserved: A set of contiguous pages that the virtual memory manager sets aside for a process but does not count against the process's memory quota until used. When a process needs to write to memory, some of the reserved memory is committed to the process. • Committed: Pages for which the virtual memory manager has set aside space in its paging file (e.g., the disk file to which it writes pages when removing them from main memory). The distinction between reserved and committed memory is useful because it (1) minimizes the amount of disk space set aside for a particular process, keeping that disk space free for other processes; and (2) enables a thread or process to declare an amount of memory that can be quickly allocated as needed. The resident set management scheme used by Windows is variable allocation, local scope (see Table 8.4). When a process is first activated, it is assigned a certain number of page frames of main memory as its working set. When a process references a page not in memory, one of the resident pages of that process is swapped out and the new page is brought in. Working sets of active processes are adjusted using the following general conventions: • When main memory is plentiful, the virtual memory manager allows the resident sets of active processes to grow. To do this, when a page fault occurs, a new page is brought into memory but no older page is swapped out, resulting in an increase of the resident set of that process by one page. • When memory becomes scarce, the virtual memory manager recovers memory for the system by moving less recently used pages out of the working sets of active processes, reducing the size of those resident sets.

Upload: tony-nakovski

Post on 08-Nov-2014

35 views

Category:

Documents


10 download

DESCRIPTION

Information about the WIndows Paging

TRANSCRIPT

Page 1: Windows Paging

Windows Paging

When a process is created, it can in principle make use of the entire user space of 2

Gbytes (minus 128 Kbytes). This space is divided into fixed-size pages, any of which

can be brought into main memory. In practice, to simplify the accounting, a page can be

in one of three states:

• Available: Pages not currently used by this process.

• Reserved: A set of contiguous pages that the virtual memory manager sets aside for a

process but does not count against the process's memory quota until used. When a

process needs to write to memory, some of the reserved memory is committed to the

process.

• Committed: Pages for which the virtual memory manager has set aside space in its

paging file (e.g., the disk file to which it writes pages when removing them from main

memory).

The distinction between reserved and committed memory is useful because it (1)

minimizes the amount of disk space set aside for a particular process, keeping that disk

space free for other processes; and (2) enables a thread or process to declare an

amount of memory that can be quickly allocated as needed.

The resident set management scheme used by Windows is variable allocation, local

scope (see Table 8.4). When a process is first activated, it is assigned a certain number

of page frames of main memory as its working set. When a process references a page

not in memory, one of the resident pages of that process is swapped out and the new

page is brought in. Working sets of active processes are adjusted using the following

general conventions:

• When main memory is plentiful, the virtual memory manager allows the resident sets

of active processes to grow. To do this, when a page fault occurs, a new page is

brought into memory but no older page is swapped out, resulting in an increase of the

resident set of that process by one page.

• When memory becomes scarce, the virtual memory manager recovers memory for the

system by moving less recently used pages out of the working sets of active processes,

reducing the size of those resident sets.