第七講(下)上線了
本次課程中陳老師主要的講解了關於虛擬記憶體對映的相關知識。
主要介紹了
-
相關資料結構間的關係:
-
行程控制塊是核心中的核心資料結構。
-
在行程的task_struct結構中包含一個mm域,它是指向mm_struct結構的指標。
-
而行程的mm_struct結構則包含行程的可執行映像資訊以及行程的頁目錄指標pgd等。
-
該結構還包含有指向vm_area_struct結構的幾個指標,每個vm_area_struct代表行程的一個虛擬地址區間。
-
怎麼去建立行程使用者空間:
-
fork()系統呼叫在建立新行程時也為該行程建立完整的使用者空間
-
具體而言,是透過複製或共享父行程的使用者空間來實現的,即核心呼叫copy_mm()函式,為新行程建立所有頁表和mm_struct結構
-
Linux利用“寫時複製”技術來快速建立行程
-
還有一些關於虛存對映相關的知識點:
-
執行一個行程時,其可執行映像必須裝入行程的使用者地址空間
-
虛存對映:即把檔案從磁碟對映到行程的使用者空間,對檔案的訪問轉化為對虛存區的訪問
-
有共享的、私有的虛存對映和匿名對映
-
當可執行映像對映到行程的使用者空間時,將產生一組vm_area_struct結構來描述各虛擬區間的起始點和終止點
上課吧!