編輯推薦
《ARM嵌入式Linux係統開發叢書·ARM嵌入式Linux應用開發入門》內容包括:
Linux開發工具
ARM處理器和ADS開發套件
嵌入式交叉編譯工具鏈
Linux編程基礎
BootLoader移植
IJnux內核移植
構建嵌入式根文件係統
嵌入式Linux驅動入門
嵌入式Linux的CUI編程基礎
內容簡介
《ARM嵌入式Linux係統開發叢書·ARM嵌入式Linux應用開發入門》是《ARM嵌入式Linux係統開發叢書》之一。《ARM嵌入式Linux係統開發叢書·ARM嵌入式Linux應用開發入門》針對嵌入式Linux發的特點,結閤工程開發實踐,使讀者能夠邊學邊用,從而快速地掌握相關的知識要點。全書共分為10章,首先介紹瞭嵌入式係統開發的基礎知識,包括Linux開發工具、ARM處理器和ADS開發套件等。然後重點講解瞭嵌入式交叉編譯工具鏈、Linux編程基礎、BootLoader移植、IJnux內核移植、構建嵌入式根文件係統和嵌入式Linux驅動入門,以及嵌入式Linux的CUI編程基礎。
《ARM嵌入式Linux係統開發叢書·ARM嵌入式Linux應用開發入門》可作為相關工程技術人員的嵌入式培訓教材及參考用書,也可作為高等院校自動化類、電子類、電氣類、計算機類等專業本科生、研究生學習嵌入式Linux開發的輔助教材。
目錄
前言
第1章 嵌入式係統概述及Linux開發工具
1.1 嵌入式係統簡介
1.1.1 什麼是嵌入式係統
1.1.2 嵌入式係統基本結構
1.1.3 嵌入式係統特點
1.2 嵌入式軟件的發展
1.3 嵌入式係統軟件開發流程
1.4 使用Linux開發工具
1.4.1 vi編輯器
1.4.2 GCC編譯器
1.4.3 gdb調試器
1.4.4 編寫makefile
1.5 小結
第2章 ARM硬件平颱及ADS開發工具
2.1 ARM處理器簡介
2.2 ARM9處理器
2.2.1 ARM9處理器的特點
2.2.2 ARM9處理器的工作模式
2.2.3 ARM處理器狀態
2.3 LJD-2410DVK-I開發闆
2.3.1 硬件資源
2.3.2 軟件資源
2.4 ADS開發工具
2.4.1 命令行開發工具
2.4.2 Code Warrior開發環境初步
2.4.3 AXD調試器
2.5 小結
第3章 構建嵌入式交叉編譯工具鏈
3.1 什麼是交叉編譯環境
3.2 構建交叉編譯工具鏈的方法
3.3 用Crosstool構建交叉編譯工具鏈
3.3.1 Crosstool簡介
3.3.2 下載軟件包
3.3.3 配置腳本文件
3.3.4 生成交叉編譯工具鏈
3.3.5 測試生成的編譯工具
3.4 分步構建嵌入式交叉編譯工具鏈
3.4.1 創建目錄
3.4.2 建立環境變量
3.4.3 編譯binutils
3.4.4 配置內核頭文件
3.4.5 編譯GCC(階段1)
3.4.6 安裝glibc
3.4.7 編譯GCC(階段2)
3.4.8 測試交叉編譯工具鏈
3.5 小結
第4章 嵌入式係統Linux編程基礎
4.1 文件I/O編程
4.1.1 文件描述符
4.1.2 open函數
4.1.3 close函數
4.1.4 lseek函數
4.1.5 read函數
4.1.6 writc函數
4.1.7 dup和dup2函數
4.1.8 fcntl函數
4.2 進程控製開發
4.2.1 fork和vfork函數
4.2.2 exit函數和_exit函數
4.2.3 wait和waitpid函數
4.2.4 競態條件
4.2.5 exec函數
4.3 進程間通信
4.3.1 管道pipe
4.3.2 有名管道FIFO
4.3.3 消息隊列
4.3.4 信號量(semaphore)
4.3.5 共享內存
4.4 Linux網絡編程
4.4.1 TCP/IP協議簡介
4.4.2 常用網絡編程函數
4.4.3 套接口使用實例
4.5 小結
第5章 u-boot代碼分析及移植
5.1 BootLoader簡介
5.1.1 BootLoader分類
5.1.2 BootLoader操作模式
5.1.3 BootLoader工作流程
5.2 u-boot代碼分析
5.2.1 u-boot主要目錄結構
5.2.2 u-boot代碼分析
5.3 移植u-boot
5.3.1 獲取源碼
5.3.2 創建交叉編譯環境
5.3.3 和移植相關的文件夾
5.3.4 移植步驟
5.3.5 修改相關文件
5.4 燒寫BootLoader到開發闆
5.5 小結
第6章 嵌入式UnHX內核移植
6.1 NAND Flash分區
6.2 配置內核
6.2.1 修改makefile文件
6.2.2 添加devfs配置
6.2.3 配置內核選項
6.3 內核編譯
6.3.1 編譯zlmage
6.3.2 編譯和安裝模塊
6.3.3 如何處理編譯齣錯
6.4 下載內核到開發闆
6.5 小結
第7章 構建根文件係統
7.1 根文件係統概述
7.1.1 什麼是根文件係統
7.1.2 根文件係統的基本目錄結構
7.2 定製根文件係統
7.2.1 創建空的目錄樹
7.2.2 移植BusyBox
7.2.3 選擇必要的動態共享庫
7.2.4 初始化腳本
7.2.5 模塊和設備文件
7.3 選擇閤適的Flash文件係統
7.3.1 嵌入式Linux文件係統
7.3.2 存儲設備NOR/NAND Flash
7.3.3 基於Flash的文件係統類型
7.4 建立Cramfs根文件係統映像
7.4.1 Cramfs工具包的使用
7.4.2 構建Cramfs根文件係統
7.5 小結
第8章 嵌入式Linux驅動開發入門
8.1 Linux驅動程序概述
8.2 Linux驅動設計基礎知識
8.2.1 內核模塊
8.2.2 設備驅動基本類型
8.2.3 主、次設備號
8.2.4 字符設備相關的數據結構
8.3 Helloworld模塊實例
8.3.1 源代碼及分析
8.3.2 編寫makefile
8.3.3 測試Helloworld模塊
8.4 字符設備驅動實例
8.4.1 源代碼及分析
8.4.2 測試代碼及分析
8.4.3 編譯和測試
8.5 小結
第9章 嵌入式Linux係統GUI編程入門
9.1 嵌入式Linux下GUI係統概述
9.1.1 傳統的Linux桌麵GUI係統
9.1.2 嵌入式Linux下的GUI係統
9.2 Qtopia Core編程基礎及移植
9.2.1 Qt/X11、Qt/Embedded和Qtopia Core
9.2.2 Qtopia Core的安裝
9.2.3 Frame Buffer和qvfb
9.2.4 編寫簡單的Qtopia Core程序
9.2.5 移植Qtopia Core到開發闆
9.2.6 Qt的特性簡介
9.3 MiniGt玨編程基礎及移植
9.3.1 MiniGUI的下載與授權問題
9.3.2 安裝MiniGUI
9.3.3 編寫及編譯運行MiniGUI程序
9.3.4 移植MiniGUI到開發闆
9.4 小結
參考文獻
精彩書摘
第1章 嵌入式係統概述及Linux開發工具
1.1 嵌入式係統簡介
本節主要針對嵌入式係統的定義、嵌入式係統的結構以及嵌入式係統的特點進行介紹。首先來介紹嵌入式係統的定義。
1.1.1 什麼是嵌入式係統
嵌入式係統被定義為:以應用為中心,以計算機技術為基礎,軟件硬件可裁剪、適應應用係統,對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機係統。嵌入式係統是為特定目的而構建的一套類計算機設備。該設備的主要特點是適應非常嚴格的特殊要求,如體積、功耗、可靠性等,而且嵌入式係統是以應用為中心的係統,應用決定瞭其軟件、硬件的組成,具有軟件代碼小、高度自動化、響應速度快等特點,特彆適閤於要求實時和多任務的體係。
嵌入式係統幾乎包括瞭生活中的所有電器設備,如掌上PDA、移動計算設備、電視機頂盒、手機、數字電視、多媒體、汽車、微波爐、數碼相機、智能傢居係統、電梯、空調、安全係統、自動售貨機、工業自動化儀錶與醫療儀器等。嵌入式設備在民用品和軍事裝備上得到瞭廣泛應用。
1.1.2 嵌入式係統基本結構
嵌入式係統作為一類比較特殊的計算機係統,白下嚮上包含有4個部分,如圖所示。
(1)硬件平颱是整個嵌入式操作係統和應用程序運行的硬件平颱,不同的應用通常有不同的硬件環境。硬件平颱的多樣性是嵌入式係統的一個主要特點。
(2)硬件抽象層,也叫闆級支持包,是一個介於硬件與軟件之間的中間層次。硬件抽象層通過特定的上層接口與操作係統進行交互,嚮下與硬件進行交互。
(3)嵌入式操作係統具有實時性、可靠性、強壯性、容錯性、可裁剪可擴展性、可移植性、基於強占式調度策略的微內核係統,是為瞭簡化不同平颱的程序開發、移植、功能集中、精煉地對有限的資源進行充分利用與管理的操作係統。
前言/序言
ARM嵌入式Linux應用開發入門 下載 mobi epub pdf txt 電子書