Module x86_common

Source
Expand description

Shared architecture-specific bindings for 32-bit and 64-bit Intel x86-based processors

Macrosยง

global_selector ๐Ÿ”’
Create a segment selector that points to the given descriptor field in the GlobalDescriptorTable.

Structsยง

GlobalDescriptorTable ๐Ÿ”’
Global descriptor table structure specific to Tartan OS.
InterruptDescriptorTable ๐Ÿ”’

Staticsยง

GLOBAL_DESCRIPTOR_TABLE ๐Ÿ”’
INTERRUPT_DESCRIPTOR_TABLE ๐Ÿ”’
TASK_STATE_SEGMENT ๐Ÿ”’

Functionsยง

handle_unknown_interrupt ๐Ÿ”’
initialize_control_registers
Set flags in general control registers to a known state
initialize_interrupts
initialize_segments
Initialize the segmentation system to use a flat memory model pointing to our GlobalDescriptorTable.
make_code_descriptor ๐Ÿ”’
make_data_descriptor ๐Ÿ”’
make_interrupt_gate ๐Ÿ”’
make_task_state_descriptor ๐Ÿ”’