Go to the source code of this file.
|  | 
| #define | SEG_TYPE_LDT   0x2 | 
|  | 
| #define | SEG_TYPE_TASK_GATE   0x5 | 
|  | 
| #define | SEG_TYPE_TSS   0x9 | 
|  | 
| #define | SEG_TYPE_TSS_BUSY   0xB | 
|  | 
| #define | SEG_TYPE_CALL_GATE   0xC | 
|  | 
| #define | SEG_TYPE_IRQ_GATE   0xE | 
|  | 
| #define | SEG_TYPE_TRAP_GATE   0xF | 
|  | 
| #define | DT_GRAN_BYTE   0 | 
|  | 
| #define | DT_GRAN_PAGE   1 | 
|  | 
| #define | DT_READABLE   1 | 
|  | 
| #define | DT_NON_READABLE   0 | 
|  | 
| #define | DT_WRITABLE   1 | 
|  | 
| #define | DT_NON_WRITABLE   0 | 
|  | 
| #define | DT_EXPAND_DOWN   1 | 
|  | 
| #define | DT_EXPAND_UP   0 | 
|  | 
| #define | DT_CONFORM   1 | 
|  | 
| #define | DT_NONCONFORM   0 | 
|  | 
| #define | DT_TYPE_SYSTEM   0 | 
|  | 
| #define | DT_TYPE_CODEDATA   1 | 
|  | 
| #define | SEG_SELECTOR(index,  table,  dpl)   (index << 3 | table << 2 | dpl) | 
|  | 
| #define | DT_ZERO_ENTRY   { { 0 } } | 
|  | 
| #define | DT_CODE_SEG_ENTRY(base_p,  limit_p,  granularity_p,  dpl_p,  readable_p,  conforming_p) | 
|  | 
| #define | DT_DATA_SEG_ENTRY(base_p,  limit_p,  granularity_p,  dpl_p,  writable_p,  direction_p) | 
|  | 
| #define | DT_LDT_ENTRY(base_p,  limit_p,  granularity_p,  dpl_p) | 
|  | 
| #define | DT_TSS_ENTRY(base_p,  limit_p,  granularity_p,  dpl_p) | 
|  | 
| #define | DT_TSS_STD_ENTRY(base_p,  dpl_p) | 
|  | 
| #define | DT_TASK_GATE_ENTRY(segment_p,  dpl_p) | 
|  | 
| #define | DT_IRQ_GATE_ENTRY(segment_p,  offset_p,  dpl_p) | 
|  | 
| #define | DT_TRAP_GATE_ENTRY(segment_p,  offset_p,  dpl_p) | 
|  | 
| #define | DT_CALL_GATE_ENTRY(segment_p,  offset_p,  dpl_p,  param_count_p) | 
|  | 
| #define | DTE_BASE(dt_entry) | 
|  | 
| #define | DTE_LIMIT(dt_entry) | 
|  | 
| #define | DTE_OFFSET(dt_entry) | 
|  | 
| #define | DT_INIT(entries)   { sizeof(entries) - 1, &entries[0] } | 
|  | 
◆ DT_CALL_GATE_ENTRY
      
        
          | #define DT_CALL_GATE_ENTRY | ( |  | segment_p, | 
        
          |  |  |  | offset_p, | 
        
          |  |  |  | dpl_p, | 
        
          |  |  |  | param_count_p | 
        
          |  | ) |  |  | 
      
 
Value:        { \
                _DESC_COMMON(dpl_p), \
                _SEGMENT_AND_OFFSET(segment_p, offset_p), \
                .reserved_or_param = (param_count_p), \
                .always_0_0 = 0 \
        }
#define SEG_TYPE_TRAP_GATE
Definition segmentation.h:31
 
 
◆ DT_CODE_SEG_ENTRY
      
        
          | #define DT_CODE_SEG_ENTRY | ( |  | base_p, | 
        
          |  |  |  | limit_p, | 
        
          |  |  |  | granularity_p, | 
        
          |  |  |  | dpl_p, | 
        
          |  |  |  | readable_p, | 
        
          |  |  |  | conforming_p | 
        
          |  | ) |  |  | 
      
 
Value:        { \
                _DESC_COMMON(dpl_p), \
                _LIMIT_AND_BASE(base_p, limit_p, granularity_p), \
                .accessed = 0, \
                .rw = (readable_p), \
                .cd = (conforming_p), \
                .executable = 1, \
                .descriptor_type = 1 \
        }
 
 
◆ DT_CONFORM
◆ DT_DATA_SEG_ENTRY
      
        
          | #define DT_DATA_SEG_ENTRY | ( |  | base_p, | 
        
          |  |  |  | limit_p, | 
        
          |  |  |  | granularity_p, | 
        
          |  |  |  | dpl_p, | 
        
          |  |  |  | writable_p, | 
        
          |  |  |  | direction_p | 
        
          |  | ) |  |  | 
      
 
Value:        { \
                _DESC_COMMON(dpl_p), \
                _LIMIT_AND_BASE(base_p, limit_p, granularity_p), \
                .accessed = 0, \
                .rw = (writable_p), \
                .cd = (direction_p), \
                .executable = 0, \
                .descriptor_type = 1 \
        }
 
 
◆ DT_EXPAND_DOWN
◆ DT_EXPAND_UP
◆ DT_GRAN_BYTE
◆ DT_GRAN_PAGE
◆ DT_INIT
      
        
          | #define DT_INIT | ( |  | entries | ) | { sizeof(entries) - 1, &entries[0] } | 
      
 
 
