The Pedigree Project
0.1
|
x64 processor-specific kernel More...
Classes | |
class | HostedStackFrame |
class | X64StackFrame |
class | X64InterruptState |
class | X64SyscallState |
class | X64ProcessorState |
class | X64SchedulerState |
struct | X64TaskStateSegment |
class | X64GdtManager |
class | X64InterruptManager |
class | X64SyscallManager |
class | X64VirtualAddressSpace |
Macros | |
#define | PAGE_SIZE 4096 |
#define | PAGE_SIZE 4096 |
Functions | |
uintptr_t | physicalAddress (physical_uintptr_t address) PURE |
template<typename T > | |
T * | physicalAddress (T *pAddress) PURE |
Variables | |
class X64InterruptState | PACKED |
struct X64TaskStateSegment | PACKED |
x64 processor-specific kernel
x64 processor-specific kernel
#define PAGE_SIZE 4096 |
Define the size of one physical page
Definition at line 63 of file modules/subsys/native/include/pedigree/native/x64/types.h.
#define PAGE_SIZE 4096 |
Define the size of one physical page
Definition at line 63 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef signed short X64int16_t |
Define an 16bit signed integer type
Definition at line 31 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef signed short X64int16_t |
Define an 16bit signed integer type
Definition at line 31 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef signed int X64int32_t |
Define a 32bit signed integer type
Definition at line 35 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef signed int X64int32_t |
Define a 32bit signed integer type
Definition at line 35 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef signed long X64int64_t |
Define a 64bit signed integer type
Definition at line 39 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef signed long X64int64_t |
Define a 64bit signed integer type
Definition at line 39 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef signed char X64int8_t |
Define an 8bit signed integer type
Definition at line 27 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef signed char X64int8_t |
Define an 8bit signed integer type
Definition at line 27 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef X64int64_t X64intptr_t |
Define a signed integer type for pointer arithmetic
Definition at line 44 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef X64int64_t X64intptr_t |
Define a signed integer type for pointer arithmetic
Definition at line 44 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef X64uint16_t X64io_port_t |
Define an I/O port type
Definition at line 60 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef X64uint16_t X64io_port_t |
Define an I/O port type
Definition at line 60 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef X64uint64_t X64physical_uintptr_t |
Define a unsigned integer type for physical pointer arithmetic
Definition at line 49 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef X64uint64_t X64physical_uintptr_t |
Define a unsigned integer type for physical pointer arithmetic
Definition at line 49 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef X64uint64_t X64processor_register_t |
Define an unsigned integer type for the processor registers
Definition at line 52 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef X64uint64_t X64processor_register_t |
Define an unsigned integer type for the processor registers
Definition at line 52 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef X64uint64_t X64size_t |
Define size_t
Definition at line 57 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef X64uint64_t X64size_t |
Define size_t
Definition at line 57 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef X64int64_t X64ssize_t |
Define ssize_t
Definition at line 55 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef X64int64_t X64ssize_t |
Define ssize_t
Definition at line 55 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef unsigned short X64uint16_t |
Define an 16bit unsigned integer type
Definition at line 33 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef unsigned short X64uint16_t |
Define an 16bit unsigned integer type
Definition at line 33 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef unsigned int X64uint32_t |
Define a 32bit unsigned integer type
Definition at line 37 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef unsigned int X64uint32_t |
Define a 32bit unsigned integer type
Definition at line 37 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef unsigned long X64uint64_t |
Define a 64bit unsigned integer type
Definition at line 41 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef unsigned long X64uint64_t |
Define a 64bit unsigned integer type
Definition at line 41 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef unsigned char X64uint8_t |
Define an 8bit unsigned integer type
Definition at line 29 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef unsigned char X64uint8_t |
Define an 8bit unsigned integer type
Definition at line 29 of file system/include/pedigree/kernel/processor/x64/types.h.
typedef X64uint64_t X64uintptr_t |
Define an unsigned integer type for pointer arithmetic
Definition at line 46 of file modules/subsys/native/include/pedigree/native/x64/types.h.
typedef X64uint64_t X64uintptr_t |
Define an unsigned integer type for pointer arithmetic
Definition at line 46 of file system/include/pedigree/kernel/processor/x64/types.h.
|
inline |
Get the virtual address from the physical address. This is possible on x64 because the whole physical memory is mapped into the virtual address space
[in] | address | the physical address |
Definition at line 38 of file utils.h.
Referenced by X86CommonPhysicalMemoryManager::PageStack::allocate(), PhysicalMemoryManager::allocateMemoryRegionList(), X64VirtualAddressSpace::clone(), X64VirtualAddressSpace::conditionalTableEntryAllocation(), X64VirtualAddressSpace::conditionalTableEntryMapping(), ArmV7VirtualAddressSpace::doMap(), PpcCommonPhysicalMemoryManager::PageStack::free(), ArmV7PhysicalMemoryManager::PageStack::free(), HostedPhysicalMemoryManager::PageStack::free(), X86CommonPhysicalMemoryManager::PageStack::free(), X86VirtualAddressSpace::fromFlags(), X86VirtualAddressSpace::getKernelHeapEnd(), ArmV7VirtualAddressSpace::getKernelModulesEnd(), PPC32VirtualAddressSpace::initialRoster(), MIPS32VirtualAddressSpace::map(), X86VirtualAddressSpace::revertToKernelAddressSpace(), X64VirtualAddressSpace::revertToKernelAddressSpace(), VirtualAddressSpace::rollbackHeapExpansion(), X64VirtualAddressSpace::X64VirtualAddressSpace(), and X86VirtualAddressSpace::X86VirtualAddressSpace().
|
inline |