WRK筆記 為一塊VA區域建立PDE

2021-07-10 11:06:02 字數 742 閱讀 9694

allocvm.c

micreatepagetablesforphysicalrange (

in peprocess process,

in pvoid startingaddress,

in pvoid endingaddress

)1.計算需要從startingaddress到endingaddress需要多少物理頁面才夠裝下頁目錄。

假設最簡單的情況startingaddress到endingaddress可以裝在乙個pde中。那麼需要乙個pxe項指向乙個ppe項指向乙個pde項。那麼需要3個頁面。  

pagesneeded = miresidentpagesforspan (startingaddress, endingaddress);

pointerpte = migetpteaddress (startingaddress);

lastpte = migetpteaddress (endingaddress);  

2.提交從pointerpte到lastpte需要的pde的物理記憶體。在amd64中pxe,ppe,pde,pte都是一維陣列。    

while (pointerpte <= lastpte)

//省略部分**

pointerpte += 1;

startingaddress = (pvoid)((puchar)startingaddress + page_size);

}

給我一塊石頭

給我一塊石頭!專案經理應該小心的遊戲之一 克里夫與團隊一起,用一周時間制訂出了專案日程。他們完成了 哈德遜灣式啟動 並且確定已經識別出了主要的技術風險。他將風險和日程安排告訴了他的上司諾姆。你就不能再早點完成專案了麼?諾姆的一句話將克里夫送回了團隊,步履蹣跚。克里夫與團隊又花了一周時間修改時間表,得...

我是一塊硬碟

發信人 lesliechen 打死我也不說 信區 campus east 標 題 我是一塊硬碟 zz 發信站 bbs 同舟共濟站 wed jul 7 13 27 53 2004 站內 我是乙個硬碟,st380021a,在乙個普普通通的台式電腦裡工作。別人總認為我們是高科技白領,工作又乾淨又體面,似乎...

我是一塊硬碟

我是一條記憶體。我在一台台式電腦裡工作,但是我記不得我是從 來的,是什麼牌子,因為我健忘。我的上司是cpu大哥,他是我們的老大。都說他是電腦的腦子,可是我看他的腦子 實在是太小了,比我還要健忘。每天他總是不停地問我,某某頁某某位址存的是什麼?我總是不厭其煩地告訴他,可是不出一秒鐘他又忘記了,又要問一...