訂製自己的 Linux - Yocto 專案成為高效嵌入式大師

孫傑 著

  • 出版商: 深智
  • 出版日期: 2025-10-19
  • 定價: $880
  • 售價: 7.9$695
  • 語言: 繁體中文
  • 頁數: 496
  • ISBN: 6267757404
  • ISBN-13: 9786267757406
  • 相關分類: 嵌入式系統
  • 尚未上市,歡迎預購

  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-1
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-2
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-3
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-4
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-5
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-6
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-7
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-8
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-9
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-10
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-11
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-12
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-13
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-14
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-15
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-16
  • 訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-17
訂製自己的 Linux - Yocto 專案成為高效嵌入式大師-preview-1

買這商品的人也買了...

相關主題

商品描述

Yocto 專案核心架構與中繼資料模型

BitBake 建構流程與配方語法設計

Poky 參考發行版與分層建構系統

BSP 結構與硬體抽象層客製化

☆自訂機器配置與影像格式產出流程

SDK 建構與交叉編譯工具鏈生成

QEMU 模擬器建構與虛擬測試驗證

☆樹莓派映像生成與驅動整合實務

i.MX 8M Plus 平臺開發與量產應用

Linux 核心與裝置樹裁剪與整合

☆系統啟動流程分析與 U-Boot 調校

☆軟體堆疊版本管理與 Patch 維護策略

☆整合 AI 加速模組與硬體協同設計

Yocto 環境除錯與建構效能優化

 

本書共分三部分,共九章,系統介紹 Yocto 專案的核心知識與實戰應用。第一部分(第1至第3章)說明 Yocto 專案的基本架構與工具鏈,介紹中繼資料結構、BitBake 建構引擎、配方語法與 Poky 分層機制,並說明常見映像類型與建構流程。第二部分(第4至第6章)以 Raspberry Pi 為範例,說明 BSP 的建立、自訂映像建構、軟體堆疊配置與 SDK 生成,協助讀者實作從原始碼到可開機系統的完整流程。第三部分(第7至第9章)以 NXP i.MX 8M Plus 平臺為案例,進一步介紹工業級開發場景中常見的核心裁剪、裝置樹設定、驅動整合、啟動管理與元件最佳化,並涵蓋 AI 模組整合與部署流程。全書以實作為導向,從模擬器、開發板到商用晶片,建構出一條從入門到應用的 Yocto 學習路徑,適合需要掌握系統建構、驅動整合與平台客製化的嵌入式開發者。

作者簡介

孫傑

世界500強資深嵌入式軟體工程師,專註於BSP與嵌入式系統架構,熱衷技術探索與工程實踐

深耕嵌入式領域十餘年,成功主導多個覆雜嵌入式項目,涵蓋系統架構設計、BSP開發與產品落地

Yocto項目技術專家,致力於推動該技術在中國的技術實踐與生態發展

愛爾蘭國立大學碩士,具備豐富的海外嵌入式開發經驗,熟悉國際主流開發體系

個人微信jerrydev提供技術支持,營運的「嵌入式Jerry」技術平臺(B站、CSDN和公眾號)深受粉絲喜愛

目錄大綱

1 Yocto 專案

1.1 嵌入式Linux 系統

1.1.1 什麼是嵌入式系統

1.1.2 嵌入式Linux 系統簡介

1.1.3 嵌入式Linux 系統的應用領域

1.1.4 嵌入式Linux 系統的建構工具

1.1.5 常見的嵌入式Linux 系統發行版本

1.2 什麼是Yocto 專案

1.2.1 Yocto 專案的起源

1.2.2 為什麼選擇Yocto 專案

1.2.3 社區與資源

1.3 Yocto 專案概覽

1.3.1 版本管理

1.3.2 開發與生產工具

1.3.3 常用術語

1.4 特性與挑戰

1.4.1 特性與優勢

1.4.2 面臨的挑戰

