聯繫我們

課程簡介

1. Coreboot簡介

  • 什麼是Coreboot?
  • BIOS、UEFI與Coreboot對比
  • Coreboot架構與設計原則
  • 開源固件的優勢與侷限性
  • 支持的平臺及硬件兼容性

2. Coreboot入門

  • 搭建開發環境
  • 安裝所需工具與依賴項
  • 探索Coreboot源代碼倉庫
  • 理解構建流程
  • 瞭解文檔與社區資源

3. 理解Coreboot源碼樹

  • 目錄結構與項目組織
  • 主要配置文件
  • 板級特定實現
  • 主板、芯片組、CPU及SoC支持情況
  • 使用Kconfig和menuconfig進行配置

4. 配置與構建Coreboot

  • 選擇目標平臺
  • 配置固件選項
  • Payload的選擇與配置
  • 構建Coreboot鏡像
  • 驗證構建輸出結果
  • 固件配置的最佳實踐

5. 使用QEMU測試Coreboot

  • 固件模擬簡介
  • 在QEMU中運行Coreboot
  • 驗證啓動流程
  • 調試啓動問題
  • 安全地測試配置變更

6. 固件組件與啓動過程

  • Coreboot初始化階段
  • ROM階段
  • RAM階段
  • 資源分配
  • Payload加載
  • 啓動流程概述
  • 理解CBFS(Coreboot文件系統)

7. Payload與引導加載程序

  • 什麼是Payload?
  • SeaBIOS
  • U-Boot
  • Tianocore/EDK II概述
  • 選擇合適的Payload
  • 使用Coreboot引導操作系統

8. Coreboot的實際應用

  • Coreboot與ChromeOS
  • 嵌入式系統應用場景
  • 服務器與工作站的用例
  • 安全優勢
  • 性能考量
  • 固件更新策略

9. 故障排除與調試

  • 閱讀Coreboot日誌
  • 串行控制檯調試
  • 常見構建錯誤
  • 硬件兼容性問題
  • 從失敗的固件刷寫中恢復
  • 有用的調試工具與技術

10. 動手實驗與總結

  • 構建Coreboot鏡像
  • 在QEMU中測試固件
  • 修改基本配置
  • 探索啓動日誌
  • 關鍵概念回顧
  • 問答環節
  • 後續步驟與額外學習資源

最低要求

  • 具備計算機固件知識

受衆

  • 開發人員
  • 計算機程序員
 7 小時

人數


每位參與者的報價

即將到來的課程

課程分類