◆ DT_IRQ_GATE_ENTRY
      
        
          | #define DT_IRQ_GATE_ENTRY | ( |  | segment_p, | 
        
          |  |  |  | offset_p, | 
        
          |  |  |  | dpl_p | 
        
          |  | ) |  |  | 
      
 
Value:        { \
                _DESC_COMMON(dpl_p), \
                _SEGMENT_AND_OFFSET(segment_p, offset_p), \
                .always_0_0 = 0 \
        }
#define SEG_TYPE_IRQ_GATE
Definition segmentation.h:30
 
 
◆ DT_LDT_ENTRY
      
        
          | #define DT_LDT_ENTRY | ( |  | base_p, | 
        
          |  |  |  | limit_p, | 
        
          |  |  |  | granularity_p, | 
        
          |  |  |  | dpl_p | 
        
          |  | ) |  |  | 
      
 
Value:        { \
                _DESC_COMMON(dpl_p), \
                _LIMIT_AND_BASE(base_p, limit_p, granularity_p), \
        }
#define SEG_TYPE_LDT
Definition segmentation.h:25
 
 
◆ DT_NON_READABLE
      
        
          | #define DT_NON_READABLE   0 | 
      
 
 
◆ DT_NON_WRITABLE
      
        
          | #define DT_NON_WRITABLE   0 | 
      
 
 
◆ DT_NONCONFORM
◆ DT_READABLE
◆ DT_TASK_GATE_ENTRY
      
        
          | #define DT_TASK_GATE_ENTRY | ( |  | segment_p, | 
        
          |  |  |  | dpl_p | 
        
          |  | ) |  |  | 
      
 
Value:        { \
                _DESC_COMMON(dpl_p), \
                .segment_selector = (segment_p) \
        }
#define SEG_TYPE_TASK_GATE
Definition segmentation.h:26
 
 
◆ DT_TRAP_GATE_ENTRY
      
        
          | #define DT_TRAP_GATE_ENTRY | ( |  | segment_p, | 
        
          |  |  |  | offset_p, | 
        
          |  |  |  | dpl_p | 
        
          |  | ) |  |  | 
      
 
Value:        { \
                _DESC_COMMON(dpl_p), \
                _SEGMENT_AND_OFFSET(segment_p, offset_p), \
                .always_0_0 = 0 \
        }
 
 
◆ DT_TSS_ENTRY
      
        
          | #define DT_TSS_ENTRY | ( |  | base_p, | 
        
          |  |  |  | limit_p, | 
        
          |  |  |  | granularity_p, | 
        
          |  |  |  | dpl_p | 
        
          |  | ) |  |  | 
      
 
Value:        { \
                _DESC_COMMON(dpl_p), \
                _LIMIT_AND_BASE(base_p, limit_p, granularity_p), \
        }
#define SEG_TYPE_TSS
Definition segmentation.h:27
 
 
◆ DT_TSS_STD_ENTRY
      
        
          | #define DT_TSS_STD_ENTRY | ( |  | base_p, | 
        
          |  |  |  | dpl_p | 
        
          |  | ) |  |  | 
      
 
Value:
                     dpl_p)
#define DT_GRAN_BYTE
Definition segmentation.h:33
#define DT_TSS_ENTRY(base_p, limit_p, granularity_p, dpl_p)
Definition segmentation.h:299
Definition segmentation.h:54
 
 
 
◆ DT_TYPE_CODEDATA
      
        
          | #define DT_TYPE_CODEDATA   1 | 
      
 
 
◆ DT_TYPE_SYSTEM
◆ DT_WRITABLE
◆ DT_ZERO_ENTRY
      
        
          | #define DT_ZERO_ENTRY   { { 0 } } | 
      
 
 
◆ DTE_BASE
      
        
          | #define DTE_BASE | ( |  | dt_entry | ) |  | 
      
 
Value:                            ((dt_entry)->base_low | \
                            ((dt_entry)->base_mid << 16) | \
                            ((dt_entry)->base_hi << 24))
 
 
◆ DTE_LIMIT
      
        
          | #define DTE_LIMIT | ( |  | dt_entry | ) |  | 
      
 
Value:                             ((dt_entry)->limit_low | \
                             ((dt_entry)->limit_hi << 16))
 
 
◆ DTE_OFFSET
      
        
          | #define DTE_OFFSET | ( |  | dt_entry | ) |  | 
      
 
Value:                              ((dt_entry)->offset_low | \
                              ((dt_entry)->offset_hi << 16))
 
 
◆ SEG_SELECTOR
      
        
          | #define SEG_SELECTOR | ( |  | index, | 
        
          |  |  |  | table, | 
        
          |  |  |  | dpl | 
        
          |  | ) |  | (index << 3 | table << 2 | dpl) | 
      
 
 
◆ SEG_TYPE_CALL_GATE
      
        
          | #define SEG_TYPE_CALL_GATE   0xC | 
      
 
 
◆ SEG_TYPE_IRQ_GATE
      
        
          | #define SEG_TYPE_IRQ_GATE   0xE | 
      
 
 
◆ SEG_TYPE_LDT
◆ SEG_TYPE_TASK_GATE
      
        
          | #define SEG_TYPE_TASK_GATE   0x5 | 
      
 
 
◆ SEG_TYPE_TRAP_GATE
      
        
          | #define SEG_TYPE_TRAP_GATE   0xF | 
      
 
 
◆ SEG_TYPE_TSS
◆ SEG_TYPE_TSS_BUSY
      
        
          | #define SEG_TYPE_TSS_BUSY   0xB |