|
PatchworkOS
da8a090
A non-POSIX operating system.
|
CPU structure. More...
#include <cpu.h>
Public Member Functions | |
| uint8_t exceptionStackBuffer[CONFIG_INTERRUPT_STACK_PAGES *PAGE_SIZE] | ALIGNED (PAGE_SIZE) |
| uint8_t doubleFaultStackBuffer[CONFIG_INTERRUPT_STACK_PAGES *PAGE_SIZE] | ALIGNED (PAGE_SIZE) |
| uint8_t nmiStackBuffer[CONFIG_INTERRUPT_STACK_PAGES *PAGE_SIZE] | ALIGNED (PAGE_SIZE) |
| uint8_t interruptStackBuffer[CONFIG_INTERRUPT_STACK_PAGES *PAGE_SIZE] | ALIGNED (PAGE_SIZE) |
CPU structure.
We allocate the stack buffers inside the cpu_t structure to avoid memory allocation during early boot.
Must be stored aligned to a page boundary.
| uint8_t exceptionStackBuffer[CONFIG_INTERRUPT_STACK_PAGES *PAGE_SIZE] cpu_t::ALIGNED | ( | PAGE_SIZE | ) |
| uint8_t doubleFaultStackBuffer[CONFIG_INTERRUPT_STACK_PAGES *PAGE_SIZE] cpu_t::ALIGNED | ( | PAGE_SIZE | ) |
| uint8_t nmiStackBuffer[CONFIG_INTERRUPT_STACK_PAGES *PAGE_SIZE] cpu_t::ALIGNED | ( | PAGE_SIZE | ) |
| uint8_t interruptStackBuffer[CONFIG_INTERRUPT_STACK_PAGES *PAGE_SIZE] cpu_t::ALIGNED | ( | PAGE_SIZE | ) |
| atomic_bool cpu_t::needHandlersCheck |
| vmm_cpu_ctx_t cpu_t::vmm |
| interrupt_ctx_t cpu_t::interrupt |
| perf_cpu_ctx_t cpu_t::perf |
| timer_cpu_ctx_t cpu_t::timer |
| rand_cpu_ctx_t cpu_t::rand |
| ipi_cpu_ctx_t cpu_t::ipi |
| stack_pointer_t cpu_t::exceptionStack |
| stack_pointer_t cpu_t::doubleFaultStack |
| stack_pointer_t cpu_t::nmiStack |
| stack_pointer_t cpu_t::interruptStack |