最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

自己編譯 Linux 內(nèi)核,好像一點(diǎn)用都沒(méi)有?

2022-02-13 00:45 作者:Superbart  | 我要投稿

前言

貌似最近干搬運(yùn)工,播放量有點(diǎn)少。也許是因?yàn)槲夷莻€(gè)視頻口無(wú)遮攔吧:-P

創(chuàng)世紀(jì)樂(lè)隊(duì)的專輯介紹打破了我搬運(yùn)視頻播放量的記錄,而LGR視頻播放量也不盡如人意。

所以大家給點(diǎn)支持吧/可憐

對(duì)了,以后我還會(huì)翻譯視頻的,而我博客更新的東西也都會(huì)放到B站,但鑒于這編輯器功能太差(怎么打表格之類),我不會(huì)都搬運(yùn)過(guò)來(lái)。請(qǐng)大家去我的網(wǎng)站去看吧。

https://www.superbart.xyz/p/complie-linux-kernel-is-useless.html

目錄

  • 為什么我要自己編譯內(nèi)核~ Linux 內(nèi)核的多元化

  • 為啥自己編譯沒(méi)用~性能對(duì)比和優(yōu)劣勢(shì)對(duì)比

  • 如何加速內(nèi)核編譯~使用 modprobed-db 精簡(jiǎn)驅(qū)動(dòng)模塊

  • 我到底配置了啥~給大家看看我改過(guò)的內(nèi)核配置

  • 結(jié)尾

為什么我要自己編譯內(nèi)核~ Linux 內(nèi)核的多元化

很簡(jiǎn)單,下學(xué)期我有門課,叫“操作系統(tǒng)”,據(jù)說(shuō)需要編譯內(nèi)核。實(shí)際上我之前編譯過(guò),但是我沒(méi)有接觸過(guò)設(shè)置,這回想看看我能設(shè)置啥。
不過(guò)我最討厭學(xué)習(xí)了,所以接下來(lái)的才是真正原因233
我玩《黑山起源》,玩起來(lái)很卡。游戲設(shè)置當(dāng)然是調(diào)了,但根據(jù)我之前壓制視頻,我覺(jué)得是內(nèi)核沒(méi)有把我的核顯和 CPU 壓榨干凈(我的電腦是輕薄本)。之前看過(guò)很多帖子,說(shuō)用了特制內(nèi)核,跑起來(lái)能快一些。
這里,我提到了“特制內(nèi)核”。因?yàn)?Linux 內(nèi)核是開(kāi)源的,自然,有人魔改了很多版本。這里介紹四個(gè)版本:

  1. 長(zhǎng)期支持版(LTS),為了穩(wěn)定而優(yōu)化的版本,相當(dāng)于 Windows 的 LTSC 版。一般出現(xiàn)在 CentOS 和 Ubuntu 上面。

  2. linux-zen,為了桌面電腦而進(jìn)行過(guò)性能優(yōu)化。我日用這個(gè)版本。

  3. linux-hardened,為了系統(tǒng)安全而優(yōu)化的版本。

  4. linux-libre,為了代碼的絕對(duì)自由而砍掉了很多驅(qū)動(dòng)。

當(dāng)然,如果你是為了應(yīng)付操作系統(tǒng)實(shí)驗(yàn),我建議你還是使用原版吧。首先,網(wǎng)上教程豐富,其次,代碼簡(jiǎn)單易得。

為啥自己編譯沒(méi)用~性能對(duì)比

鑒于我編譯內(nèi)核,最主要的出發(fā)點(diǎn)是加速游戲運(yùn)行,自然我得提供這方面的數(shù)據(jù)了。
我的自制內(nèi)核,基于 linux-zen 內(nèi)核,精簡(jiǎn)了很多沒(méi)必要的驅(qū)動(dòng),以及在電腦管理模塊強(qiáng)制使用性能模式,并根據(jù)我的處理器型號(hào)(AMD Ryzen 4750U),使用了"Zen 2"性能優(yōu)化。
以下跑分均在我的電腦上進(jìn)行,型號(hào)是 Thinkpad T14 ,系統(tǒng)是最新的 Arch Linux ,在接電情況下進(jìn)行。

(跑分成績(jī)請(qǐng)見(jiàn)我博客,啥時(shí)候Bilibili支持表格啊)

