diff --git a/src/sys/include/vmm/vmm.h b/src/sys/include/vmm/vmm.h index f82d0dc..d27c078 100644 --- a/src/sys/include/vmm/vmm.h +++ b/src/sys/include/vmm/vmm.h @@ -41,6 +41,7 @@ struct _mMap { uInt32 pageAddr; + uInt32 physicalAddr; uInt16 status; uInt16 reserved; pid_t pid; @@ -72,6 +73,10 @@ /*** $Log$ + Revision 1.9 2005/08/10 06:01:59 fsdfs + cleaned up dependencies. rewrote vmmCopyVirtualSpace. does not compile + CVSn: ---------------------------------------------------------------------- + Revision 1.8 2005/08/10 04:35:03 fsdfs updates. gcc is still barking at me for adding new items to the headers. diff --git a/src/sys/vmm/pagefault.c b/src/sys/vmm/pagefault.c index 757d9c2..18f2dc1 100644 --- a/src/sys/vmm/pagefault.c +++ b/src/sys/vmm/pagefault.c @@ -51,6 +51,30 @@ cpu is a waste of resources but for now it prevents errors. *****************************************************************************************/ +void LoadPageIntoMemory(mMap *page); + +void vmm_pageFault2(uInt32 memAddr, uInt32 eip, uInt32 esp) +{ + kTask_t *tmp = _current; + mMap *m = tmp->FirstPage; + + for( ; m != NULL ; m = m->Next) + { + if(m->pageAddr == memAddr) + { + LoadPageIntoMemory(m); + return; + } + } + kpanic("pagefault: Requested a page which does not exist\n"); + +} + +void LoadPageIntoMemory(mMap *page) +{ + return; +} + void vmm_pageFault(uInt32 memAddr,uInt32 eip,uInt32 esp) { uInt32 i = 0x0, pageTableIndex = 0x0,pageDirectoryIndex = 0x0; uInt32 *pageDir = 0x0,*pageTable = 0x0; @@ -128,6 +152,10 @@ /*** $Log$ + Revision 1.19 2005/08/10 06:01:59 fsdfs + cleaned up dependencies. rewrote vmmCopyVirtualSpace. does not compile + CVSn: ---------------------------------------------------------------------- + Revision 1.18 2005/08/10 04:58:18 fsdfs updated mememory management