2013-10-11 79 views
0

在Windows中,可以通過構建PTE本身的地址來訪問特定虛擬地址的PTE結構。 這是因爲所有PTES都被映射到從某個地址開始的虛擬地址空間中。PTE的Mac OS X地址

Mac OS X的情況也是這樣嗎? 我的意思是,我可以訪問給定虛擬地址的PTE嗎?

回答

0

你可以,但只能在內核模式下,通過「pmap」層。您將需要CR3的相關值(即進程(或內核)上下文),因爲CR3的不同值意味着不同的頁表。但是,請注意,這些並未公開KPI(內核公共/編程接口),因此需要制定一個kext文件,該文本文件在每個內核版本中都非常具體。這並不完全清楚爲什麼在所有這些你需要PTE,因爲xnu從大約第二行start.S是虛擬的 - 但它仍然是可能的。