注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)Linux高級(jí)程序設(shè)計(jì)(第2版)

Linux高級(jí)程序設(shè)計(jì)(第2版)

Linux高級(jí)程序設(shè)計(jì)(第2版)

定 價(jià):¥49.00

作 者: 楊宗德,鄧玉春 編著
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: LINUX

ISBN: 9787115213907 出版時(shí)間: 2009-10-01 包裝: 平裝
開本: 16開 頁(yè)數(shù): 432 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  《Linux高級(jí)程序設(shè)計(jì)(第2版)》以Linux操作系統(tǒng)(內(nèi)核為2.6版本)為開發(fā)平臺(tái)、GCC 4.0/GDB 6.3為開發(fā)調(diào)試環(huán)境,詳細(xì)介紹了Linux系統(tǒng)下編程環(huán)境及編程工具、文件管理(文件類型、ANSI以及POSIX標(biāo)準(zhǔn)下文件讀寫操作)、進(jìn)程管理(創(chuàng)建、退出、執(zhí)行、等待、屬性控制)、進(jìn)程間通信(管道、消息隊(duì)列、共享內(nèi)存)、進(jìn)程間同步機(jī)制(信號(hào)量)、進(jìn)程間異步機(jī)制(信號(hào))、線程管理(創(chuàng)建、退出、取消等以及屬性控制)、線程間同步(互斥鎖、讀寫鎖、條件變量)以及網(wǎng)絡(luò)基本編程、高級(jí)應(yīng)用等內(nèi)容?!禠inux高級(jí)程序設(shè)計(jì)(第2版)》內(nèi)容豐富、緊扣應(yīng)用,適合從事Linux下C應(yīng)用編程的人員閱讀,也適合從事嵌入式Linux開發(fā)的人員閱讀。

作者簡(jiǎn)介

暫缺《Linux高級(jí)程序設(shè)計(jì)(第2版)》作者簡(jiǎn)介

圖書目錄

