Information Technology Reference
In-Depth Information
run concurrently with other code units. Each process consists of one or more execution
threads that identify the code path flow as it is run on the operating system. A Win32-based
application can have multiple threads for a given process. This enhances the running of an
application by improving throughput and responsiveness. It allows processes for smooth
background processing.
H.5.2 Memory paging
Windows 95/98/NT use a demand-paged virtual memory system, which is based on a flat,
linear address space using 32-bit addresses. The system allocates each process a unique vir-
tual address space of 4 GB (which should be enough for most applications). The upper 2 GB
is shared, while the lower 2 GB is private to the application. This virtual address space di-
vides into equal blocks (or pages), as illustrated in Figure H.6.
Application 1
Physical memory
4GB
Application 1: Page 1
System
addressable
memory
Application 2: Page 1
Application 1: Page 5
2GB
Application 1: Page 6
Application
addressable
memory
Application 2: Page 2
Virtual
mapping to
physical
memory
Free page: Page 1
0GB
Application 2
Application 1: Page 4
4GB
Application 2: Page 3
System
addressable
memory
Free page: Page 2
Application 2: Page 4
2GB
Application 1: Page 3
Application
addressable
memory
Free page: Page 4
Free page: Page 5
0GB
Figure H.6
Memory paging
Demand paging is a method by which code and data are moved in pages from physical
memory to a temporary paging file on disk. When required, information is then paged back
into physical memory.
The functions of the memory pager are:
To map virtual addresses from the process's address space to physical pages in memory.
This then hides the physical organisation of memory from the process's threads and en-
sures that the thread can access the required memory when required. It also stops other
processes from writing to another memory location.
To support a 16-bit segmented memory model for Windows 3. x and MS-DOS applica-
tions. In this addressing scheme the addresses are made from a 16-bit segment address
and a 16-bit offset address.
 
Search WWH ::




Custom Search