Page 28 - DCAP408_WEB_PROGRAMMING
P. 28
Windows Programming Kumar Vishal, Lovely Professional University
Notes Unit 2: Windows Memory Management
CONTENTS
Objectives
Introduction
2.1 Windows Memory Management
2.2 Paging in x86 Processor
2.2.1 Windows Page Table Management
2.3 Memory Protection
2.4 Windows Logical Memory Layout
2.5 Summary
2.6 Keywords
2.7 Review Questions
2.8 Further Readings
Objectives
After studying this unit, you will be able to:
Understand the concept of Windows Memory Management
Discuss Paging in x86 Processor
Illustrate memory protection
Introduction
Memory management in Windows operating systems has developed into an affluent and classy
architecture, competent of scaling from the minute embedded platforms (where Windows
implements from ROM) all the way up to the multi-terabyte NUMA configurations, taking full
benefit of all capabilities of obtainable and upcoming hardware designs.
With every release of Windows, memory management assists many new traits and capabilities.
Advances in algorithms and techniques capitulate a affluent and classy code base, which is
sustained as a single code base for all platforms and SKUs.
2.1 Windows Memory Management
Windows on 32 bit x86 systems can utilize up to 4GB of physical memory. This is because of the
fact that the processor’s address bus which is 32 lines or 32 bits can only utilize address range
from 0x00000000 to 0xFFFFFFFF which is 4GB. Windows also permits every process to have its
own 4GB logical address space. The lower 2GB of this address space is available for the user
mode process and upper 2GB is set aside for Windows Kernel mode code. How does Windows
provide 4GB address space each to numerous processes when the total memory it can utilize is
also restricted to 4GB. To attain this Windows uses a feature of x86 processor (386 and above)
called paging.
22 LOVELY PROFESSIONAL UNIVERSITY