青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

巢穴

about:blank

linux內核情景分析筆記-存儲管理

第2章 存儲管理
LINUX頁式管理
PGD          PMD          PT        PTE
頁表目標     中間目錄     頁表     頁表項

LINUX在32位地址下采取二層映射
#define PGDIR_SHIFT 22
#define PTRS_PER_PGD 1024

#define PMD_SHIFT 22
#define PTRS_PER_PMD 1

#define PTRS_PER_PTE 1024
根據以上宏定義,PMD被完美的架空了,而相當于采取了二層映射

其中PGD用了線性地址的最高10位 與  MMU 對應
線性地址的中間10位是所對應的PTE在PT中的索引
剩下的最低12位則是頁中的偏移量

虛擬地址 = 段基地址:段偏移量
                            16位      32位
更準確的講是段選擇子了吧

在LINUX中段基地址 = 0(下面的____KERNEL_CS等),所以可以認為線性地址與虛擬地址總是相等的,但其本質不是一個東西


0xC0000000-0xFFFFFFFF為內核占用
0x0-0xBFFFFFFF為用戶控件


內核的虛擬內存為簡單的線性映射
#__PAGE_OFFSET (0xC0000000)
#define PAGE_OFFSET  ((unsigned long) __PAGE_OFFSET)
#define __pa(x) ((unsigned long)(x) - PAGE_OFFSET)
#define __va(x) ((void *)((unsigned long)(x) +PAGE_OFFSET)

__pa是從虛擬地址轉換成物理地址
__va是從物理地址轉換成虛擬地址


在GDT中有4個段描述符
其索引是2-5
分別是
__KERNEL_CS 內核代碼段
__KERNEL_DS 內核數據段
__USER_CS 用戶代碼段
__USER_DS 用戶數據段

#define start_thread(regs,new_eip,new_esp) do {\
 __asm__("movl %0,%%fs;movl %0,%%gs"::"r"(0)); \
 set_fs(USER_DS);
 regs->xds = __USER_DS; \
 regs->xes = __USER_DS; \
 regs->xss = __USER_DS; \
 regs->xcs = __USER_CS; \
 regs->eip = new_eip;   \
 regs->esp = new_esp;   \

}while(0)

通過這段宏可以看出,LINUX沒用段式存儲,雖然它也走了這個流程

 

MMU的流程 MMU使用物理地址

頁式映射
從REG CR3拿PGD的地址
找到頁面目錄,線性地址中的高10位為索引,找到頁面目錄項,從中拿高20位作為頁面表的索引,頁面表與4k字節邊界對齊,CPU自動補充前12位為0得到頁面表地址。

然后拿線性地址的中間10位,得到頁面表中的索引,拿到頁面表項,頁面表項的高20位在低位補充12個0,再加上線性地址的低12位組成物理地址。


mm_struct 任務相關的虛擬內存
vm_area_struct 一段虛擬內存的抽象,也可以理解為段
mm_struct中擁有vm_area_struct的指針
在vm_area_struct多的時候使用avl樹來存儲
mem_map_t  物理頁表
zone_struct 物理內存的區結構,zone_struct把物理內存分成了幾個部分
ZONE_DMA 0 供DMA使用
ZONE_NORMAL 普通使用
ZONE_HIGHMEN 高段內存,內核映射不到

物理內存之間區的劃分并不是強制的,如果某一個區已經沒有內存可用,是可以去別的區拿內存的

其實一直對內核的尋址有些疑問
不過剛剛似乎想通了
內核會做預映射,把PGD第768項以后的都做映射,也就是1G的空間
而這種映射應該是滿足__pa()宏,即線性地址與物理地址是線性映射的。
所以最終__pa()宏被用作在內核代碼中顯性的獲得某個線性地址所對應的物理地址
而MMU負責把一個線性地址隱式的轉成了物理地址,而這已轉換與內核代碼無關。
不知這樣理解是否正確?

今天只看到了這里
待續……

說起來把這么個東西放到首頁很不好意思,主要目的是希望有看到的人幫我指正一下我所認知的錯誤或者解惑。謝謝啦:)