1.4.3 經驗總結

 

2 Linux 系統架構

2.1 GNU/Linux

2.1.1 GNU/Linux 概述

2.1.2 Linux 系統架構概述

2.2 Bootloader

2.2.1 Bootloader 啟動流程

2.2.2 常用的Bootloader

2.2.3 U-Boot 簡介

2.2.4 GRUB 簡介

2.3 核心空間

2.3.1 Linux 核心

2.3.2 控制硬體資源

2.3.3 服務使用者空間

2.4 使用者空間

2.4.1 root 檔案系統

2.4.2 標準C 函式庫

2.4.3 系統共用函式庫

2.4.4 init 處理程序

2.4.5 視窗管理系統

 

3 Yocto 專案基礎架構

3.1 快速建構指南

3.1.1 架設建構主機環境

3.1.2 下載Poky 原始程式碼

3.1.3 初始化OpenEmbedded 建構環境

3.1.4 建構鏡像

3.1.5 QEMU 啟動鏡像

3.2 Yocto 專案架構

3.2.1 層模型

3.2.2 核心組件

3.2.3 建構主機

3.3 OpenEmbedded 建構系統

3.3.1 BitBake 建構引擎

3.3.2 OpenEmbedded-Core

3.3.3 建構系統工作流

3.4 OpenEmbedded 建構環境

3.4.1 建構環境配置指令稿

3.4.2 建構目錄結構

3.4.3 建構輸出結構

 

4 中繼資料架構

4.1 中繼資料

4.1.1 中繼資料的概念

4.1.2 中繼資料檔案

4.1.3 中繼資料語法

4.2 配方

4.2.1 配方及追加配方範例

4.2.2 配方命名與版本控制

4.2.3 配方語法

4.2.4 建立配方

4.2.5 配方工作流

4.3

4.3.1 層的概念

4.3.2 層的結構與功能

4.3.3 層的分類

4.3.4 bitbake-layers 層管理工具

 

5 BitBake 建構引擎

5.1 BitBake 的起源與發展

5.2 BitBake 的原始程式碼

5.2.1 BitBake 原始程式碼的獲取

5.2.2 BitBake 原始程式碼結構及核心模組

5.3 BitBake 命令

5.3.1 BitBake 的命令語法

5.3.2 執行預設任務

5.3.3 執行指定任務

5.3.4 強制執行任務

5.4 BitBake 偵錯與最佳化

5.4.1 清除共用狀態快取

5.4.2 查看任務列表

5.4.3 查看變數值

5.4.4 查看相依關係

5.4.5 查看偵錯資訊

5.5 BitBake 執行流程

5.5.1 基礎配置解析

5.5.2 配方解析與管理

5.5.3 任務相依與排程

5.5.4 任務執行與日誌記錄

 

6 Poky 參考發行版本

6.1 Poky

6.1.1 發行版本與特性

6.1.2 原始程式碼介面與核心檔案

6.2 鏡像配方

6.2.1 鏡像配方詳解

6.2.2 鏡像配方語法

6.2.3 鏡像類別

6.2.4 套件組配方

6.3 機器設定檔

6.3.1 Poky 中的機器設定檔

6.3.2 機器特性與實現

6.3.3 選擇目標裝置

6.4 發行版本設定檔

6.4.1 指定發行版本設定檔

6.4.2 Poky 中的發行版本設定檔

6.4.3 發行版本特性與實現

6.5 QEMU

6.5.1 QEMU 簡介

6.5.2 設置QEMU 的執行環境

6.5.3 runqemu 指令稿

 

7 訂製鏡像配方與核心配方

7.1 訂製鏡像配方

7.1.1 架設建構環境

7.1.2 建立自訂層

7.1.3 訂製鏡像配方的步驟

7.1.4 QEMU 測試鏡像

7.2 訂製應用程式

7.2.1 HelloWorld 應用程式

