vmm.h
vmm/paging.h
ubixos/types.h
src/sys/include/ubixos/init.h
src/sys/kernel/bioscall.c
src/sys/kernel/elf.c
src/sys/kernel/endtask.c
src/sys/kernel/exec.c
src/sys/kernel/fork.c
src/sys/kernel/ld.c
src/sys/kernel/sched.c
src/sys/kernel/syscall.c
src/sys/kernel/systemtask.c
src/sys/kmods/kmod.c
src/sys/lib/kmalloc.c
src/sys/sys/idt.c
src/sys/vmm/copyvirtualspace.c
src/sys/vmm/createvirtualspace.c
src/sys/vmm/getfreepage.c
src/sys/vmm/getfreevirtualpage.c
src/sys/vmm/getphysicaladdr.c
src/sys/vmm/pagefault.c
src/sys/vmm/paging.c
src/sys/vmm/setpageattributes.c
src/sys/vmm/unmappage.c
src/sys/vmm/vmm_init.c
src/sys/vmm/vmm_memory.c
sys/thread.h
ubixos/types.h
sys/_types.h
vmm/paging.h
src/sys/include/vmm/vmm.h
sys/sysproto.h
sys/signal.h
src/sys/kernel/elf.c
src/sys/kmods/kmod.c
src/sys/lib/kmalloc.c
src/sys/vmm/paging.c
src/sys/kernel/systemtask.c
src/sys/kernel/ld.c
src/sys/kernel/fork.c
src/sys/vmm/createvirtualspace.c
src/sys/vmm/vmm_init.c
src/sys/kernel/sched.c
src/sys/include/vmm/vmm.h
src/sys/vmm/setpageattributes.c
src/sys/vmm/getphysicaladdr.c
src/sys/init/main.c
src/sys/kernel/bioscall.c
src/sys/kernel/syscall.c
src/sys/vmm/pagefault.c
src/sys/include/ubixos/init.h
src/sys/vmm/unmappage.c
src/sys/vmm/vmm_memory.c
src/sys/kernel/endtask.c
src/sys/vmm/getfreepage.c
src/sys/sys/idt.c
src/sys/kernel/exec.c
src/sys/vmm/getfreevirtualpage.c
src/sys/vmm/copyvirtualspace.c
mMap
memAvail
1
adjustCowCounter
freePage
vmmFindFreePage
vmmFreeProcessPages
vmmMemMapInit
memNotavail
2
vmmFindFreePage
vmmMemMapInit
vmmID
-3
adjustCowCounter
vmmFreeProcessPages
vmmMemMapInit
vmmMemoryMapAddr
0xE6667000
vmm_pagingInit
int int adjustCowCounter (uInt32 baseAddr, int adjustment) adjustCowCounter uInt32 baseAddr int adjustment assert mMap::cowCounter freePages vitalsStruct::freePages memAvail mMap::pid spinLock spinUnlock mMap::status systemVitals vmmCowSpinLock vmmID vmmMemoryMap freePage vmm_pageFault vmmCopyVirtualSpace vmmFreeProcessPages
int int countMemory () countMemory cr0 inportByte outportByte vmmMemMapInit
int int freePage (uInt32 pageAddr) freePage uInt32 pageAddr adjustCowCounter assert mMap::cowCounter freePages vitalsStruct::freePages memAvail mMap::pid spinLock spinUnlock mMap::status systemVitals vmmMemoryMap vmmSpinLock vmm_remapPage
int int vmm_init () vmm_init

Function: int vmm_init()

Description: Initializes the vmm subsystem

Notes:

