###什麼是Linux核心###什麼是MMU

碌柒捌發表於2024-05-07

什麼是Linux核心

Linux 核心簡介

Linux® 核心是 Linux 作業系統(OS)的主要元件,也是計算機硬體與其程序之間的核心介面。它負責兩者之間的通訊,還要儘可能高效地管理資源。
之所以稱為核心,是因為在作業系統中就像果實硬殼中的種子一樣,控制著硬體(無論是電話、膝上型電腦、伺服器,還是任何其他型別的計算機)的所有主要功能。

核心在作業系統中的位置

為了更具象地理解核心,不妨將 Linux計算機想象成有三層結構

1. 硬體:物理機(這是系統的底層結構或基礎)是由記憶體(RAM)、處理器(或 CPU)以及輸入/輸出(I/O)裝置(例如儲存、網路和圖形組成的。其中,CPU 負責執行計算和記憶體的讀寫操作。
2. Linux 核心:作業系統的核心。(沒錯,核心正處於核心的位置)它是駐留在記憶體中的軟體,用於告訴 CPU 要執行哪些操作。
3. 使用者程序:這些是核心所[管理](https://www.redhat.com/zh/topics/management)的執行程式。使用者程序共同構成了使用者空間。使用者程序有時也簡稱為*程序*。核心還允許這些程序和伺服器彼此進行通訊(稱為程序間通訊或 IPC)。

系統執行的程式碼透過以下兩種模式之一在 CPU 上執行:核心模式或使用者模式。在核心模式下執行的程式碼可以不受限制地訪問硬體,而使用者模式則會限制 SCI 對 CPU 和記憶體的訪問。記憶體也存在類似的分隔情況(核心空間和使用者空間)。這兩個小細節構成了一些複雜操作的基礎,例如安全防護構建容器虛擬機器的許可權分隔。

這也意味著:如果程序在使用者模式下失敗,則損失有限,無傷大雅,可以由核心進行修復。另一方面,由於核心程序要訪問記憶體和處理器,因此核心程序的崩潰可能會引起整個系統的崩潰。由於使用者程序之間會有適當的保護措施和許可權要求,因此一個程序的崩潰通常不會引起太多問題。
此外,由於 Linux 核心可以在實時修補期間持續工作,因此在應用補丁進行安全修復時不會出現停機。

什麼是MMU

MMU全稱是Memory Management Unit,中文名為記憶體管理單元,有時也稱作分頁記憶體管理單元(paged memory management unit,縮寫為PMMU)。它是一種負責處理中央處理器(CPU)的記憶體訪問請求的計算機硬體。它的功能包括虛擬地址到實體地址的轉換(即虛擬記憶體管理)、記憶體保護、中央處理器快取記憶體的控制等。

咱來一道軟考題鞏固一下:
image
image
可以透過這個分頁變化來判斷我們修改的應用的活躍度。

MMU有什麼作用

地址轉換:MMU(記憶體管理單元)將程式的虛擬地址轉換成真實的實體地址,確保CPU準確訪問記憶體。

記憶體保護:MMU透過許可權和保護機制防止程式越界訪問,確保系統資料安全。

虛擬記憶體管理:MMU支援虛擬記憶體,透過硬碟等輔助儲存裝置擴充套件記憶體空間,提升系統效能和靈活性。

記憶體對映:MMU將外設地址對映到CPU地址空間,簡化CPU與外設的資料交換。

效能提升:MMU的地址轉換和虛擬記憶體管理減少了對RAM的依賴,降低記憶體碎片和交換頻率,提升系統整體效能。

image

相關文章