Crate x86

Source

Modules§

apic
Register information and driver to program xAPIC, X2APIC and I/O APIC
bits16
Data structures and functions used by 16-bit mode.
bits32
Data structures and functions used by 32-bit mode.
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
Support for the CPUID instructions.
current
A short-cut to the architecture (bits32 or bits64) this crate was compiled for.
debugregs
Functions to read and write debug registers.
dtables
Functions and data-structures for working with descriptor tables.
fence
Intel fence instructions
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.
random
Instructions to generate random bits directly from the hardware (RDRAND and RDSEED).
segmentation
Functionality to manipulate segment registers, build segement descriptors and selectors.
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).
vmx
Data structures and definitions used by Virtual Machine Extensions.

Macros§

fs_deref
“Dereferences” the fs register at offset.
gs_deref
“Dereferences” the gs register at offset.
int
Generate a software interrupt. This is a macro argument needs to be an immediate.
syscall

Enums§

Ring
x86 Protection levels

Functions§

halt
Stops instruction execution and places the processor in a HALT state.
rdpid
Read Processor ID