Linux Kernel 5.8軟件特色
1.功能變得更全面,比起4.9-rc1,肯定是延續(xù)了它的經(jīng)典規(guī)則
2.支持Intel、Alpha、PPC、Sparc、IA-64 、ARM、MIPS、Amiga、Atari和IBM s/390等
3.支持32位大文件系統(tǒng)
Linux Kernel 5.8軟件優(yōu)勢
1.1。在內(nèi)存顛簸情況下表現(xiàn)更好
在交換和緩存回收之間取得平衡的回收代碼試圖預(yù)測內(nèi)存頁面的可能重用。當(dāng)它失敗時(shí),它無法檢測到緩存在病理上發(fā)生故障的時(shí)間,或者系統(tǒng)何時(shí)處于交換風(fēng)暴的中間。這段代碼已經(jīng)隨著時(shí)間的流逝而調(diào)整到了這樣的程度:即使存在大量的冷匿名內(nèi)存和功能強(qiáng)大的交換設(shè)備,虛擬機(jī)也拒絕認(rèn)真掃描這些頁面,并且可能不必要地使頁面緩存崩潰??焖匐S機(jī)IO設(shè)備(例如SSD)的激增使這種不良行為更加明顯。
此版本旨在解決此問題。從Linux 3.15開始,內(nèi)核具有對refault IO的精確跟蹤-回收錯(cuò)誤頁面的最終成本。這允許使用基于IO成本的平衡模型,該模型在高速緩存崩潰時(shí)更積極地掃描匿名內(nèi)存,同時(shí)能夠避免不必要的交換風(fēng)暴。此版本的LRU平衡基于每個(gè)列表上的拒絕率,乘以交換設(shè)備和文件系統(tǒng)之間的相對IO成本(交換性),以便優(yōu)化回收成本,以最小化IO成本。交換性sysctl現(xiàn)在還可以提高到200,以強(qiáng)制內(nèi)核使用交換,這對于內(nèi)存交換(例如zram或zswap)很有用。
1.2。內(nèi)核并發(fā)消毒器
內(nèi)核并發(fā)清理器(KCSAN)是內(nèi)核的數(shù)據(jù)競爭檢測器。KCSAN設(shè)計(jì)中的關(guān)鍵優(yōu)先事項(xiàng)是缺乏誤報(bào),可伸縮性和簡單性。KCSAN使用編譯時(shí)檢測來檢測內(nèi)存訪問,GCC和Clang均支持。
文檔:內(nèi)核并發(fā)清理程序(KCSAN)
推薦的LWN文章:并發(fā)錯(cuò)誤應(yīng)該擔(dān)心糟糕的數(shù)據(jù)爭用檢測器(第1部分)
1.3。內(nèi)核事件通知機(jī)制
此版本增加了在標(biāo)準(zhǔn)管道之上構(gòu)建的事件通知機(jī)制,它將來自內(nèi)核的通知消息拼接到用戶空間打開的管道中。管道以特殊模式打開,其內(nèi)部緩沖區(qū)用于保存內(nèi)核生成的消息,然后由read(2)讀取這些消息。管道的所有者告訴內(nèi)核它希望通過該管道監(jiān)視哪些源,并且過濾器也可以放置在管道上,以便在某些源類型和子事件不感興趣時(shí)可以忽略它們。在此版本中,唯一的事件源是鍵/密鑰環(huán)的來源,例如鏈接和取消鏈接鍵以及更改其屬性,這些事件將由Gnome使用。
文檔:通用通知機(jī)制
推薦的LWN文章:內(nèi)核事件通知機(jī)制
1.4。私有procfs實(shí)例
Procfs過去與PID名稱空間相關(guān)聯(lián),因此所有新的procfs掛載都只是內(nèi)部鏡像的鏡像。任何更改,任何掛載選項(xiàng)更新,任何將來的新引入都將傳播到同一PID名稱空間中的所有其他procfs掛載。
此版本允許在同一PID名稱空間中具有多個(gè)帶有不同裝載選項(xiàng)的procfs裝載。這項(xiàng)工作的主要目的是在嵌入式系統(tǒng)上為應(yīng)用程序配備一名主管。它還添加了一些方便的掛載選項(xiàng),這些選項(xiàng)允許私有procfs掛載以僅顯示procfs中的可跟蹤進(jìn)程,從而允許在嵌入式Linux中支持輕量級沙箱。或允許隱藏非PID索引節(jié)點(diǎn)的安裝選項(xiàng)。
1.5。使用pidfds附加到名稱空間
此版本使使用pidfds附加到進(jìn)程的名稱空間成為可能,即可以將它們作為第一個(gè)參數(shù)傳遞給setns(2)syscall。傳遞pidfd時(shí),可以在第二個(gè)參數(shù)中指定多個(gè)名稱空間標(biāo)志,然后setns(2)將調(diào)用方一次附加到所有指定的名稱空間,也可以不附加任何一個(gè)。例如:setns(pidfd,CLONE_NEWPID | CLONE_NEWNS | CLONE_NEWNET);
這些功能支持各種用例,其中調(diào)用者將名稱空間設(shè)置為子集以保留特權(quán),執(zhí)行操作,然后重新附加名稱空間的另一個(gè)子集。除了減少附加到所有當(dāng)前支持的名稱空間所需的syscall數(shù)量之外,這還允許原子設(shè)置為一組名稱空間,這對于與運(yùn)行中的容器進(jìn)行交互的標(biāo)準(zhǔn)容器管理器很有用。
1.6。影子調(diào)用堆棧和分支目標(biāo)標(biāo)識可提高ARM64的安全性
該版本增加了對ARM64上Clang的影子調(diào)用堆棧的通用支持,該堆棧使用影子堆棧來保護(hù)函數(shù)返回控制流免受主堆棧上緩沖區(qū)溢出的影響。
用戶空間和內(nèi)核空間也都支持ARMv8.5-BTI。這允許分支目標(biāo)限制可以從中調(diào)用它們的分支類型,并另外防止分支到任意代碼。
推薦的LWN文章:一些近期的arm64加固補(bǔ)丁
1.7。支持內(nèi)聯(lián)加密硬件
此版本在塊層中支持嵌入式加密。在線加密硬件允許軟件指定加密上下文(加密密鑰,加密算法,數(shù)據(jù)單元編號,數(shù)據(jù)單元大小等)以及向存儲設(shè)備的數(shù)據(jù)傳輸請求,并且在線加密硬件將使用該上下文來加密/解密數(shù)據(jù)。嵌入式加密硬件是存儲設(shè)備的一部分,從概念上講,它位于系統(tǒng)內(nèi)存和存儲設(shè)備之間的數(shù)據(jù)路徑上。
Linux Kernel 5.8新版特性
內(nèi)核并發(fā)處理器Kernel Concurrency Sanitizer (KCSAN)
事件通知機(jī)制
塊設(shè)備隊(duì)列管理blk-mq 中引入內(nèi)聯(lián)加密
私有 procfs 掛載
ARM64 支持Shadow Call Stack 和 Branch Target Identification
BPF iterator機(jī)制
Linux Kernel 5.8軟件說明
4.9 內(nèi)核系列的大變,主要是 greybus 子系統(tǒng)的合并、4.8 內(nèi)核系列的延長、以及更多被壓抑的開發(fā)需求。
在 5.8 內(nèi)核系列中,我們沒有遇到那么多的問題,但開發(fā)量依然不少,比如一些與驅(qū)動程序有關(guān)的更改。
Torvalds 補(bǔ)充道:“在 5.8 合并窗口中,我們修改了內(nèi)核源存儲庫中大約 20% 的文件。盡管其中一些是腳本編寫的,但總的來說還是同樣的模式”。
總之,5.8具有只是看到了很多發(fā)展。Linux 5.8為Microsoft的Hyper-V虛擬化平臺,Arm芯片,Direct Rendering Manager(DRM)的系統(tǒng),網(wǎng)絡(luò),驅(qū)動程序,IBM Power PC,Microsoft 最近開放源代碼的exFAT文件系統(tǒng)等帶來了更新。
Linux Kernel 5.8更新日志
1. 優(yōu)化的腳步從未停止!
2. 更多小驚喜等你來發(fā)現(xiàn)~
華軍小編推薦:
Linux Kernel 5.8,口碑軟件,保證解決您的所有問題!小編力薦!本站還有類似軟件UKUI for openEuler、礦山系統(tǒng)、Wine、OpenBSD、CentOS For Linux,感興趣的可以下載哦!
您的評論需要經(jīng)過審核才能顯示
有用
有用
有用