TacOS  0.2
 Tout Structures de données Fichiers Fonctions Variables Définitions de type Énumérations Macros
Champs de données
Référence de la structure x86_segment_descriptor

Segment Descriptor (cf doc intel v3. 3.4.3)

#include <gdt.h>

Champs de données

uint16_t segment_limit_15_0
 
uint16_t base_address_15_0
 
uint8_t base_address_23_16
 
uint8_t segment_type:4
 
uint8_t descriptor_type:1
 
uint8_t dpl:2
 
uint8_t present:1
 
uint8_t segment_limit_19_16:4
 
uint8_t available:1
 
uint8_t zero:1
 
uint8_t operation_size:1
 
uint8_t granularity:1
 
uint8_t base_address_31_24
 

Documentation des champs

uint8_t x86_segment_descriptor::available

Un bit disponible pour nous...

uint16_t x86_segment_descriptor::base_address_15_0

Défini la position de l'octet 0 du segment dans les 4Gio de l'espace adressable linéaire

uint8_t x86_segment_descriptor::base_address_23_16

Suite de la base address.

uint8_t x86_segment_descriptor::base_address_31_24

Fin de la base address. Soit 32 bits ce qui correspond aux 4Gio adressables.

uint8_t x86_segment_descriptor::descriptor_type

0 = system segment, 1 = code ou data segment

uint8_t x86_segment_descriptor::dpl

Descriptor Privilege Level. 0 à 3. 0 pour le kernel et 3 pour les applis

uint8_t x86_segment_descriptor::granularity

Granularité : Détermine l'échele du segment limit. 0 : c'est des bytes, 1 : c'est par 4kio

uint8_t x86_segment_descriptor::operation_size

0 = 16bits, 1 = 32bits

uint8_t x86_segment_descriptor::present

Indique si le segment est présent en mémoire (1) ou non (0)

uint16_t x86_segment_descriptor::segment_limit_15_0

Segment Limit 15:00. Spécifie la taille du segment. Le proc concatene les 2 champs segment limit pour former une valeur de 20 bits.

uint8_t x86_segment_descriptor::segment_limit_19_16

Suite du segment limit.

uint8_t x86_segment_descriptor::segment_type

Cf 3.4.3.1 de la doc intel !

uint8_t x86_segment_descriptor::zero

Bit réservé qui doit prendre la valeur 0.


La documentation de cette structure a été générée à partir du fichier suivant :