Task State SegmentUno Task state segment (TSS) è una struttura specifica dei processori della famiglia x86 dove si trova memorizzato il contesto di un processo. Il suo descrittore si trova nella Global Descriptor Table (GDT). In quanto segmenti, i segmenti di stato sono referenziati da descrittori di stato di processo (task state segment descriptor) (TSSD) situati nella GDT. Struttura di un TSSIl TSS contiene vari tipi di informazioni:
UtilizzoLinuxSotto Linux, a ogni commutazione di contesto, il kernel (grazie alla macro "SWITCH_TO") aggiorna il TSS con le informazioni (registri generali, EIP, EFLAGS, ecc) del nuovo processo. Il TSS è utilizzato tra l'altro dal kernel per ritornare da una chiamata di sistema o per la gestione dell'eccezione "errore doppio" (il processore, non potendo fare affidamento sui suoi registri, usa il TSS). TSS nell'architettura x86-64L'architettura x86-64 non supporta il cambio di contesto hardware, tuttavia il TSS può essere ancora utilizzato in una macchina utilizzante la modalità a 64 bit. In questa modalita il TSS viene utilizzato per memorizzare:
Il task register viene espanso per contenere indirizzi a 64 bit. Collegamenti esterni
|