nachos multiprogramming
TRANSCRIPT
Implement Multiprogramming
2009年6月26日星期五
• virtualPage==physicalPage
• 兩個以上process的virtual page會對應到同一個physical page
• 分配的table數目不恰當2009年6月26日星期五
• addrspace.h 中 class AddrSpace 加入 static bool usedPhyPage[NumPhysPages];紀錄哪個 physical page 已被使用
2009年6月26日星期五
• 把給Process分配page table的動作改到Load去做
• 分配夠用的page table就好
• 把virtual page table 對應到沒有用過的physical page table,
2009年6月26日星期五
• 原本ReadAt直接放virtual address,該成對應的physical address
• pageTable[virtual address/page size].physicalPage + virtual address physical page offset
2009年6月26日星期五
• 把記憶體空間釋放出來
• Done
2009年6月26日星期五