Courses/Computer Science/CPSC 457.W2012/Lecture Notes/MemAddr
From wiki.ucalgary.ca
< Courses | Computer Science | CPSC 457.W2012 | Lecture Notes
Contents
Addressing Memory and User-Level Memory Management
This will be an overview of basic concepts in addressing memory on the IA-32 architecture. We will revisit some basic hardware support (i.e., segments, segment selectors, segment registers, segment descriptors) and more closely examine the support available for paging (MMU, page directories, page tables, TLBs).
We will consider some fundamental issues like:
- the MMU: paging and segmentation
- internal and external fragmentation
- basic memory allocation concepts (best fit, worst fit, first fit, next fit)
- the C lib dynamic memory management API
Class Notes and Code
- Example Code from class
Notes
- Some notes on paging: http://wiki.osdev.org/Paging
- more notes: http://www.stanford.edu/~stinson/paper_notes/fundamental/mem_mgmt/ia32_pts.txt
- notes on segment registers
- take a look at a kernel "Ooops" for some register values
- CR registers
- DS register (segment selector)
- why no CS register?
Reading
- MOS: 3.2.3
- ULK: Chapter 2 (optional)