7.2.2 Yocto 專案中的HelloWorld 程式

7.2.3 使用QEMU 測試HelloWorld 程式

7.3 訂製核心配方

7.3.1 Yocto 專案的核心倉庫

7.3.2  核心中繼資料

7.3.3 核心配方

7.3.4 核心配置

7.3.5 訂製核心配方的步驟

7.4 訂製核心樹外模組

7.4.1 樹外模組的基本原理

7.4.2 樹外模組的安裝與載入

7.4.3 訂製customer.ko 樹外模組

 

8 樹莓派啟動訂製鏡像

8.1 樹莓派簡介

8.1.1 樹莓派4B

8.1.2 樹莓派與Yocto 專案

8.2 建構和部署樹莓派鏡像

8.2.1 建構樹莓派測試鏡像

8.2.2 將鏡像部署到SD

8.2.3 啟動樹莓派4B

8.3 meta-raspberrypi

8.3.1 meta-raspberrypi 層概述

8.3.2 層配置

8.3.3 硬體規格

8.3.4 核心配置

8.3.5 圖形系統組態

8.3.6 硬體測試鏡像配方

8.4 使用Wic 工具建立分區鏡像

8.4.1 Wic 工具介紹

8.4.2 Kickstart 檔案

8.4.3 Wic 外掛程式

8.4.4 Wic 工具的操作模式

8.4.5 樹莓派的鏡像分區

8.4.6 dd bmaptool 部署鏡像

 

9 實戰訂製樹莓派BSP

9.1 建立與配置BSP

9.1.1 訂製BSP 層的方法

9.1.2 建立meta-raspberrypi-custom

9.1.3 訂製機器設定檔

9.2 訂製核心配方

9.2.1 核心配置

9.2.2 指定核心裝置樹檔案

9.2.3 增加核心更新

9.3 訂製硬體啟動配置配方

9.3.1 指定核心裝置樹檔案

9.3.2 控制LED 硬體行為

9.4 訂製測試鏡像配方

9.4.1 建立基礎測試鏡像配方

9.4.2 增加SSH 服務

9.4.3 X11 圖形顯示協定

9.4.4 啟用Systemd 系統管理器

9.5 訂製分區鏡像

9.5.1 訂製Kickstart 檔案

9.5.2 重構並驗證鏡像

9.5.3 meta-raspberrypi-custom 層的最終結構

 

10 軟體開發套件

10.1 軟體開發套件概述

10.1.1 SDK 簡介

10.1.2 獲取和使用SDK 安裝套件

10.1.3 SDK 萬用元件

10.2 可擴充SDK

10.2.1 可擴充SDK 結構

10.2.2 訂製可擴充SDK 安裝套件

10.2.3 devtool 命令列工具

10.3 標準SDK 建構應用程式

10.3.1 訂製應用程式

10.3.2 建構應用程式

10.3.3 部署與測試

10.4 可擴充SDK 建構與部署

10.4.1 建立配方

10.4.2 建構與部署

10.4.3 測試與整合

 

11 進階專案實戰

11.1 架設專案開發環境

11.1.1 硬體開發環境

11.1.2 軟體開發環境

11.2 初始化建構環境

11.2.1 建構環境配置指令稿

11.2.2 初始化建構環境

11.3 中繼資料結構

11.3.1 中繼資料層結構

11.3.2 鏡像配方

11.3.3 核心

11.3.4 Bootloader

11.4 訂製層與鏡像

11.4.1 建立meta-imx-custom

11.4.2 建立追加配方檔案

11.4.3 整合Chromium 瀏覽器

11.4.4 增加Systemd 服務

11.5 建構鏡像與部署驗證

11.5.1 建構目標鏡像

11.5.2 架設部署環境

11.5.3 啟動硬體與驗證

 

附錄A Yocto 專案社區與支援通路

郵寄清單

IRC 頻道

Matrix 頻道