linux开发板加快开机速度,readahead加速Linux开机速度
在一兩年前,Linux核心尚缺乏一個好的的硬碟預讀機制時,桌面系統的使用者若要加速開機的速度,通常得先解決開機的瓶頸問題。于是得依賴如readahead這樣的工具來預先載入想讀入的檔案,以便提高系統載入的速度。
readahead的基本原理是先預先載入開機過程可能使用的檔案到記憶體中(page cache)。如此開機程式執行時,便可節省讀入檔案的時間,進而加快開機速度。
當然,前提是你要有足夠的記憶體作快取。若你的系統只有小記憶體,不建議使用readahead.目前在Ubuntu, Debian GNU/Linux下使用的版本基于Erich Schubert 、Robin H. Johnson、Scott James Remnant,改自于Gentoo的版本。 Fedora Project則有另外一個概念相同,但由RedHat所開發的的不同實做。
以下所說明的是Ubuntu, Debian GNU/Linux版本。
為了使readahead可以正確的對開機所需的檔案快取,你必須教會readahead目前有多少檔案需要被預先載入,原則上只需要作一次。 Ubuntu在釋出官方版本時,
便會內建一組預先較調的檔案列表。但若每次更新核心或套件系統,特別是開機所需的程式,其實都應該做過一次“profile”的動作,以便readahead保持正確的載入檔案列表。
相較于Debian說明readahead的說明文件,在Ubuntu由于仍使用舊版,使用上則頗為謎樣,Ubuntu的README.Debian只提醒你readahead不能用在NFS上,忘了說明使用方法。在Ubuntu上,readahead會檢查/proc/cmdline中是否有profile參數,若有則進行profiling的程序。若使用Grub,則操作方式如下
開機見到“GRUB loading”提示時,按下“Esc”鍵
按下“e”鍵進行編輯(若有多核心,先選擇預設開機之核心行)
按下“向下” (↓)鍵到“kernel”行
再選“e”鍵進行編輯
你會進入參數編輯模式,移動到參數最后加入“profile”,”profile”字樣前記得填入空白。
按下“Enter”完成編輯
按下“b”鍵開機
第一次開機稍慢,但作過一次profile后,之后的開機速度應該會提高些。
在Debian下,只需用root下達以下指令后,重新開機即可
# touch /etc/readahead/profile-once
但在新版的Linux核心,有On-demand read-ahead等技術的加持,這樣的工具已經不特別需要,甚至反而會拖慢開機的時間。
試著在安裝了Ubuntu Eee的ASUS EEEPC 701上測試(核心為2.6.24-16-generic),以預設安裝軟體測試開機到桌面環境出現的uptime,每次都大約60s。進行profile則約使用80秒,profiled過readahead開機速度相同。
另外也在我的Thinkpad X60 1706-B69上測試,軟體是Debian sid,核心為2.6.26-1-686。系統裝了相當多雜七雜八的軟體,硬體裝了2G記憶體,硬碟則是8M Buffer, 5400RPM的FUJITSU MHV2100B。 profile大約使用152s,profiled readahead開機則約55s,關掉readahead則約53s。
總結
以上是生活随笔為你收集整理的linux开发板加快开机速度,readahead加速Linux开机速度的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux不能识别usb,求助:USB无
- 下一篇: 拉格朗日c语言实验报告,拉格朗日插值法C