由上可見(jiàn),雖然自編譯內(nèi)核相較原版內(nèi)核,有一定的性能提升,但是提升幅度不大。而我還發(fā)現(xiàn),使用強(qiáng)制性能模式會(huì)導(dǎo)致電腦風(fēng)扇長(zhǎng)時(shí)間運(yùn)行,CPU 過(guò)熱現(xiàn)象明顯。而在新內(nèi)核下運(yùn)行《黑山起源》,我覺(jué)得流暢度有些微提升,至少?zèng)]有之前那么卡了。但是我高度懷疑這是某種安慰劑效應(yīng)。
所以,自行編譯內(nèi)核并沒(méi)有達(dá)到我的需求。但這不意味著我白搞了一通,至少編譯內(nèi)核速度快了。 好了,進(jìn)入我這篇文章的寶藏部分捏。

如何加速內(nèi)核編譯~使用 modprobed-db 精簡(jiǎn)驅(qū)動(dòng)模塊

modprobed-db是一個(gè) bash 腳本,他能偵測(cè)你系統(tǒng)目前所使用的模塊,并記錄下來(lái)。在編譯內(nèi)核的時(shí)候,程序只會(huì)編譯我們使用過(guò)的驅(qū)動(dòng)模塊,加速編譯速度,減少內(nèi)核體積。

注意:使用這個(gè)軟件,可能會(huì)精簡(jiǎn)驅(qū)動(dòng)過(guò)頭,導(dǎo)致使用不便。請(qǐng)各位打算使用前,最好稍微了解一下內(nèi)核配置選項(xiàng)。本人僅在Arch Linux下運(yùn)行過(guò)這個(gè)軟件,如果你用的是Ubuntu等系統(tǒng),使用有問(wèn)題的話,請(qǐng)跟我說(shuō)一下。

過(guò)一下編譯內(nèi)核的一般步驟

  1. 電腦裝好編譯環(huán)境,一般包括 gcc,make 等。Arch Linux 是要安裝上?base-devel?軟件包組和?gcc?。

  2. 你需要拖下來(lái)最新穩(wěn)定版的內(nèi)核源代碼,然后進(jìn)入源代碼文件夾:

? 3. 使用以下任意一個(gè)命令,配置內(nèi)核參數(shù):

注意: 很多教程是用make config配置內(nèi)核,本人不推薦。界面太原始了,而且在Arch Wiki上面被標(biāo)記為"被nconfig取代"

? 4. 使用?make -j$n?命令編譯,這里?$n?代表你電腦/虛擬機(jī)的核心數(shù)。

? 5. 使用以下兩個(gè)命令來(lái)安裝內(nèi)核:

? 6. 重啟到新內(nèi)核,如果沒(méi)有的話,查看系統(tǒng)引導(dǎo)器設(shè)置。

使用 modprobed-db 精簡(jiǎn)內(nèi)核

  1. 獲取 modprobed-db 軟件。Arch Linux 用戶可以使用 AUR 直接安裝?modprobed-db?軟件包。如果不是的話,根據(jù)該軟件 Github 所介紹:

? ? ?2. 獲取目前你電腦正在掛載的模塊:

? ? ?3. 在編譯內(nèi)核的時(shí)候,配置內(nèi)核參數(shù)部分,執(zhí)行這個(gè)命令來(lái)關(guān)掉不需要的模塊編譯開(kāi)關(guān)。然后編譯安裝即可。

使用提示

如果你是實(shí)機(jī)運(yùn)行的話,務(wù)必把所有你要使用的設(shè)備都使用上。這里我翻譯一下?Arch Wiki 的原文:

  • 掛載上所有需要用到的文件系統(tǒng)

  • 接上所有需要用到的可移動(dòng)媒體,比如U盤,光驅(qū)等

  • 以上選項(xiàng)包括掛載 ISO 文件,這個(gè)涉及到 loop 模塊和 isofs 模塊

  • 使用電腦上的所有設(shè)備,例如網(wǎng)卡,輸入設(shè)備,電腦攝像頭,移動(dòng)設(shè)備等

  • 使用電腦上的所有應(yīng)用程序,有些程序是需要特定內(nèi)核模塊來(lái)運(yùn)行的,比如虛擬機(jī)

  • 在不同版本/特制的內(nèi)核上運(yùn)行 modprobed-db,也許會(huì)錄入一些其他內(nèi)核沒(méi)有的模塊

我當(dāng)時(shí)沒(méi)有插上我的光驅(qū),就運(yùn)行了這個(gè),結(jié)果新內(nèi)核沒(méi)法讀我的光驅(qū):-P

我到底配置了啥~給大家看看我改過(guò)的內(nèi)核配置

