分頁機制,一點小小的理解,os 于淵的樹上的

2021-07-24 13:54:29 字數 694 閱讀 9639

mov eax, linearaddrdemo

shr eax, 22

mov ebx, 4096

mul ebx

mov ecx, eax

mov eax, linearaddrdemo

shr eax, 12

and eax, 03ffh; 1111111111 (10 bits)

mov ebx, 4

mul ebx

add eax, ecx

add eax, pagetblbase1

mov dword [es:eax], procbar | pg_p | pg_usu | pg_rww

**來自于淵的書籍,自己動手寫作業系統

今天看到了分頁的轉換,主要是把兩個函式用切換頁的方式來顯示執行。

線型位址的高10位,10bits是3ff = 1023, 也就是1024個不同的編號。

從高10位找到了pde, 假設ped位為第x個, 但是乙個pde對應1024個pte,每個pte有4個位元組,所以相對於pte基位址偏移了a1 = x*1024*4個位元組。

從中間10位找到了表項的位置,也就是第幾個表項,設為y,然後每個表項4個位元組,他的偏移就是a2 = y*4個位元組,所以相對於基地的偏移是pagetblbase+a1+a2

a1為頁表相對於pagetblbase的偏移,a2為該指定頁表裡的表項的偏移位址。

一點小小的想法

最近可能會需要跟老師做一點開發工作,當然,對於學校的這種開發,不會像開發公司一樣有正規軍 前端開發,後端開發,架構師 也許這只是我的意淫 我們一般都是人越少越好,很可能都是一個人承包了。那這個人是不是很nb,你可以這麼認為 但不nb又怎麼樣呢!估計,會是老師的指點下,我和另外乙個戰友,至今未曾謀面。...

地方論壇推廣的一點小小的心得

核心提示 乙個論壇的發展extrpczu離不開乙個好的版主,乙個地方論壇的發展更離不開乙個優秀的版主。的確,乙個地方 的成功 80 的人脈 10 的努力 10 的創新。同學和老鄉都願意做各個版塊的版主。一下論壇熱鬧起來了。大家好,好久沒寫東西了,最近工作之餘終於幫自己家鄉弄了乙個地方論壇。說實話,我...

為了一點小小的自尊,總是說不喜歡。

從前,有個青蛙,舒服躺在井底,看白雲來去,日落月公升,在臭泥巴裡玩耍,好不自在!不知從 來了個烏龜,烏龜說 外邊的世界很精彩,大海無垠,天高地遠 青蛙羨慕極了,但終於說了一句 那都是很好很好的,可是我偏不喜歡。這是白馬嘯西風中的最後一句話,青蛙也喜歡說。青蛙就是青蛙,不會變成青蛙俠。青蛙在泥巴裡有自...