首頁 >運維 >linux運維 >linux內核是什麼意思

linux內核是什麼意思

藏色散人
藏色散人原創
2019-01-14 10:48:1816194瀏覽

linux核心是與計算機中的硬體接口的最低級別的易於更換的軟體;內核負責將以“用戶模式”運行的所有應用程序連接到物理硬件,並允許進程使用進程間通信從彼此獲取資訊。

linux內核是什麼意思

本文操作環境:linux5.9.8系統、Dell G3電腦。

Linux核心擁有超過1300萬行程式碼,是世界上最大的開源專案之一。

那麼核心是什麼?

核心是與電腦中的硬體介面的最低層級的易於更換的軟體。它負責將以「用戶模式」運行的所有應用程式連接到實體硬件,並允許進程(稱為伺服器)使用進程間通訊(IPC)從彼此獲取資訊。

不同類型的核心

當然,從頭開始建立核心時,有不同的方法來建立核心和架構注意事項。通常,大多數內核屬於三種類型之一:單片,微內核和混合。 Linux是一個單片核心,而OS X(XNU)和Windows 7使用混合核心。 。

單片核心

單片核心與微核心相反,因為它們不僅包含CPU,記憶體和IPC,還包括設備驅動程序,檔案系統管理和系統伺服器調用等內容。單片核心在存取硬體和多任務處理方面往往更好,因為如果程式需要從記憶體中獲取資訊或運行它的另一個進程有一個更直接的線來存取它,而不必在佇列中等待完成任務。然而,這可能會導致問題,因為在管理程式模式下執行的事情越多,如果一個行為不正常就會導致系統崩潰。

優點

更直接存取程式的硬體

#程式之間的通訊更容易相互通訊

如果您的裝置受支持,則無需額外安裝即可使用

進程反應更快,因為沒有處理器時間佇列

#安裝佔地面積大

記憶體佔用大

不太安全,因為一切都以管理員模式運行

linux內核是什麼意思

Linux核心文件在哪裡?

linux內核是什麼意思

Ubuntu中的核心檔案儲存在/ boot資料夾中,名為vmlinuz- version。名稱vmlinuz來自unix世界,他們過去常常在60年代將其核心稱為“unix”,因此Linux在90年代首次開發時就開始調用他們的核心“linux”。

當開發虛擬記憶體以實現更輕鬆的多任務處理能力時,「vm」被放在檔案的前面以顯示核心支援虛擬記憶體。有一段時間Linux核心被稱為vmlinux,但核心變得太大而無法容納在可用的啟動記憶體中,因此核心映像被壓縮,結尾x被更改為az以顯示它是使用zlib壓縮進行壓縮的。這種壓縮並不總是使用,通常用LZMA或BZIP2代替,有些核心簡稱為zImage。

版本編號將採用ABCD格式,AB可能為2.6,C為您的版本,D表示您的補丁或修補程式

linux內核是什麼意思

在/ boot資料夾中還有其他非常重要的文件,名稱為initrd.img-version,system.map-version和config-version。 initrd檔案用作小型RAM磁碟,用於提取和執行實際的核心檔案。 system.map檔案在核心完全載入之前用於記憶體管理,設定檔告訴核心在編譯核心時要載入到核心映像中的選項和模組。

Linux內核架構

由於Linux內核是單片內核,因此與其他類型的內核相比,它具有最大的佔用空間和最大的複雜性。這是一個設計特性,在Linux的早期階段引起了相當多的爭論,並且仍然存在一些與單晶片固有相同的設計缺陷。

Linux核心開發人員解決這些缺陷的一件事是製作可在運行時載入和卸載的核心模組,這意味著您可以動態添加或刪除核心的功能。這不僅是透過包含運行伺服器進程的模組(如低階虛擬化)來為核心添加硬體功能,而且還可以在不需要在某些情況下重新啟動電腦的情況下更換整個核心。

想像一下,如果您可以升級到Windows服務包而無需重新啟動...

內核模組

linux內核是什麼意思

####################################

如果Windows已經安裝了所有可用的驅動程式並且您只需打開所需的驅動程序,該怎麼辦?這基本上是核心模組為Linux做的。核心模組,也稱為可載入核心模組(LKM),對於保持核心與所有硬體一起運行而不消耗所有可用記憶體至關重要。

模組通常會為基本核心添加功能,例如設備,檔案系統和系統呼叫。 LKM的檔案副檔名為.ko,通常儲存在/ lib / modules目錄中。由於它們的模組化特性,您可以透過在啟動期間使用menuconfig命令或透過編輯/ boot / config檔來設定要載入或不載入的模組來輕鬆自訂內核,或者您可以使用modprobe動態載入和卸載模組命令。

某些發行版(如Ubuntu)中提供了第三方和閉源模組,預設情況下可能無法安裝,因為模組的原始碼不可用。該軟體的開發人員(即nVidia,ATI等)不提供原始程式碼,而是建立自己的模組並編譯所需的.ko檔案以進行分發。雖然這些模組在啤酒中是免費的,但它們並不像語音中那樣免費,因此一些發行版不包含這些模組,因為維護者認為它通過提供非自由軟體來「玷污」內核。

核心不是魔術,但對於任何正常運作的電腦來說都是必不可少的。 Linux核心與OS X和Windows不同,因為它包含核心層級的驅動程序,並且「開箱即用」支援許多內容。希望您能更多地了解您的軟體和硬體如何協同工作以及啟動電腦所需的文件。

以上是linux內核是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn