Useful Links
Computer Science
Operating Systems
Memory Management
1. Fundamentals of Memory Management
2. Address Spaces and Binding
3. Contiguous Memory Allocation
4. Non-Contiguous Memory Allocation: Paging
5. Non-Contiguous Memory Allocation: Segmentation
6. Virtual Memory
7. Advanced Memory Management Topics
Address Spaces and Binding
Logical vs Physical Address Space
Logical Address (Virtual Address)
Generation by CPU
Use in Program Execution
Address Space Layout
Physical Address
Mapping to Actual Memory Locations
Access by Memory Hardware
Address Space Abstraction
Process Isolation Benefits
Memory Layout Flexibility
Address Binding
Concept of Binding
Compile-Time Binding
Static Address Assignment
Absolute Code Generation
Load-Time Binding
Relocation at Program Load
Relocatable Code
Execution-Time Binding (Dynamic Binding)
Use of Relocation Registers
Support for Dynamic Loading
Runtime Address Resolution
Dynamic Loading
Concept and Benefits
Implementation Mechanisms
On-Demand Loading
Lazy Loading Strategies
Impact on Memory Utilization
Dynamic Linking and Shared Libraries
Static vs Dynamic Linking
Shared Library Management
Library Loading Mechanisms
Symbol Resolution
Advantages of Dynamic Linking
Memory Savings
Update Flexibility
Loader and Linker Roles
Program Loading Process
Symbol Table Management
Previous
1. Fundamentals of Memory Management
Go to top
Next
3. Contiguous Memory Allocation