[][src]Crate x86

Modules

bits16
bits32
bits64

Data structures and functions used by IA-32e but not Protected Mode.

controlregs

Functions to read and write control registers. See Intel Vol. 3a Section 2.5, especially Figure 2-7.

cpuid
current
dtables

Functions and data-structures to load descriptor tables.

io

I/O port functionality.

irq

Shared interrupt description and set-up code. See the bits*::irq modules for arch-specific portions.

msr

MSR value list and function to read and write them.

segmentation
task

Helpers to program the task state segment. See Intel 3a, Chapter 7

time

Functions to read time stamp counters on x86.

tlb

Functions to flush the translation lookaside buffer (TLB).

xapic

Information about the xAPIC and x2APIC mode for the local APIC.

Macros

int

Generate a software interrupt. This is a macro argument needs to be an immediate.

syscall

It does so by loading RIP from the IA32_LSTAR MSR (after saving the address of the instruction following SYSCALL into RCX).

Enums

Ring

x86 Protection levels Note: This should not contain values larger than 2 bits, otherwise segment descriptor code needs to be adjusted accordingly.

Functions

halt