商品簡介
本書以Linux操作系統(內核為2.6版本)為開發平臺、GCC 4.0/GDB 6.3為開發調試環境,詳細介紹了Linux系統下編程環境及編程工具、文件管理(文件類型、ANSI以及POSIX標準下文件讀寫操作)、進程管理(創建、退出、執行、等待、屬性控制)、進程間通信(管道、消息隊列、共享內存)、進程間同步機制(信號量)、進程間異步機制(信號)、線程管理(創建、退出、取消等以及屬性控制)、線程間同步(互斥鎖、讀寫鎖、條件變量)以及網絡基本編程、高級應用等內容。
本書內容豐富、緊扣應用,適合從事Linux下C應用編程的人員閱讀,也適合從事嵌入式Linux開發的人員閱讀。
目次
第1章 Linux下C語言開發環境
1.1 Linux操作系統簡介
1.1.1 Linux操作系統簡介
1.1.2 GNU/Linux簡介
1.1.3 相關術語介紹
1.2 Linux開發初步
1.2.1 Linux下C程序標準
1.2.2 庫函數和系統調用
1.2.3 在線文檔介紹
1.2.4 獲取錯誤信息
1.3 部分常用工具簡介
1.3.1 tar打包器
1.3.2 Linux常用命令及工具
1.4 Linux下編碼風格
1.4.1 GNU編碼規范
1.4.2 Linux內核編碼規范
第2章 Linux下C語言開發工具
2.1 常用編輯工具
2.1.1 VIM編輯器
2.1.2 Emacs編輯器
2.1.3 Source Insight工具
2.2 GCC編譯工具
2.2.1 GCC/G++簡介
2.2.2 頭文件及預處理結果分析
2.3 Make工具與Makefile文件
2.3.1 Make工具簡介
2.3.2 Makefile常用規則
2.4 常用調試工具
2.4.1 GDB調試工具簡介
2.4.2 GDB演示示例
2.4.3 GDB調試器常用語法
2.4.4 strace
2.4.5 GCC程序開發過程實例
2.5 Linux庫文件使用與創建
2.5.1 Linux系統庫文件管理的基本策略
2.5.2 Linux下靜態庫的創建與使用
2.5.3 Linux下共享庫創建及使用
2.5.4 靜態庫與共享庫的區別
2.6 Autoconf/Automake自動化工具
2.6.1 Autoconf/Automake工具介紹
2.6.2 Autoconf/Automake工具使用示例
第3章 Linux進程存儲管理
3.1 Linux程序存儲結構與進程結構
3.1.1 Linux可執行文件結構
3.1.2 Linux進程結構
3.1.3 C變量及函數存儲類型
3.1.4 棧和堆的區別
3.1.5 示例:查看代碼中各數據存儲位置
3.1.6 常見內存錯誤示例分析
3.2 ANSI C內存管理API函數
3.2.1 內存分配的基本方式
3.2.2 示例:為程序申請動態內存空間
3.2.3 內存數據管理函數
3.3 常用Linux內存管理及調試工具
3.3.1 mcheck函數
3.3.2 Valgrind內存檢測工具
3.4 Linux進程環境及系統限制
3.4.1 進程與命令參數
3.4.2 進程與環境變量
3.4.3 Linux系統限制
3.4.4 Linux時間管理
第4章 ANSI C文件管理
第5章 POSIX文件及目錄管理
第6章 普通文件、連接文件及目錄文件屬性管理
第7章 Linux進程管理與程序開發
第8章 進程間通信——管道和信號
第9章 System V進程間通信
第10章 Linux多線程編程
第11章 線程間同步機制
第12章 Linux socket網絡編程
第13章 網絡編程工具介紹
第14章 網絡編程高級應用
第15章 構建網絡服務器