圖書信息
出版社: 機械工業出版社; 第1版 (2010年8月1日)
平裝: 423頁
正文語種: 簡體中文
開本: 16
ISBN: 7111307186, 9787111307181
條形碼: 9787111307181
尺寸: 25.6 x 18.2 x 1.6 cm
重量: 898 g
作者:陳立偉 王桐 楊蕾 等編著
內容簡介
《零基礎學嵌入式Linux C編程》分為4篇,共20章,主要內容包括:嵌入式系統基礎知識,Linux環境下C語言的開發,構建嵌入式Linux開發環境,Linux下c編程基礎,數據、運算符和表達式,數據的輸入和輸出,基本語句,數組,函式、編譯預處理,動態記憶體的堆與棧,指針、回調函式、結構體與共同體,Linux C語言嵌入彙編語言與移植性問題,嵌人式Linux環境下GUI開發技術,嵌入式Linux設備驅動開發,Linux檔案操作,進程控制,執行緒控制,嵌入式網路防禦體系設計實例,Linux 視頻採集與傳輸實例,ARM Linux 指紋識別實例等。
全書重點突出,層次分明,注重知識的系統性、針對性和先進性;注重理論聯繫實踐,培養工程套用能力。《零基礎學嵌入式Linux C編程》不僅介紹詳細的理論基礎知識,還提供大量的開發案例作參考,可讀性和實用性強。適合沒有或者缺乏嵌入式Linux 程式設計經驗的初學者作為嵌入式Linux 語言開發的自學教材,同時也適合已掌握C語言基礎編程技術,需要提高嵌入式C語言編程實踐能力,以及對嵌入式Linux編程感興趣的程式設計師閱讀。
《零基礎學嵌入式Linux C編程》的配套光碟給出了書中的實例檔案、開發過程的操作錄像檔案、常用元器件及晶片等豐富的拓展資源,極大地方便了讀者自學,動手實踐。
目錄
前言
第一篇 開發基礎
第1章 嵌入式系統基礎知識
1.1 嵌入式系統概述
1.1.1 嵌入式系統的定義
1.1.2 嵌入式系統的特點
1.1.3 嵌入式系統的發展歷史
1.1.4 嵌入式系統的套用領域
1.1.5 嵌入式系統與PC之間的區別
1.2 嵌入式系統的組成
1.3 典型的嵌入式作業系統
1.4 ARM處理器平台介紹
1.5 嵌入式系統開發
1.6 嵌入式Linux軟體設計
1.6.1 嵌入式Linux軟體需求分析
1.6.2 嵌入式Linux軟體架構設計
1.7 實踐拓展
1.8 思考與練習
第2章 Linux環境下C語言的開發
2.1 C語言簡單回顧
2.2 Linux下的C語言開發環境
2.3 嵌入式Linux語言的開發
2.4 Linux系統
2.4.1 Linux的安裝、啟動與關閉
2.4.2 Linux的基本使用
2.4.3 Linux的常用命令
2.5 嵌入式Linux中程式的運行原理
2.6 實踐拓展
2.7 思考與練習
第3章 構建嵌入式Linux開發環境
3.1 嵌入式系統開發環境的構建
3.2 移植U-Boot
3.2.1 BooLoader概述
3.2.2 U-Boot分析與移植
3.3 嵌入式Linux作業系統核心編譯
3.3.1 核心的配置
3.3.2 核心編譯的過程
3.4 核心的移植
3.5 實踐拓展
3.6 思考與練習
第二篇 基礎編程
第4章 Linux下C編程基礎
4.1 嵌入式Linux語言編程概述
4.2 嵌入式Linux編輯器
4.2.1 Vi的基本模式
4.2.2 Vi的基本操作
4.2.3 Vi的使用實例分析
4.3 嵌入式Linux編譯器GCC
4.3.1 GCC編譯流程分析
4.3.2 GCC編譯選項分析
4.3.3 GCC使用的庫函式
4.4 嵌入式Linux調試器GDB的使用
4.4.1 GDB使用實例
4.4.2 GDB的幫助命令
4.4.3 設定/刪除斷點
4.4.4 數據相關命令
4.4.5 調試運行環境相關命令
4.4.6 堆疊相關命令
4.5 make工程管理器
4.5.1 Makefile檔案的構成
4.5.2 Makefile變數
4.5.3 make的使用
4.6 Emacs綜合編輯器
4.6.1 Emacs的啟動與退出
4.6.2 Emacs的基本編輯
4.6.3 Emacs的C模式
4.6.4 Emacs的Shell模式
4.7 實踐拓展
4.8 思考與練習
第5章 數據、運算符和表達式
5.1 C程式的結構和語法規則
5.2 c程式語句概述
5.3 基本概念
5.3.1 標識符
5.3.2 關鍵字
5.3.3 常量
5.3.4 變數
5.4 基本數據類型
5.4.1 整型變數及其常量
5.4.2 浮點型變數及其常量
5.4.3 字元型變數及其常量
5.4.4 長整型、短整型和無符號整型
5.4.5 類型定義typecdef
5.5 算術運算符、賦值運算符及翼表達式
5.5.1 算術運算符和算術表達式
5.5.2 賦值運算符和賦值表達式
5.6 關係運算符、邏輯運算符及舅表達式
5.6.1 關係運算符和關係表達式
5.6.2 邏輯運算符和邏輯表達式
5.7 逗號運算符和逗號表達式
5.8 變數的初始化
5.9 不同類型數據之間的轉換
5.9.1 自動類型轉換
5.9.2 強制類型轉換
5.1 0實踐拓展
5.1 1思考與練習
第6章 數據的輸入和輸出
6.1 數據的輸出
6.1.1 字元輸出函式putchar()
6.1.2 格式輸出函式printf()
6.2 數據的輸入
6.2.1 字元輸入函式getchar()
6.2.2 格式輸入函式scanf()
6.3 實踐拓展
6.4 思考與練習
第7章 基本語句
7.1 結構化程式設計概述
7.2 語句和複合語句
7.3 條件語句
7.3.1 if語句
7.3.2 條件運算符
7.3.3 switch語句
7.4 循環控制
7.4.1 while循環語句
7.4.2 do-while循環語句
7.4.3 for循環語句
7.4.4 got0語句
7.4.5 break語句和continue語句
7.5 實踐拓展
7.6 思考與練習
第8章 數組
8.1 一維數組
8.1.1 一維數組的定義和引用
8.1.2 一維數組元素的初始化
8.2 二維數組
8.2.1 二維數組的定義和引用
8.2.2 二維數組元素的初始化
8.3 字元數組和字元串
8.3.1 字元數組
8.3.2 字元串和字元串結束標誌
8.3.3 字元串處理函式
8.4 實踐拓展
8.5 思考與練習
第9章 函式、編譯預處理
9.1 函式的概念
9.2 函式的定義和調用
9.2.1 函式的定義
9.2.2 函式的調用
9.3 函式的返回值
9.4 函式的參數及其傳遞方式
9.4.1 非數組作為函式參數
9.4.2 數組作為函式參數
9.5 函式的嵌套調用和遞歸調用
9.5.1 函式的嵌套調用
9.5.2 函式的遞歸調用
9.6 變數的作用域及其存儲類型
9.6.1 局部變數及其存儲類型
9.6.2 全局變數及其存儲類型
9.7 內部函式和外部函式
9.8 編譯預處理
9.8.1 宏定義
9.8.2 檔案包含處理
9.8.3 條件編譯
9.9 實踐拓展
9.10 思考與練習
第10章 動態記憶體的堆與棧
10.1 程式記憶體區域的使用
10.1.1 C語言程式的存儲區域
10.1.2 C語言中的動態記憶體
10.2 C程式中棧的套用
10.3 c程式中堆空間的使用
10.4 堆記憶體和棧記憶體使用的比較
10.5 實踐拓展
10.6 思考與練習
第11章 指針、回調函式,結構體與共同體
11.1 指針
11.1.1 指針的概念
11.1.2 變數的指針和指向變數的指針變數
11.1.3 數組的指針和指向數組的指針變數
11.1.4 字元串的指針和指向字元串的指針變數
11.1.5 函式的指針和指向函式的指針變數
11.1.6 指針數組和指向指針的指針
11.2 回調函式
11.2.1 回調函式的概念與作用
11.2.2 回調函式的語法
11.3 結構體
11.3.1 結構體類型變數
11.3.2 結構體數組
11.3.3 指向結構體類型數據的指針
11.3.4 用指針處理鍊表
11.4 共同體
11.5 實踐拓展
11.6 思考與練習
第12章 Linux C語言嵌入彙編語言與移植性問題
12.1 嵌入彙編語言
12.1.1 C和彙編的接口
12.1.2 內嵌彙編的語法
12.1.3 memory描述符
12.1.4 GCC對內嵌彙編語言的處理方式
12.2 嵌入式Linux可移植性問題
12.2.1 字長和數據類型:
12.2.2 數據對齊
12.2.3 位元組順序
12.3 實踐拓展
12.4 思考與練習
第三篇 高級編程
第13章 嵌入式Linux環境下GUI開發技術
13.1 嵌入式圖形用戶界面概述:
13.2 Linux下幾種主流的GUI
13.2.1 MiniGUI
13.2.2 Qt/Embedded
13.2.3 Micr0Windows
13.2.4 OpenGUI
13.2.5 GTK+
13.3 基於G1x+的圖形界面編程
13.3.1 GTK+程式的初始化與退出
13.3.2 GTK+預定義的函式和數據類型
13.3.3 回調函式
13.3.4 GTK+的事件處理
13.3.5 使用GTK+實現“Hell0World程式
13.3.6 編譯GTK+程式
13.3.7 在GTK+中排列控制項
13.3.8 常用控制項
13.4 實踐拓展
13.5 思考與練習
第14章 嵌入式Linux設備驅動開發
14.1 Linux設備驅動程式概述
14.2 Linux設備驅動程式與核心的關係
14.3 Linux設備驅動程式開發基礎
14.3.1 記憶體管理問題
14.3.2 中斷處理
14.3.3 I/O連線埠
14.3.4 DMA處理
14.3.5 時間流
14.4 字元設備驅動
14.4.1 字元設備驅動相關函式和結構體
14.4.2 字元設備驅動程式實例
……
第15章 Linux檔案操作
第16章 進程
第17章 執行緒控制
第四篇 綜合實例
第18章 嵌入式網路防禦體系設計
第19章 ARM Linux視頻採集與傳輸
第20章 ARM Linux指紋識別
附錄A 嵌入式Linux函式索引
附錄B Linux Shell常用命令索引
參考文獻