[−][src]Crate x86
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. |
| dtables | Functions and data-structures for working with descriptor tables. |
| io | I/O port functionality. |
| irq | Shared interrupt description and set-up code.
See the |
| 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
| 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 |