posted on 2011-03-15 17:47 Vincent 閱讀(1691) 評論(0)  編輯 收藏 引用 所屬分類: linux內核


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品成人一区| 国产精品无码永久免费888| 伊人精品久久久久7777| 欧美在线在线| 欧美在线日韩| 亚洲电影在线| 亚洲激情一区| 欧美日韩精品一区二区在线播放| 亚洲精品自在久久| 亚洲午夜视频在线观看| 国产综合亚洲精品一区二| 美日韩精品视频| 欧美国产日韩精品| 午夜免费日韩视频| 久久久久久自在自线| 亚洲老板91色精品久久| 一区二区三区精品久久久| 国产一区二区三区网站| 欧美激情五月| 国产精品久久久久久久浪潮网站| 久久九九久久九九| 欧美激情一区二区三区全黄 | 久久久久国内| 99re6热只有精品免费观看 | 亚洲男人的天堂在线观看| 永久域名在线精品| 日韩一级欧洲| 亚洲激情午夜| 亚洲欧美日韩视频二区| 91久久综合| 性欧美xxxx大乳国产app| 亚洲精品久久久久久久久久久久久 | 中文国产一区| 久久精品国产综合| 亚洲影音一区| 老司机凹凸av亚洲导航| 欧美一级片久久久久久久| 另类欧美日韩国产在线| 欧美一区二区免费观在线| 欧美成人免费播放| 久久久久久久一区二区三区| 欧美日韩视频在线一区二区| 久久这里有精品15一区二区三区| 欧美日韩综合视频| 亚洲国产精品一区二区www| 国产日韩精品一区二区三区| 亚洲国产日韩在线| 一区二区在线观看视频在线观看| 中国成人黄色视屏| 亚洲天堂网站在线观看视频| 欧美极品影院| 亚洲福利一区| 亚洲日本成人| 奶水喷射视频一区| 免费成人美女女| 国内外成人免费激情在线视频网站 | 亚洲国产精品久久久久| 黑人巨大精品欧美一区二区| 夜夜嗨av色综合久久久综合网| 亚洲激情视频| 玖玖玖免费嫩草在线影院一区| 久久综合久久综合九色| 国产伪娘ts一区| 亚洲一级影院| 欧美一区二区视频网站| 国产精品免费看| 亚洲欧美国产va在线影院| 亚洲专区国产精品| 国产精品福利影院| 正在播放欧美一区| 欧美一区二区三区在线视频| 国产精品拍天天在线| 亚洲图片欧洲图片日韩av| 亚洲欧美日韩另类精品一区二区三区| 欧美日韩国产色综合一二三四| 最新国产拍偷乱拍精品| 日韩午夜在线| 欧美色另类天堂2015| 亚洲在线国产日韩欧美| 久久成人一区二区| 亚洲国产精品久久久| 欧美精品久久久久a| 亚洲视频每日更新| 久久久国产精品亚洲一区| 极品尤物一区二区三区| 欧美不卡一卡二卡免费版| 亚洲精品网站在线播放gif| 亚洲先锋成人| 国产欧美日韩精品a在线观看| 欧美中文在线观看| 欧美国产日韩一区| 亚洲一区3d动漫同人无遮挡| 国产精品播放| 久久久青草婷婷精品综合日韩 | 午夜亚洲福利| 激情视频一区二区三区| 欧美成人精品在线观看| 亚洲午夜精品一区二区三区他趣| 久久精品一区四区| 日韩一区二区电影网| 国产精品一区二区在线观看网站| 久久久久久久久一区二区| 亚洲高清不卡在线| 新狼窝色av性久久久久久| 狠狠色伊人亚洲综合网站色| 欧美激情精品久久久久久蜜臀| 亚洲性图久久| 亚洲电影免费观看高清| 欧美一区二区三区免费视| 亚洲欧洲午夜| 国产精品一区二区视频| 欧美精品亚洲精品| 久久久久一区二区三区四区| 亚洲美女在线一区| 蜜桃伊人久久| 欧美在线免费观看| 国产精品99久久久久久www| 国产亚洲精品久久久久久| 欧美大片网址| 久久国产精品电影| 一区二区高清视频| 欧美激情一二三区| 久久久久久久尹人综合网亚洲 | 日韩西西人体444www| 国产无遮挡一区二区三区毛片日本| 欧美成人精品三级在线观看 | 亚洲第一页在线| 久久久777| 香蕉久久精品日日躁夜夜躁| 一区二区三区日韩欧美精品| 亚洲福利视频一区| 黄色成人av网| 国产午夜精品一区二区三区视频 | 欧美另类一区| 欧美阿v一级看视频| 久久久xxx| 久久成人免费电影| 午夜精品久久久久久久白皮肤| 99re6热只有精品免费观看| 亚洲欧洲一区二区三区| 亚洲高清视频在线| 欧美激情片在线观看| 欧美二区在线| 欧美护士18xxxxhd| 亚洲国内精品| 亚洲精品影院在线观看| 91久久精品一区二区别| 亚洲黄色一区| av不卡在线| 亚洲欧美日韩爽爽影院| 新狼窝色av性久久久久久| 欧美一级在线视频| 久久精品亚洲一区二区三区浴池| 久久se精品一区精品二区| 久久国产精品亚洲77777| 久久久久免费视频| 欧美极品一区二区三区| 欧美日韩在线不卡| 国产情侣一区| 亚洲高清网站| 一本一道久久综合狠狠老精东影业 | 欧美三级网址| 国产乱码精品一区二区三区不卡| 国产欧美二区| 韩国精品在线观看| 亚洲欧洲日产国产网站| 亚洲一级在线观看| 久久精品国产一区二区三| 久久香蕉国产线看观看网| 欧美激情精品久久久久| 亚洲精品乱码视频| 亚洲欧美日本国产有色| 久久久久久亚洲综合影院红桃| 欧美激情一区在线| 国产欧美视频一区二区三区| 亚洲国产成人精品视频| 在线亚洲精品福利网址导航| 久久成人免费| 亚洲精品资源美女情侣酒店| 亚洲免费视频成人| 欧美大片免费久久精品三p| 国产精品久久久久久久浪潮网站| 黑人一区二区三区四区五区| 99综合电影在线视频| 久久免费观看视频| 亚洲免费成人av电影| 欧美制服丝袜| 国产精品久久波多野结衣| 亚洲成在人线av| 欧美一区二区黄| 亚洲精品免费网站| 久久久久久久久久久一区| 国产精品久久久久永久免费观看| 亚洲国产成人在线播放| 欧美在线播放| 制服丝袜激情欧洲亚洲| 欧美经典一区二区| 亚洲国产精品一区二区www| 翔田千里一区二区| 一区二区久久久久|