《linux存儲》ppt課件

《linux存儲》ppt課件

ID:27519721

大?。?30.50 KB

頁數:40頁

時間:2018-12-01

《linux存儲》ppt課件_第1頁
《linux存儲》ppt課件_第2頁
《linux存儲》ppt課件_第3頁
《linux存儲》ppt課件_第4頁
《linux存儲》ppt課件_第5頁
資源描述:

《《linux存儲》ppt課件》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。

1、LINUX存儲管理地址空間地址空間(addressspace)是一段表示內存位置的地址范圍。地址空間有兩種:物理地址空間邏輯地址空間,也被稱為虛擬地址空間在邏輯地址和物理地址之間相互轉換的工作是由內核和硬件內存管理單元(MMU—memorymanagementunit)共同完成的。MMU是被集成進現代的CPU里的,它們都是同一塊CPU芯片內的一個部分。內核告訴MMU如何為每個進程把某邏輯頁面映射到某特定物理頁面,而MMU在進程提出內存請求時完成實際的轉換工作。LINUX的虛擬地址劃分每一個用戶進程都可以訪問4GB的線性虛擬內存空間。從0到3GB的虛擬內存地址是用戶空間,

2、用戶進程可以直接對其進行訪問。從3GB到4GB的虛擬內存地址為核心態(tài)空間,存放僅供核心態(tài)訪問的代碼和數據,用戶態(tài)進程不可訪問。所有進程從3GB到4GB的虛擬空間都是一樣的,有同樣的頁目錄項,同樣的頁表,對應到同樣的物理內存段。LINUX以此方式讓內核態(tài)進程共享代碼段和數據段。內核態(tài)虛擬空間從3GB到3GB+4M的一段(也就是進程頁目錄第768項所管轄的范圍),被映射到物理空間0到4M段。因此,進程處于核心態(tài)時,只要通過訪問虛擬空間3GB到3GB+4M段,偏移地址0到4M,即訪問了物理空間0到4M段。虛擬地址轉換PGDPMDPTEPageFrame頁目錄索引,頁面中間目錄

3、、頁表索引和偏移量虛擬內存和物理內存都分為大小固定的塊,叫做頁面。每一個頁面有一個唯一的頁面號,叫做PFN(pageframenumber)。轉換后備緩存(TranslationLookasideBuffers:TLBs)如果簡單的執(zhí)行從邏輯地址到物理地址的轉換過程,在跟蹤指針鏈時將會需要幾個內存引用。RAM雖然不像磁盤那么慢,但是仍然比CPU要慢的多,這樣就容易形成性能的瓶頸。為了減少這種開銷,最近被執(zhí)行過的地址轉換結果將被存儲在MMU的轉換后備緩存(translationlookasidebuffers:TLBs)內。虛擬地址轉換虛存段(VMA)的組織和管理VMA:

4、vitualmemoryarea一個vma段是某個進程的一段連續(xù)的虛存空間;在這段虛存里的所有單元擁有相同的特征。例如:屬于同一進程,相同的訪問權限,同時被鎖定(locked),同時受保護(protected),等等。進程通常占用幾個vma段,分別用于代碼段、數據段、堆棧段等。屬于同一進程的vma段通過vm_next指針連接,組成鏈表。對于一個給定的進程,兩個VMAs決不會重疊,一個地址最多被一個VMA所覆蓋;進程從未訪問過的的一個地址將不會在任何一個VMA中。structmm_struct結構的成員structvm_area_struct*mmap表示進程的vma鏈表

5、的表頭。當一個進程有多于avl_min_map_count數目的VMA時,內核也會創(chuàng)建一個AVL樹來存儲它們,此時仍然是使用VMAs自己的指針對該樹進行管理。AVL樹是一個平衡二叉樹結構,因此這種方法在VMA數量巨大時查找效率十分高。虛存段(VMA)的組織和管理AVL樹PCB對內存的控制Taskstructmm_struct_vm_area_structvm_mmpgdmmvm_operations_structvm_nextmmapvm_opspgdvm_area_structpteptepagepageframeframevm_next*open物理空間管理物理空間

6、的組織空閑物理內存管理空閑內存的組織分配回收物理空間的組織(include/linux/fs.h,structpage)物理內存以頁幀(pageframe)為單位,頁幀的長度固定,等于頁長,對INTELCPU缺省為4K字節(jié)。LINUX對物理內存的管理通過mem_map表描述(mm/memory.c)。mem_map在系統(tǒng)初始化時由free_area_init()函數創(chuàng)建(mm/page_alloc.c)。它本身是關于structpagemem_map_t(linux/mm.h)的數組,每項mem_map_t對應一個關于核心態(tài)、用戶態(tài)代碼和數據等的頁幀。mem_map在物

7、理空間的位置0X000000(0K)empty_Zero_Page由mem_init初始化0X001000(4K)swapper_pg_dir核心態(tài)訪問空間的頁目錄0X002000(8K)pg00X003000(12K)bad_pages0X004000(16K)bad_pg_table0X005000(20K)floppy_track_buffer0X006000(24K)kernel_code+textFREE0X0A0000(640KRESERVED0X100000(1M)pg_tables(4K)swap_cachemem_map

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。