< >
雖然 Linux 嵌入式系統幾乎無所不在,從手機到汽車的 ABS 系統以及淨水廠都可以發現它的蹤跡,但是令人驚訝的是,建立、安裝和測試 Linux 核心以及相關工具的資訊來源卻少的可憐。《建構嵌入式 Linux 系統》是一本深入探討如何建構這些系統的指南。閱讀本書你不僅可以獲得基本的概念,你還可以學到如何設定、規劃以及使用 40 種以上不同的開放原碼和自由軟體套件。本書第二版的內容針對 Linux 核心的最新版本做過更新,並且加入之前未介紹過的程序以便協助你:建立你自己的 GNU development toolchain(開發工具鏈) 為你的目標系統選用、設定、建構以及安裝專屬的核心 為你的目標系統建立完整的根檔案系統 設置、操作以及使用固態儲存裝置 為目你的標系統安裝及設定 bootloader(開機載入程式) 交叉編譯許多的公用程式與套件 可用以進行嵌入式系統除錯的眾多工具和技術 使用 uClibc、BusyBox、U-Boot、OpenSSH、thttpd、tftp、strace 以及 gdb 等套件 以 Xenomai 或 RT kernel patch 利用即時的功能 閱讀本書第二版你將能夠學到如何建構作業系統元件,以及簡化全面掌控嵌入式系統的艱鉅任務。『〔本書〕並不會假定你手邊有哪些工具,或是限定你的計劃的範圍。本書只會要你透過 Internet 連線下載必要的套件、瀏覽特定的線上文件,以及與其他開發者一起分享經驗。除了提供最大的自由度,以及讓你掌控自己的設計之外,這麼做最接近帶頭在嵌入式系統中使用 Linux 的先驅者們所採行的方式。』— 摘錄自〈序〉
序第一章 入門指引1.1 定義1.2 嵌入式 Linux 系統的實際應用1.3 設計與實作的方法 第二章 基本概念2.1 主機的類型2.2 主機/目標開發規劃類型2.3 主機/目標除錯規劃類型2.4 嵌入式 Linux 系統的一般架構2.5 系統啟動過程2.6 開機組態類型 2.7 系統的記憶體配置 第三章 所支援的硬體3.1 處理器架構3.2 匯流排與介面3.3 I/O3.4 儲存裝置3.5 通用網路3.6 工業級網路 3.7 系統監控 第四章 開發工具4.1 實際的專案工作區4.2 GNU 跨平台開發工具鏈4.3 C 程式庫的替代品4.4 Java4.5 Perl4.6 Python4.7 其他程式語言4.8 Eclipse:整合開發環境 4.9 終端機模擬程式 第五章 核心方面的考量5.1 選擇核心5.2 設定核心組態5.3 編譯核心5.4 安裝核心 5.5 實地測試 第六章 根檔案系統的內容6.1 根檔案系統的基本結構6.2 程式庫6.3 核心模組6.4 核心映像6.5 裝置檔6.6 主要的系統應用程式6.7 自製應用程式6.8 系統初始化 第七章 儲存裝置的操作7.1 MTD 所支援的裝置7.2 磁碟裝置7.3 置換與否 第八章 根檔案系統的規劃8.1 嵌入式裝置的檔案系統類型8.2 使用經 NFS 掛載的根檔案系統將檔案系統映像寫入 flash 裝置8.3 擺在 RAM disk 上的磁碟檔案系統8.4 Rootfs 與 Initramfs8.5 選擇檔案系統的類型與佈局8.6 處理軟體升級的問題 第九章 設置 bootloader9.1 嵌入式 bootloader9.2 網路開機的伺服器規劃9.3 使用 U-Boot 第十章 設置網路服務10.1 網路設定值10.2 Busybox10.3 經由 DHCP 動態設定組態10.4 Internet Super-Server10.5 使用 SNMP 進行遠端管理10.6 使用 Telnet 進行網路登入10.7 使用 SSH 進行安全通訊10.8 透過 HTTP 提供網頁內容10.9 資源的提供 第十一章 除錯工具11.1 Eclipse11.2 以 gdb 進行應用程式除錯11.3 追蹤11.4 效能分析11.5 記憶體除錯11.6 關於硬體工具 第十二章 即時 Linux 入門12.1 什麼是即時處理?12.2 你的 Linux 應該支援即時嗎?12.3 共同的即時核心要求12.4 即時計算技術的典型使用者12.5 Linux 通往即時之路 第十三章 Xenomai 即時系統13.1 將傳統 RTOS 的應用程式移植到 Linux13.2 Xenomai 的架構13.3 Xenomai 的運作原理13.4 即時驅動程式模型13.5 結語 第十四章 RT Patch14.1 將中斷轉換成執行緒14.2 優先權繼承14.3 以 RT Patch 設定核心組態14.4 高解析度計時器14.5 latency tracer14.6 結語 索引
Linux 系統程式設計 Linux 核心詳解 第三版 Linux 驅動程式 第三版
購買紙本書