我上面說(shuō)過(guò),使用 modprobed-db 的前提是對(duì)內(nèi)核配置有一定了解,至少需要看到選項(xiàng)的時(shí)候,腦瓜不疼。(如果你是應(yīng)付操作系統(tǒng)實(shí)驗(yàn),我看我們學(xué)校的操作系統(tǒng)資料和小夢(mèng)哥哥的實(shí)驗(yàn)總結(jié)的步驟,我覺(jué)得你要是在虛擬機(jī)下直接搞,應(yīng)該沒(méi)有問(wèn)題)
所以,我來(lái)給大家看一下我的內(nèi)核配置吧,給大家看看我改了什么。這里我用?make nconfig?配置。
第一個(gè)選項(xiàng)是總體選項(xiàng),是包括了內(nèi)核壓縮,特定版本號(hào)之類的信息。請(qǐng)看xmgg的吧。

在默認(rèn)界面,配置程序給了我們一些選項(xiàng)。下面的功能鍵中,F(xiàn)2可以查看配置選項(xiàng)的詳細(xì)信息,F(xiàn)9可以搜索配置選項(xiàng)。
這個(gè)地方是配置處理器相關(guān)信息的。我這里把很多因特爾處理器的獨(dú)家特性給刪掉了,然后處理器優(yōu)化強(qiáng)制設(shè)置為Zen 2。其他方面的有任務(wù)調(diào)度之類,我沒(méi)有動(dòng),因?yàn)椴欢?/figcaption>
這個(gè)地方配置電源管理,我開(kāi)啟了休眠和睡眠,然后將CPU頻率調(diào)整設(shè)置為"性能"。
這個(gè)地方配置文件系統(tǒng)支持,是精簡(jiǎn)內(nèi)核的重中之重,也是一個(gè)坑。如果精簡(jiǎn)過(guò)頭,可能插個(gè)U盤讀不出來(lái)。尤其注意CD文件系統(tǒng)和DOS文件系統(tǒng)選項(xiàng)。
這個(gè)地方配置驅(qū)動(dòng)選項(xiàng),基本上編譯內(nèi)核,大部分時(shí)間都是在編譯驅(qū)動(dòng)。所以,這個(gè)地方我們可以大開(kāi)殺戒。不過(guò)千萬(wàn)不要要把你需要用到的驅(qū)動(dòng)給去了。

其他方面,諸如支持32位可執(zhí)行程序,內(nèi)核安全算法,調(diào)試選項(xiàng)等,我就不說(shuō)啦。

結(jié)尾

雖然自己編譯內(nèi)核,沒(méi)有使游戲性能有很大提升??
但是我由此得到了提升內(nèi)核編譯的一個(gè)途徑,這要將來(lái)節(jié)省時(shí)間卷過(guò)別人不就很方便了嗎??
實(shí)際上我還給內(nèi)核打上了中文補(bǔ)丁,不過(guò)網(wǎng)上很多教程,我就不在這說(shuō)了。給大家個(gè)鏈接看看吧。沒(méi)記錯(cuò)命令是?patch -Np1 < 補(bǔ)丁文件?。
我還使用了 Arch Linux 的包管理工具,讓整個(gè)過(guò)程更簡(jiǎn)單。具體看這個(gè)。

推薦閱讀

https://wiki.archlinux.org/title/Kernel/Traditional_compilation? Arch Wiki提供的編譯內(nèi)核指南(多系統(tǒng)適用哦)

https://moefactory.com/3041.moe 小夢(mèng)哥哥教大家操作系統(tǒng)實(shí)驗(yàn)啦

https://github.com/LevickCG/Happy-SE-in-XDU/tree/master/OS 我校軟工快樂(lè)學(xué)習(xí)(不是)

SuperBart 2022-02-11 Licensed under CC BY-SA 4.0

自己編譯 Linux 內(nèi)核,好像一點(diǎn)用都沒(méi)有?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
朝阳县| 定兴县| 涿州市| 泰顺县| 宁德市| 怀集县| 山东| 宁蒗| 新巴尔虎右旗| 浏阳市| 凤城市| 德昌县| 曲阜市| 华池县| 泗水县| 新乡市| 宽甸| 靖江市| 澄江县| 炎陵县| 静海县| 兴仁县| 谷城县| 乃东县| 安陆市| 万盛区| 高密市| 志丹县| 平乐县| 大悟县| 黔西| 喀喇沁旗| 贵港市| 三门县| 合肥市| 固镇县| 瑞安市| 宁城县| 隆回县| 玉龙| 东至县|