Linux內核主要的5個部分是:進程調度,內存管理,虛擬文件系統,網絡接口,進程通信。
這5個部分之間的關系如下: 
(1)進程調度部分負責控制進程對CPU的訪問。
(2)內存管理允許多個進程安全地共享主內存區域。(內存管理從邏輯上分為硬件無關部分和硬件相關部分。)【硬件無關部分提供了進程的映射和邏輯內存的對換;硬件相關部分為內存管理管理硬件提供了虛擬接口】
(3)虛擬文件系統隱藏了不同硬件的具體細節,為所有的硬件設備提供了一個標準的接口。(VFS提供了十多種不同類型的文件系統)
(4)網絡接口提供了對各種網絡標準的存取和各種網絡硬件的支持。
(5)進程通信部分用于支持進程見各種不同的通信機制。
進程調度與內存管理之間的關系
這兩個子系統為互相依賴關系。在多道程序環境下,程序允許必須為之創建進程,而創建進程首先就算要將程序和數據裝入內存。 另外,內存管理子系統也存在進程的掛起和恢復過程。
進程間通信與內存管理之間的關系
進程間通信子系統要依賴內存管理支持共享內存通信機制,通過對共同內存區域進行操作來達到通信的目的。
虛擬文件系統與網絡接口之間的關系
虛擬文件系統通過依賴網絡接口支持網絡文件系統(nfs),也通過依賴內存管理支持RAMDISK設備。
內存管理與虛擬文件系統之間的關系
內存管理利用虛擬文件系統支持交換,交換進程定期地由調度程序調度,這也是內存管理依賴于進程調度的唯一原因,當一個進程存取的內存映射被換出時,內存管理回向文件系統發出請求,同時,掛起當前正在運行的進程。
新聞熱點
疑難解答