PatchworkOS  966e257
A non-POSIX operating system.
Loading...
Searching...
No Matches
tss.h File Reference
#include <kernel/cpu/stack_pointer.h>
#include <kernel/defs.h>
#include <stdint.h>
Include dependency graph for tss.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  tss_t
 Task State Segment structure. More...
 

Macros

#define TSS_IST_EXCEPTION   TSS_IST1
 The IST index to use for exceptions.
 
#define TSS_IST_DOUBLE_FAULT   TSS_IST2
 The IST index to use for double faults.
 
#define TSS_IST_NMI   TSS_IST3
 The IST index to use for non-maskable interrupts.
 
#define TSS_IST_INTERRUPT   TSS_IST4
 The IST index to use for other interrupts.
 

Enumerations

enum  tss_ist_t {
  TSS_IST_NONE = 0 , TSS_IST1 = 1 , TSS_IST2 = 2 , TSS_IST3 = 3 ,
  TSS_IST4 = 4 , TSS_IST5 = 5 , TSS_IST6 = 6 , TSS_IST7 = 7 ,
  TSS_IST_COUNT = 7
}
 Interrupt Stack Table indices. More...
 

Functions

void tss_load (void)
 Load the TSS.
 
void tss_init (tss_t *tss)
 Initialize a TSS structure.
 
void tss_ist_load (tss_t *tss, tss_ist_t ist, stack_pointer_t *stack)
 Load a stack into an IST entry.