Linux · Linux kernel · SoC

Linux Fast boot – 快速開機調校

對我來說, Linux 快速開機是 簡單 困難 的技術.

簡單google 搜尋 Linux fast boot 就能找到許多有用而且詳細的資訊以及相關技術, 其中不乏包括 ELC or ELCE 的影片及相關投影片.

困難 – Fast boot 主要的核心組成其實是 “系統調校“, 所以說一樣的調校方法在不同平台上, 就會有不同結果.
Fast boot 要調校的好, 個人淺見為需具備下列知識:

  1. 熟稔平台上所使用的 CPU

    • CPU 是單核 or 多核
    • CPU 是什麼架構
    • 若多核能做什麼運用
  2. 平台相關週邊

    • 預設使用哪些週邊, 選用哪些週邊
    • 週邊中的主動元件是否能協助加速開機流程
  3. Linux Kernel

    • 哪些選項不需要開啟
    • 哪些選項適合優化平台 CPU 以及週邊元件
    • 哪些選項 built-in 哪些當driver module
  4. Root filesystem

    • 需瞭解並優化該 root filesystem (不同 distribution 都會有預設行為, 但不一定會用到)
    • 優化 Init system (看是用 sysvinit, upstart or systemd)
  5. User space programming

    • 開機即執行的程式需小心撰寫
      • 數量越少越好, 儘量用 bottom half 的手法
      • 儘量避免用 shell or 直譯式相關的程式語言 (bash, awk, sed, etc…)
      • 不要有太多的 dependence

 

相關心得可參考下列投影片

發表迴響