|
StuBS
|
The Global Descriptor Table (GDT). More...
#include "types.h"Classes | |
| struct | GDT::SegmentDescriptor.__unnamed32__ |
| Fields specific for Data Segment (for debugging purposes) More... | |
Namespaces | |
| namespace | GDT |
| Abstracts the GDT that, primarily, contains descriptors to memory segments. | |
Enumerations | |
| enum | GDT::Segments { GDT::SEGMENT_NULL = 0 , GDT::SEGMENT_KERNEL_CODE , GDT::SEGMENT_KERNEL_DATA } |
| enum | GDT::Granularity { GDT::GRANULARITY_BYTES = 0 , GDT::GRANULARITY_4KBLOCK = 1 } |
| Unit of the segment limit. More... | |
| enum | GDT::DescriptorType { GDT::DESCRIPTOR_SYSTEM = 0 , GDT::DESCRIPTOR_CODEDATA = 1 } |
| Descriptor type. More... | |
| enum | GDT::Size { GDT::SIZE_16BIT = 0 , GDT::SIZE_32BIT = 2 , GDT::SIZE_64BIT_CODE = 1 , GDT::SIZE_64BIT_DATA = 0 } |
| Address width. More... | |
| struct GDT::SegmentDescriptor.__unnamed32__ |
Fields specific for Data Segment (for debugging purposes)
| Class Members | ||
|---|---|---|
| uint64_t | __pad0__: 40 |
Ignored (set via limit_low and base_low) |
| bool | data_accessed: 1 | If set, the data segment was used since the last reset of this value. |
| bool | writeable: 1 | If set, data is writable (otherwise read only) |
| bool | expand_down: 1 | Growing direction for dynamically growing segments. |
| bool | notData: 1 |
Has to be cleared (false) |
| uint64_t | __pad1__: 9 |
Ignored (set via privilege_level ... available) |
| uint64_t | reserved: 1 |
Reserved, always set to 0! |
| bool | big: 1 |
Size of the stack pointer (false = 16 bit, true = 32 bit)
|
| uint64_t | __pad2__: 0 | Remainder ignored. |