K_PANIC
vmm_pagingInit
vmmMemMapInit
uint32_t uint32_t vmmFindFreePage (pidType pid) vmmFindFreePage pidType pid freePages vitalsStruct::freePages kpanic memAvail memNotavail numPages mMap::pid spinLock spinUnlock status sysID systemVitals vmmMemoryMap vmmSpinLock elf_loadfile execFile kmod_load ldEnable obreak sys_exec sysExec vmm_getFreeMallocPage vmm_pageFault vmm_pagingInit vmm_remapPage vmmGetFreeKernelPage vmmGetFreePage vmmGetFreeVirtualPage
void void vmmFreeProcessPages (pidType pid) vmmFreeProcessPages pidType pid adjustCowCounter mMap::cowCounter freePages vitalsStruct::freePages memAvail numPages PAGE_COW pageEntries parentPageDirAddr mMap::pid spinLock spinUnlock status systemVitals tablesBaseAddress vmmID vmmMemoryMap vmmSpinLock x1000 systemTask
int int vmmMemMapInit () vmmMemMapInit countMemory freePages kprintf memAvail memNotavail numPages mMap::pageAddr mMap::pid mMap::status status vmmID vmmMemoryMap x1000 vmm_init
int int numPages numPages vmm_pagingInit vmmFindFreePage vmmFreeProcessPages vmmMemMapInit
mMap * mMap* vmmMemoryMap vmmMemoryMap adjustCowCounter freePage kmain vmm_pagingInit vmmFindFreePage vmmFreeProcessPages vmmMemMapInit

    /*****************************************************************************************
    Copyright(c)2002-2004TheUbixOSProject
    Allrightsreserved.

    Redistributionanduseinsourceandbinaryforms,withorwithoutmodification,are
    permittedprovidedthatthefollowingconditionsaremet:

    Redistributionsofsourcecodemustretaintheabovecopyrightnotice,thislistof
    conditions,thefollowingdisclaimerandthelistofauthors.Redistributionsinbinary
    formmustreproducetheabovecopyrightnotice,thislistofconditions,thefollowing
    disclaimerandthelistofauthorsinthedocumentationand/orothermaterialsprovided
    withthedistribution.NeitherthenameoftheUbixOSProjectnorthenamesofits
    contributorsmaybeusedtoendorseorpromoteproductsderivedfromthissoftware
    withoutspecificpriorwrittenpermission.

    THISSOFTWAREISPROVIDEDBYTHECOPYRIGHTHOLDERSANDCONTRIBUTORS"ASIS"ANDANY
    EXPRESSORIMPLIEDWARRANTIES,INCLUDING,BUTNOTLIMITEDTO,THEIMPLIEDWARRANTIESOF
    MERCHANTABILITYANDFITNESSFORAPARTICULARPURPOSEAREDISCLAIMED.INNOEVENTSHALL
    THECOPYRIGHTOWNERORCONTRIBUTORSBELIABLEFORANYDIRECT,INDIRECT,INCIDENTAL,
    SPECIAL,EXEMPLARY,ORCONSEQUENTIALDAMAGES(INCLUDING,BUTNOTLIMITEDTO,PROCUREMENT
    OFSUBSTITUTEGOODSORSERVICES;LOSSOFUSE,DATA,ORPROFITS;ORBUSINESSINTERRUPTION)
    HOWEVERCAUSEDANDONANYTHEORYOFLIABILITY,WHETHERINCONTRACT,STRICTLIABILITY,OR
    TORT(INCLUDINGNEGLIGENCEOROTHERWISE)ARISINGINANYWAYOUTOFTHEUSEOFTHIS
    SOFTWARE,EVENIFADVISEDOFTHEPOSSIBILITYOFSUCHDAMAGE.

    $Id: vmm_8h.xml 88 2016-01-12 00:11:29Z reddawg $

    *****************************************************************************************/

    #ifndef_VMM_H
    #define_VMM_H

    #include<vmm/paging.h>
    #include<ubixos/types.h>

    #definememAvail1
    #definememNotavail2
    #definevmmID-3
    #definevmmMemoryMapAddr0xE6667000

    typedefstruct{
    uInt32pageAddr;
    uInt16status;
    uInt16reserved;
    pid_tpid;
    intcowCounter;
    }mMap;

    externintnumPages;
    externmMap*vmmMemoryMap;

    intvmm_init();
    intvmmMemMapInit();
    intcountMemory();
    uint32_tvmmFindFreePage(pidTypepid);
    intfreePage(uInt32pageAddr);
    intadjustCowCounter(uInt32baseAddr,intadjustment);
    voidvmmFreeProcessPages(pidTypepid);

    #endif

    /***
    $Log: vmm_8h.xml,v $
    Revision 1.6  2006/12/19 14:12:54  reddawg
    rtld-elf almost workign

    Revision1.22006/12/0514:10:21reddawg
    WorkignDistro

    Revision1.1.1.12006/06/0112:46:13reddawg
    ubix2

    Revision1.22005/10/1200:13:37reddawg
    Removed

    Revision1.1.1.12005/09/2617:23:59reddawg
    nomessage

    Revision1.62004/07/2117:39:04reddawg
    removeddevice

    Revision1.52004/07/1902:08:28reddawg
    Cleanedouttherestofdebugingcodealsotemporarilydisabledtheipstacktoimproveboottime

    Revision1.42004/07/0912:18:19reddawg
    UpdatingInitializationProcedures

    Revision1.32004/05/2115:21:04reddawg
    Cleanedup

    END
    ***/