Linux Kernel是Linux作業系統運作的核心,狹義的「Linux」其實就是指Kernel本身,而非整個作業系統。使用Linux Kernel的作業系統稱為Linux作業系統,若作業系統已經先整合了Linux Kernel和其它的系統軟體、應用軟體與文件,甚至是圖形介面給使用者直接安裝,而無須使用者自己編譯,則稱為Linux發行版(Linux distribution,簡稱Linux distro)。Ubuntu即為眾多Linux發行版中的一個,也是相對比較多人使用的Linux發行版。另外也有許多基於Ubuntu的衍生發行版,例如:Linux Mint。



Linux Kernel

Linux Kernel提供系統I/O管理、CPU進程/執行緒管理、記憶體管理、磁碟與檔案系統管理、網路管理以及周邊裝置的管理,可以說是負責軟體與硬體溝通的重要橋樑,使用C語言和組合語言寫成,開放原始碼,任何人都可以免費下載使用。

Linux Kernel的官方網站:

https://www.kernel.org/

我們可以在Linux Kernel的官方網站看到目前有在維護的Linux Kernel的版本清單。

如何查看目前使用的Linux Kernel?

在終端機下執行uname -a或是uname -r指令,即可查看目前Linux作業系統所使用的核心版本。

ubuntu-kernel-update

為什麼要更新Linux Kernel?

更新Linux Kernel,通常可以有助於改善Linux作業系統的穩定度、效能、功耗、安全性以及對新硬體的相容性。

如何更新Linux Kernel?

Ubuntu和其衍生出來的Linux發行版,Linux Kernel的版本會隨著系統更新而自動升級。在預設的情況下,系統更新只會升級x.y.0-z中的z號碼(Patch),例如原先若使用5.4.0-109版的Kernel,若現在有5.13.0-415.4.0-110可以使用,系統更新只會將Kernel自動升級到>5.4.0-110,而不會升級到5.13.0-41

要進行Linux Kernel的自動升級,在Ubuntu和其衍生發行版中只需要執行以下指令來更新所有套件即可:

sudo apt upgrade

每個Ubuntu LTS發行版都會提供三種不同次版本號的Linux Kernel。第一種就是發行版自帶的Linux Kernel;第二種是HWE(Hardware Enablement),通常就是之後釋出的非LTS發行版預設所使用的Kernel,可以增加對新硬體的相容性;第三種是HWE-edge,通常會是HWE的下一代版本的Kernel。之所以會說通常,是因HWE-edge不一定會比HWE來得新,HWE也不一定會比發行版自帶的Linux Kernel來得新,可能會有HWE-edge比HWE舊,也可能甚至是這三種都是同一個Linux Kernel的情況發生。

若要安裝Ubuntu 20.04的HWE版本的Kernel,可以執行以下指令:

sudo apt install --install-recommends linux-generic-hwe-20.04

ubuntu-kernel-update

如果要安裝HWE-edge版本的Kernel,可以執行以下指令:

sudo apt install --install-recommends linux-generic-hwe-20.04-edge

安裝完後重新開機就可以套用新的Kernel了!

ubuntu-kernel-update

低延遲的Linux Kernel

其實除了generic (linux-generic)的Linux Kernel外,還有lowlatency的Linux Kernel能夠使用。這種類型的Linux Kernel會更頻繁地中斷處理中的任務,以達到低延遲或是即時處理資料的效果,如果您的電腦需要實時處理聲音或是影像(例如錄音)就會需要這種類型的Linux Kernel。

lowlatency的Linux Kernel和generic的一樣有分為三種版本,安裝指令如下:

sudo apt install --install-recommends linux-lowlatency

HWE版本的指令如下:

sudo apt install --install-recommends linux-lowlatency-hwe-20.04

HWE-edge版本的指令如下:

sudo apt install --install-recommends linux-lowlatency-hwe-20.04-edge