|
Turnstone Operating System
|
cr4 register bit fields More...
#include <crx.h>
Public Attributes | ||
| struct { | ||
| uint8_t virtual_mode_extensions: 1 | ||
| when set enables vme | ||
| uint8_t protected_mode_virtual_ints: 1 | ||
| when set eables virtual interrupts at protected mode | ||
| uint8_t timestamp_disable: 1 | ||
| disables timestamp | ||
| uint8_t debugging_extensions: 1 | ||
| enables debugging | ||
| uint8_t page_size_extensions: 1 | ||
| changes page size | ||
| uint8_t physical_address_extension: 1 | ||
| enables memory size over 4gib when 32bit | ||
| uint8_t machine_check_enable: 1 | ||
| enables machine check | ||
| uint8_t page_global_enable: 1 | ||
| enables global pages at page time | ||
| uint8_t performance_monitoring_counter_enable: 1 | ||
| enables performance monitoring | ||
| uint8_t os_fx_support: 1 | ||
| enables fx (sse) | ||
| uint8_t os_unmasked_exception_support: 1 | ||
| enables unmasked simd interrupts | ||
| uint8_t user_mode_instruction_preventation: 1 | ||
| disables several instructions at user mode for descriptors | ||
| uint8_t reserved1: 1 | ||
| reserved | ||
| uint8_t vmx_enable: 1 | ||
| enables virtual machine extensions | ||
| uint8_t smx_enable: 1 | ||
| enables safer mode | ||
| uint8_t reserved2: 1 | ||
| reserved | ||
| uint8_t fs_gs_base_enable: 1 | ||
| enables changing base address of fs and gs registers | ||
| uint8_t process_context_identifier_enable: 1 | ||
| enables process context identifier at cr3 | ||
| uint8_t os_xsave_enable: 1 | ||
| enables xsave instruction | ||
| uint8_t reserved3: 1 | ||
| reserved | ||
| uint8_t supervisor_mode_execution_prevention: 1 | ||
| enables kernel exection of user space code with rflags | ||
| uint8_t supervisor_mode_access_protection: 1 | ||
| enables kernel memory access of user space with rflags | ||
| uint8_t protection_key_enabled: 1 | ||
| enables protection key | ||
| uint8_t control_flow_enforcement_technology: 1 | ||
| enables control flow | ||
| uint8_t protection_key_enable: 1 | ||
| enables protection key for supervisor mode | ||
| uint8_t reserved4: 7 | ||
| reserved | ||
| uint32_t reserved5: 32 | ||
| reserved | ||
| } | fields | |
| bit field list | ||
| uint64_t | bits | |
| all bits in one 64 bit value | ||
cr4 register bit fields