linux啟動時間優化措施(4)
在我們進行linux系統優化時,可以從以下幾方面入手
1、如果有硬性的啟動時間要求,比如開機時間要求達到10s以內,那麼就必須要硬體上面支援。比如使用一般的
nand flash想達到那麼快的速度那是不可能,至少要20秒以上,所以這個時候,就必須要使用inand來實現。
2、當硬體確定支援啟動時間要求後,軟體方面可以由以下方面入手
1)bootloader的啟動,由於bootloader在啟動過程中會有判斷是否進入命令模式,這個時候,可以把這個倒數的時
間去掉(建議最終版本的時候才這麼做,因為方便使用fastboot進行韌體燒寫),或者減少
2)bootloader階段不要使用LCD,因為本身這個階段啟動的時間在幾百ms左右,所以沒必要使用LCD了
3)kernel階段,主要耗時點在於模組的載入,所以要找到每個模組載入的時間,那麼就可以確定是那些模組耗時了
如何找呢? 那就需要把各驅動模組載入時間列印出來咯。
在uboot的CONFIG_BOOTARGS增加printk.time=y initcall_debug
initcall_debug列印核心載入的各個模組資訊,通過這個選項可以看到核心載入各個模組的順序,核心載入了
哪些模組,從資訊中 可以看到, 如果您的核心系統沒有必要使用某個模組,儘量不要載入進去,這樣即可節約核心
佔用的儲存空間,也可以加快核心的啟動 過程。如果有模組是使用模擬spi或者i2c的,那麼可以考慮減少延時時間等。
另外,還可以新增lpj的值,如lpj=1949696,可以減少核心計算lpj的時間,lpj可以直接從串列埠列印資訊獲取。
1. 首先修改kernel的bootargs,在bootargs中新增以下內容:
- printk.time=y initcall_debug
我使用的bootargs修改後如下:
- setenv bootargs "root=/dev/mtdblock2 rootfstype=yaffs2 init=/init console=ttySAC2,115200printk.time=y initcall_debug"
這樣kernel在啟動時,將會列印出每個模組的啟動耗時:
printk.time=y
代表核心列印資訊含有時間戳,如何您的核心沒有配置:
- Kernel hacking
- --->Show
timing information on printks
可以在bootargs 增加printk.time=y
核心引數,列印時間資訊,如果配置瞭如上的選項,可以不增加printk.time=y引數。
printk.time=y 適用於不需要重新編譯核心即可檢視啟動時間資訊。
相關文章
- Linux啟動時間優化技巧Linux優化
- 如何進行 Linux 啟動時間優化Linux優化
- APP啟動時間優化APP優化
- iOS效能優化 - APP啟動時間優化iOS優化APP
- Linux啟動時間最佳化技巧Linux
- iOS深思篇 | 啟動時間的度量和優化iOS優化
- Linux 檢視程式啟動時間、執行時間Linux
- 基於APK加速啟動時間的Android系統資源優化APKAndroid優化
- Linux 獲取系統開機/啟動時間Linux
- Android 效能優化 ---- 啟動優化Android優化
- Linux效能優化實戰-倪朋飛-極客時間Linux優化
- iOS啟動優化iOS優化
- 優化 Xcode 編譯時間優化XCode編譯
- Linux如何檢視系統/伺服器的執行時間及啟動時間?Linux伺服器
- App啟動速度優化APP優化
- App啟動時間(翻譯)APP
- Android應用優化之冷啟動優化Android優化
- Android效能優化筆記(一)——啟動優化Android優化筆記
- Angular SSR 應用啟動時的一些保護措施Angular
- Linux伺服器系統詳細檢視程式啟動時間Linux伺服器
- App啟動頁面優化APP優化
- Linux系統自動更新時間Linux
- EntityFramework優化:第一次啟動優化Framework優化
- 面試Tip:Android優化之APP啟動優化面試Android優化APP
- [譯] 優化 Swift 的編譯時間優化Swift編譯
- 安卓啟動時間獲取安卓
- APP效能測試_啟動時間APP
- Android效能優化之啟動過程(冷啟動和熱啟動)Android優化
- Apollo啟動配置排查,超時時間的配置
- IdleHandler,頁面啟動優化神器優化
- 高德APP啟動耗時剖析與優化實踐(iOS篇)APP優化iOS
- 4 個最常見的自動化測試挑戰及應對措施
- Linux伺服器目錄空間不足解決措施Linux伺服器
- 移動spa商城優化記(二)--- 減少70%的打包等待時間優化
- Linux修改時間Linux
- Linux 修改時間Linux
- 優化 iOS 專案的構建時間(二)優化iOS
- GPU虛擬機器建立時間深度優化GPU虛擬機優化