|
The Pedigree Project
0.1
|
x64 processor-specific kernel More...
Collaboration diagram for x64: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().
Here is the caller graph for this function:
|
inline |
1.8.11