ApertureOS
Data Structures | Macros | Functions
priv_virt_mem_manager.h File Reference
#include "types.h"
#include "virt_mem_manager.h"
#include "managers.h"
Include dependency graph for priv_virt_mem_manager.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  PDPT_Entry
 
struct  PD_Entry
 
struct  PD_Entry_PSE
 
struct  PT_Entry
 

Macros

#define KMEM_START   0
 
#define KMEM_END   0x40000000
 
#define KMEM_SIZE   (KMEM_END-KMEM_START)
 
#define PAT_MSR   0x277
 
#define GET_ADDR(x)   (((PDPT_Entry*)x)->addr << 12)
 
#define SET_ADDR(val)   (((uint64_t)(val)) >> 12)
 
#define PDPT_STORAGE_SIZE_U64   ((PAGE_DIR_STORAGE_POOL_SIZE/KB(12)) * 4)
 

Functions

uint64_t * virtMemMan_GetFreePDPTEntry ()
 
PD_Entry_PSEvirtMemMan_GetFreePageDirEntry ()
 
uint32_t virtMemMan_PageFaultHandler (Registers *regs)
 

Macro Definition Documentation

#define GET_ADDR (   x)    (((PDPT_Entry*)x)->addr << 12)
#define KMEM_END   0x40000000
#define KMEM_SIZE   (KMEM_END-KMEM_START)
#define KMEM_START   0
#define PAT_MSR   0x277
#define PDPT_STORAGE_SIZE_U64   ((PAGE_DIR_STORAGE_POOL_SIZE/KB(12)) * 4)
#define SET_ADDR (   val)    (((uint64_t)(val)) >> 12)

Function Documentation

PD_Entry_PSE* virtMemMan_GetFreePageDirEntry ( )
uint64_t* virtMemMan_GetFreePDPTEntry ( )
uint32_t virtMemMan_PageFaultHandler ( Registers regs)