跳至主要内容

啟動器(Launcher)

一般來說,客戶常會希望縮短開機時間、自訂開機 Logo,或是從多種裝置(例如 SD、SATA…)啟動作業系統。本節將說明在 RISC 平台上進行這些操作的方法。

快速開機(Quick boot)

為了縮短開機時間,我們使用 Falcon 模式直接載入 Kernel。您應該同時對 Kernel 與 rootfs 進行最佳化,可依照以下步驟進行:

進入 Falcon 模式

  1. 透過 uboot 環境變數將 zImage 改為 uImage
   setenv image uImage        
fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}
fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}
setenv bootargs console=${console},${baudrate} ${smp} root=${mmcroot} ${bootargs}
mmc write ${loadaddr} 0x5D87FF 0x4000
mmc write 18000000 0x5D7FFF 0x800
  1. 設定啟動參數:
   spl export fdt ${loadaddr} - ${fdt_addr}
setenv boot_os 1 && saveenv && reset

Kernel 最佳化

  1. 在 uboot 環境變數中指定根檔案系統格式:rootfstype=ext4
  2. 在 Kernel 開機時減少除錯訊息:quiet
  3. 透過 menuconfig 移除不必要的功能與驅動程式。

rootfs 最佳化

  1. 減少 SD 卡分割區容量。

  2. 停用不必要的服務。

  3. 修改 /etc/inittab

    S: single-user mode
    id:S:initdefault:
    s1::sysinit:mount -t proc proc /proc
    s2::sysinit:mount -t sysfs sysfs /sys
    s3:S:respawn:/bin/ash < /dev/ttymxc0 > /dev/ttymxc0

多重開機(Multi Boot)

一般情況下,作業系統會從 eMMC 開機,但在某些特殊情況下,您可能需要從 SD 或 SATA 開機。本系統預設支援這些裝置開機,只要建立可開機的 SD 或 SATA 磁碟,插入裝置插槽即可從外部裝置啟動。步驟如下:

  1. 在主機電腦中準備 i.MX6 專案的映像檔,可參考以下連結: i.MX6 Yocto 使用者指南 - 建置說明

  2. 將 SD 或 SATA 裝置插入主機電腦,可參考以下連結: 建立可開機 SD 卡

  3. 從主機移除 SD 或 SATA,插入目標板卡,開機後確認啟動裝置。

系統在進入作業系統前會顯示一些圖片,稱為開機 Logo。有些客戶會希望自訂開機 Logo,您可以在 uboot 或 Kernel 中修改,請參考:

開機畫面(Splash Screen)

系統在啟動時會顯示預設的 Splash 畫面,如果您想移除它,有兩種方式:

  1. 透過 uboot 環境變數,在 bootargs 中加入 psplash=false

  2. 移除 psplash 服務:

    update-rc.d -f psplash.sh remove