第1章 Linux下C語(yǔ)言開發(fā)環(huán)境1
1.1 Linux操作系統(tǒng)簡(jiǎn)介2
1.1.1 Linux操作系統(tǒng)簡(jiǎn)介2
1.1.2 GNU/Linux簡(jiǎn)介3
1.1.3 相關(guān)術(shù)語(yǔ)介紹3
1.2 Linux開發(fā)初步5
1.2.1 Linux下C程序標(biāo)準(zhǔn)5
1.2.2 庫(kù)函數(shù)和系統(tǒng)調(diào)用7
1.2.3 在線文檔介紹9
1.2.4 獲取錯(cuò)誤信息10
1.3 部分常用工具簡(jiǎn)介11
1.3.1 tar打包器11
1.3.2 Linux常用命令及工具12
1.4 Linux下編碼風(fēng)格 16
1.4.1 GNU編碼規(guī)范 16
1.4.2 Linux內(nèi)核編碼規(guī)范 17
第2章 Linux下C語(yǔ)言開發(fā)工具 20
2.1 常用編輯工具22
2.1.1 VIM編輯器22
2.1.2 Emacs編輯器 24
2.1.3 SourceInsight工具 25
2.2 GCC編譯工具 29
2.2.1 GCC/G++簡(jiǎn)介 30
2.2.2 頭文件及預(yù)處理結(jié)果分析 34
2.3 Make工具與Makefile文件 36
2.3.1 Make工具簡(jiǎn)介 36
2.3.2 Makefile常用規(guī)則 39
2.4 常用調(diào)試工具 41
2.4.1 GDB調(diào)試工具簡(jiǎn)介 41
2.4.2 GDB演示示例 42
2.4.3 GDB調(diào)試器常用語(yǔ)法 43
2.4.4 strace 45
2.4.5 GCC程序開發(fā)過(guò)程實(shí)例 46
2.5 Linux庫(kù)文件使用與創(chuàng)建 49
2.5.1 Linux系統(tǒng)庫(kù)文件管理的基本策略 49
2.5.2 Linux下靜態(tài)庫(kù)的創(chuàng)建與使用 50
2.5.3 Linux下共享庫(kù)創(chuàng)建及使用 52
2.5.4 靜態(tài)庫(kù)與共享庫(kù)的區(qū)別 54
2.6 Autoconf/Automake自動(dòng)化工具 54
2.6.1 Autoconf/Automake工具介紹 54
2.6.2 Autoconf/Automake工具使用示例 55
第3章 Linux進(jìn)程存儲(chǔ)管理 61
3.1 Linux程序存儲(chǔ)結(jié)構(gòu)與進(jìn)程結(jié)構(gòu) 62
3.1.1 Linux可執(zhí)行文件結(jié)構(gòu) 62
3.1.2 Linux進(jìn)程結(jié)構(gòu) 63
3.1.3 C變量及函數(shù)存儲(chǔ)類型 64
3.1.4 棧和堆的區(qū)別 69
3.1.5 示例:查看代碼中各數(shù)據(jù)存儲(chǔ)位置 70
3.1.6 常見內(nèi)存錯(cuò)誤示例分析 73
3.2 ANSIC內(nèi)存管理API函數(shù) 74
3.2.1 內(nèi)存分配的基本方式 74
3.2.2 示例:為程序申請(qǐng)動(dòng)態(tài)內(nèi)存空間 74
3.2.3 內(nèi)存數(shù)據(jù)管理函數(shù) 78
3.3 常用Linux內(nèi)存管理及調(diào)試工具 80
3.3.1 mcheck函數(shù) 80
3.3.2 Valgrind內(nèi)存檢測(cè)工具 82
3.4 Linux進(jìn)程環(huán)境及系統(tǒng)限制 85
3.4.1 進(jìn)程與命令參數(shù) 85
3.4.2 進(jìn)程與環(huán)境變量 90
3.4.3 Linux系統(tǒng)限制 91
3.4.4 Linux時(shí)間管理 93
第4章 ANSIC文件管理 96
4.1 文件及文件流 98
4.1.1 文件與流的基本概念 98
4.1.2 標(biāo)準(zhǔn)流及流主要功能 99
4.1.3 文件流指針 100
4.1.4 緩沖區(qū)類型 101
4.1.5 指定流緩沖區(qū) 103
4.2 ANSIC標(biāo)準(zhǔn)文件I/O操作 105
4.2.1 打開關(guān)閉文件 105
4.2.2 讀寫文件流 107
4.2.3 文件流定位 111
4.2.4 實(shí)現(xiàn)文件拷貝操作示例 113
4.3 格式化輸入/輸出函數(shù)操作 114
4.3.1 printf/scanf函數(shù)分析 114
4.3.2 fprintf/fscanf函數(shù)分析 115
4.3.3 sprintf函數(shù)分析 116
4.3.4 sscanf函數(shù)分析 118
第5章 POSIX文件及目錄管理 121
5.1 文件描述符與內(nèi)核文件表項(xiàng) 122
5.1.1 文件流與文件描述符的區(qū)別 122
5.1.2 文件表結(jié)構(gòu)圖 123
5.1.3 文件描述符與文件流的轉(zhuǎn)換操作 123
5.2 POSIX標(biāo)準(zhǔn)下文件IO管理 125
5.2.1 創(chuàng)建/打開/關(guān)閉文件126
5.2.2 文件控制fcntl 129
5.2.3 讀/寫文件內(nèi)容 131
5.2.4 使用POSIXIO實(shí)現(xiàn)文件拷貝 133
5.2.5 文件定位 134
5.2.6 同步內(nèi)核緩沖區(qū) 135
5.2.7 映射文件到內(nèi)存 136
5.3 目錄文件基本操作 137
5.3.1 打開/關(guān)閉目錄文件 138
5.3.2 讀寫目錄內(nèi)容 138
5.3.3 定位目錄位置 140
5.3.4 添加刪除目錄 140
5.3.5 當(dāng)前工作路徑操作 141
第6章 普通文件.連接文件及目錄文件屬性管理 143
6.1 Linux文件系統(tǒng)管理 144
6.1.1 Linux下VFS虛擬文件系統(tǒng) 144
6.1.2 ext2文件系統(tǒng)結(jié)構(gòu) 145
6.1.3 目錄文件及常規(guī)文件存儲(chǔ)方法147
6.2 Linux系統(tǒng)下文件類型及屬性147
6.2.1 Linux文件類型及權(quán)限147
6.2.2 Linux文件類型148
6.2.3 文件權(quán)限修飾位 151
6.2.4 文件訪問權(quán)限位 152
6.3 Linux文件屬性管理 153
6.3.1 讀取文件屬性 153
6.3.2 修改文件權(quán)限操作 156
6.3.3 修改系統(tǒng)umask值 157
6.3.4 修改文件的擁有者及組 158
6.3.5 用戶名/組名與UID/GID的轉(zhuǎn)換 159
6.3.6 創(chuàng)建/刪除硬連接 160
6.3.7 符號(hào)連接文件特殊操作 161
6.3.8 文件時(shí)間屬性修改與時(shí)間處理 162
6.4 應(yīng)用示例:實(shí)現(xiàn)1s-1基本操作 164
6.4.1 需求及知識(shí)點(diǎn)涵蓋 164
6.4.2 流程及源代碼實(shí)現(xiàn) 164
第7章 Linux進(jìn)程管理與程序開發(fā) 169
7.1 進(jìn)程環(huán)境及進(jìn)程屬性 170
7.1.1 進(jìn)程資源 170
7.1.2 進(jìn)程狀態(tài) 170
7.1.3 進(jìn)程基本屬性 172
7.1.4 進(jìn)程用戶屬性 176
7.2 進(jìn)程管理及控制 179
7.2.1 創(chuàng)建進(jìn)程 179
7.2.2 在進(jìn)程中運(yùn)行新代碼 185
7.2.3 等待進(jìn)程結(jié)束 189
7.2.4 退出進(jìn)程 191
7.2.5 修改進(jìn)程用戶相關(guān)信息 194
7.2.6 進(jìn)程調(diào)度管理函數(shù) 197
7.3 Linux特殊進(jìn)程 202
7.3.1 守候進(jìn)程及其創(chuàng)建過(guò)程 202
7.3.2 日志信息及其管理 203
7.3.3 守候進(jìn)程應(yīng)用示例 205
7.3.4 孤兒進(jìn)程與僵死進(jìn)程 207
第8章 進(jìn)程間通信——管道和信號(hào) 210
8.1 進(jìn)程間通信——PIPE 212
8.1.1 無(wú)名管道概念 212
8.1.2 無(wú)名管道管理及應(yīng)用 212
8.1.3 文件描述符重定向 2 15
8.1.4 實(shí)現(xiàn)who|sort 218
8.1.5 流重定向 2 20
8.2 進(jìn)程間通信——FIFO 2 21
8.2.1 有名管道概念 2 21
8.2.2 有名管道管理及應(yīng)用 222
8.2.3 管道基本特點(diǎn)總結(jié) 225
8.3 信號(hào)中斷處理 226
8.3.1 Linux常見信號(hào)與處理 226
8.3.2 產(chǎn)生信號(hào) 229
8.3.3 信號(hào)處理與signal安裝信號(hào) 233
8.3.4 sigaction安裝信號(hào) 234
8.3.5 信號(hào)集與屏蔽信號(hào) 238
8.3.6 等待信號(hào) 244
8.3.7 信號(hào)應(yīng)用示例 246
第9章 SystemV進(jìn)程間通信 250
9.1 SystemVIPC基礎(chǔ) 252
9.1.1 key值和ID值 252
9.1.2 擁有者及權(quán)限 254
9.2 消息隊(duì)列 254
9.2.1 消息隊(duì)列IPC原理 254
9.2.2 Linux消息隊(duì)列管理 257
9.2.3 消息隊(duì)列應(yīng)用實(shí)例 259
9.3 信號(hào)量通信機(jī)制 264
9.3.1 信號(hào)量IPC原理 264
9.3.2 Linux信號(hào)量管理操作 265
9.3.3 SEM_UNDO參數(shù)的應(yīng)用 270
9.3.4 使用信號(hào)量實(shí)現(xiàn)生產(chǎn)消費(fèi)問題 272
9.4 共享內(nèi)存 275
9.4.1 共享內(nèi)存IPC原理 275
9.4.2 Linux共享內(nèi)存管理 276
9.4.3 共享內(nèi)存的權(quán)限管理示例 278
9.4.4 共享內(nèi)存處理應(yīng)用示例 279
9.4.5 共享內(nèi)存處理應(yīng)用示例 281
第10章 Linux多線程編程 285
10.1 線程基本概念與線程操作 286
10.1.1 線程與進(jìn)程的對(duì)比 286
10.1.2 創(chuàng)建線程 287
10.1.3 線程退出與等待 288
10.1.4 取消線程 291
10.1.5 線程與私有數(shù)據(jù) 294
10.2 線程屬性控制 297
10.2.1 線程ID 298
10.2.2 初始化線程屬性對(duì)象 298
10.2.3 獲取/設(shè)置線程detachstate屬性 299
10.2.4 獲取/設(shè)置線程棧相關(guān)屬性 300
10.2.5 線程屬性控制實(shí)例 301
10.3 線程調(diào)度策略 303
10.3.1 獲取/設(shè)置線程屬性調(diào)度屬性 303
10.3.2 獲取/設(shè)置指定線程調(diào)度屬性 305
第11章 線程間同步機(jī)制 309
11.1 互斥鎖通信機(jī)制 310
11.1.1 互斥鎖基本原理 310
11.1.2 互斥鎖基本操作 310
11.1.3 互斥鎖應(yīng)用實(shí)例 311
11.2 條件變量通信機(jī)制 313
11.2.1 條件變量基本原理 313
11.2.2 條件變量基本操作 3 15
11.2.3 條件變量應(yīng)用實(shí)例 3 16
11.3 讀寫鎖通信機(jī)制 3 20
11.3.1 讀寫鎖基本原理 3 20
11.3.2 讀寫鎖基本操作 3 20
11.3.3 讀寫鎖應(yīng)用實(shí)例 322
11.4 線程與信號(hào) 3 25
11.4.1 線程信號(hào)管理 3 25
11.4.2 線程信號(hào)應(yīng)用實(shí)例 3 26
第12章 Linuxsocket網(wǎng)絡(luò)編程 3 29
12.1 網(wǎng)絡(luò)通信基礎(chǔ) 3 30
12.1.1 TCP/IP協(xié)議簇基礎(chǔ) 3 30
12.1.2 IPV4協(xié)議基礎(chǔ) 3 31
12.1.3 網(wǎng)絡(luò)數(shù)據(jù)包封包與拆包過(guò)程3 34
12.2 BSDSocket網(wǎng)絡(luò)通信編程 339
12.2.1 BSDTCP通信編程流程 339
12.2.2 BSDUDP通信編程流程 341
12.2.3 BSDSocket網(wǎng)絡(luò)編程API 342
12.2.4 使用AF_UNIX實(shí)現(xiàn)本機(jī)數(shù)據(jù)流通信示例 349
12.2.5 使用AF_INET實(shí)現(xiàn)UDP點(diǎn)對(duì)點(diǎn)通信示例 352
12.3 使用TCP實(shí)現(xiàn)簡(jiǎn)單聊天程序 354
12.3.1 服務(wù)器端代碼分析 355
12.3.2 客戶器端代碼分析 357
第13章 網(wǎng)絡(luò)編程工具介紹 359
13.1 地址處理函數(shù)說(shuō)明 360
13.1.1 大小端問題與網(wǎng)絡(luò)字節(jié)順序 360
13.1.2 字節(jié)順序處理函數(shù) 361
13.1.3 點(diǎn)分十進(jìn)制IP地址與二進(jìn)制IP地址轉(zhuǎn)換 363
13.1.4 通過(guò)IP地址獲取網(wǎng)絡(luò)ID和主機(jī)ID 365
13.2 域名與IP信息解析 365
13.2.1 Linux下域名解析過(guò)程 365
13.2.2 通過(guò)域名返回主機(jī)信息 366
13.2.3 通過(guò)域名和IP返回主機(jī)信息 367
13.2.4 getaddrinfo獲取主機(jī)信息 368
13.3 控制socket文件描述符屬性 371
13.3.1 set/getsockopt()修改socket屬性 371
13.3.2 fcntl控制socket 374
13.3.3 ioctl控制文件描述符 374
13.4 網(wǎng)絡(luò)調(diào)試工具 377
13.4.1 tcpdump的使用 378
13.4.2 netstat工具使用 380
13.4.3 lsof工具使用 381
第14章 網(wǎng)絡(luò)編程高級(jí)應(yīng)用 383
14.1 I/O阻塞與非阻塞操作應(yīng)用 384
14.1.1 非阻塞處理方法 384
14.1.2 非阻塞應(yīng)用示例 384
14.2 socket多路復(fù)用技術(shù) 388
14.2.1 select()函數(shù)介紹 388
14.2.2 pselect()函數(shù) 390
14.2.3 多路選擇應(yīng)用示例 390
14.3 socket信號(hào)驅(qū)動(dòng) 396
14.3.1 各類I/O操作比較 396
14.3.2 SIGIO信號(hào)處理機(jī)制 397
14.3.3 UDP信號(hào)驅(qū)動(dòng)實(shí)現(xiàn)應(yīng)用示例 398
14.4 UDP廣播與組播通信 401
14.4.1 廣播地址與廣播通信 401
14.4.2 組播地址與組播通信 403
14.4.3 UDP廣播應(yīng)用示例 404
14.4.4 UDP組播應(yīng)用示例 407
14.5 原始套接口基本應(yīng)用 412
14.5.1 原始套接口基本原理 412
14.5.2 原始套接口應(yīng)用示例 412
第15章 構(gòu)建網(wǎng)絡(luò)服務(wù)器 4 15
15.1 多客戶端實(shí)現(xiàn) 4 16
15.1.1 多進(jìn)程實(shí)現(xiàn)多客戶端 4 16
15.1.2 多線程實(shí)現(xiàn)多客戶端 4 20
15.2 基于xinetd的網(wǎng)絡(luò)服務(wù)應(yīng)用 4 20
15.2.1 xinetd服務(wù)介紹 4 21
15.2.2 應(yīng)用示例 422
15.3 構(gòu)建簡(jiǎn)單的HTTP網(wǎng)絡(luò)服務(wù)器 423
15.3.1 服務(wù)器運(yùn)行及測(cè)試結(jié)果 4 24
15.3.2 主函數(shù)運(yùn)行流程 4 25
15.3.3 支撐函數(shù) 4 27

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)