The Memory Descriptor
All information related to the process address space is included in a
data structure called a memory descriptor
. This structure of type
mm_struct
is referenced by the
mm
field of the process descriptor. The fields of
a memory descriptor are listed in Table 8-2.
Table 8-2. The fields of the memory descriptor
Type |
Field |
Description |
---|---|---|
|
|
Pointer to the head of the list of memory region objects |
|
|
Pointer to the root of the red-black tree of memory region objects |
|
|
Pointer to the last referenced memory region object |
|
|
Pointer to the Page Global Directory |
|
|
Secondary usage counter |
|
|
Main usage counter |
|
|
Number of memory regions |
|
|
Memory regions’ read/write semaphore |
|
|
Memory regions’ and Page Tables’ spin lock |
|
|
Pointers to adjacent elements in the list of memory descriptors |
|
|
Initial address of executable code |
|
|
Final address of executable code |
|
|
Initial address of initialized data |
|
|
Final address of initialized data |
|
|
Initial address of the heap |
|
|
Current final address of the heap |
|
|
Initial address ... |
Get Understanding the Linux Kernel, Second Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.