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
Non-Contiguous Memory Allocation: Segmentation
Basic Method
Concept of Segmentation
User's View of Memory
Logical Division of Programs
Code Segment
Data Segment
Stack Segment
Heap Segment
Logical Address as a Two-Tuple
Segment Number
Offset within Segment
Address Translation in Segmentation
Segment Table Lookup
Bounds Checking
Physical Address Calculation
Segment Tables
Purpose and Structure
Segment Table Base Register (STBR)
Segment Table Length Register (STLR)
Structure of a Segment Table Entry
Segment Base Address
Segment Limit
Protection Bits
Read Permission
Write Permission
Execute Permission
Valid/Invalid Bit
Growth Direction
Memory Protection and Sharing in Segmentation
Access Control Mechanisms
Privilege Level Checking
Bounds Violation Detection
Sharing Segments Between Processes
Shared Code Segments
Shared Data Segments
Reference Counting
Segmentation with Paging (Combined Systems)
Motivation for Combining
Eliminating External Fragmentation
Maintaining Logical Structure
Address Translation in Combined Systems
Two-Stage Translation Process
Segment Table to Page Table
Implementation Approaches
Intel x86 Architecture
Multics System
Previous
4. Non-Contiguous Memory Allocation: Paging
Go to top
Next
6. Virtual Memory