UbixOS  2.0
paging.c File Reference
#include <sys/types.h>
#include <vmm/vmm.h>
#include <lib/kprintf.h>
#include <lib/kmalloc.h>
#include <ubixos/kpanic.h>
#include <ubixos/sched.h>
#include <ubixos/spinlock.h>
#include <string.h>
#include <assert.h>
#include <sys/descrip.h>
#include <ubixos/vitals.h>
Include dependency graph for paging.c:

Go to the source code of this file.

Functions

int obreak (struct thread *td, struct obreak_args *uap)
 
int vmm_cleanVirtualSpace (uint32_t addr)
 
int vmm_clearVirtualPage (uint32_t pageAddr)
 
void * vmm_getFreeKernelPage (pidType pid, uint16_t count)
 
void * vmm_getFreeMallocPage (uInt16 count)
 
void * vmm_mapFromTask (pidType pid, void *ptr, uint32_t size)
 
int vmm_pagingInit ()
 
int vmm_remapPage (uint32_t source, uint32_t dest, uint16_t perms, pidType pid, int haveLock)
 

Variables

uint32_tkernelPageDirectory = 0x0
 

Function Documentation

◆ obreak()

int obreak ( struct thread td,
struct obreak_args uap 
)

Definition at line 546 of file paging.c.

◆ vmm_cleanVirtualSpace()

int vmm_cleanVirtualSpace ( uint32_t  addr)

Definition at line 587 of file paging.c.

Referenced by sysExec().

◆ vmm_clearVirtualPage()

int vmm_clearVirtualPage ( uint32_t  pageAddr)

Definition at line 356 of file paging.c.

References PD_ENTRIES.

Referenced by vmm_getFreeKernelPage().

◆ vmm_getFreeKernelPage()

void* vmm_getFreeKernelPage ( pidType  pid,
uint16_t  count 
)

◆ vmm_getFreeMallocPage()

void* vmm_getFreeMallocPage ( uInt16  count)

Definition at line 488 of file paging.c.

◆ vmm_mapFromTask()

void* vmm_mapFromTask ( pidType  pid,
void *  ptr,
uint32_t  size 
)

Definition at line 372 of file paging.c.

Referenced by sdeThread().

◆ vmm_pagingInit()

◆ vmm_remapPage()

int vmm_remapPage ( uint32_t  source,
uint32_t  dest,
uint16_t  perms,
pidType  pid,
int  haveLock 
)

Variable Documentation

◆ kernelPageDirectory

uint32_t* kernelPageDirectory = 0x0

Definition at line 41 of file paging.c.

Referenced by biosCall(), execFile(), execThread(), and vmm_pagingInit().