出版時(shí)間:2001-4 出版社:人民郵電出版社 作者:Warren W.Gay 頁(yè)數(shù):591 譯者:瀟湘工作室
Tag標(biāo)簽:無(wú)
內(nèi)容概要
本書詳盡地介紹了UNIX系統(tǒng)編程的高級(jí)技術(shù)。通過(guò)本書的學(xué)習(xí),讀者將能夠充分利用標(biāo)準(zhǔn)的UNIX開發(fā)工具,掌握UNIX操作系統(tǒng)的內(nèi)部工作方法,包括文件系統(tǒng)的內(nèi)部操作以及大量UNIX函數(shù)的正確使用方法和技巧。
書籍目錄
第一部分 文件和目錄
第1章 編譯程序注釋和選項(xiàng) 3
1.1 在線手冊(cè)頁(yè) 3
1.2 本書使用的手冊(cè)索引 4
1.2.1 Internet上的man(1)資源 5
1.3 本書的實(shí)例代碼 5
1.4 編譯C程序 6
1.4.1 C編譯命令 7
1.5 管理編譯程序警告 11
1.5.1 利用編譯程序警告信息 11
1.6 編譯標(biāo)準(zhǔn) 18
1.6.1 FreeBSD 3.4-Realease特征測(cè)試 19
1.6.2 HPUX 10.2特征測(cè)試 21
1.6.3 AIX 4.3特征測(cè)試 22
1.6.4 SunOS 5.6特征測(cè)試 22
1.6.5 特征測(cè)試總結(jié) 23
1.7 小結(jié) 24
第2章 UNIX文件系統(tǒng)對(duì)象 25
2.1 文件系統(tǒng)對(duì)象 25
2.1.1 常規(guī)文件 25
2.1.2 目錄 26
2.1.3 塊設(shè)備 27
2.1.4 字符設(shè)備 28
2.1.5 有名管道(FiFos) 29
2.1.6 套接口 30
2.1.7 符號(hào)鏈接 30
2.1.8 特殊文件 31
2.2 權(quán)限 33
2.2.1 常規(guī)文件的訪問 33
2.2.2 目錄的訪問 34
2.3 使用UNIX文件 35
2.3.1 打開和關(guān)閉文件 36
2.3.2 打開特殊文件 38
2.3.3 使用套接口 38
2.3.4 復(fù)制文件描述符 38
2.3.5 改變標(biāo)準(zhǔn)輸入 39
2.4 UNIX文件I/O 40
2.5 小結(jié) 41
第3章 錯(cuò)誤處理和報(bào)告 42
3.1 確定是成功還是失敗 42
3.1.1 出錯(cuò)指示的一般規(guī)則 42
3.1.2 一般規(guī)則的例外 42
3.1.3 成功返回值的分類 43
3.1.4 其他返回指示 43
3.2 確定失敗的原因 43
3.3 原來(lái)的errno值 44
3.3.1 按名稱引用錯(cuò)誤代碼 45
3.3.2 正確使用errno 45
3.4 新的errno值 47
3.4.1 聲明新的errno值 47
3.4.2 使用新的errno 值 47
3.5 報(bào)告errno值 47
3.5.1 使用perrno(3)值 48
3.5.2 使用sys_errlist[]數(shù)組 49
3.5.3 strerror(3)函數(shù) 51
3.6 使用stdio(3)測(cè)試錯(cuò)誤 53
3.6.1 函數(shù)ferror(3)的缺陷 53
3.6.2 避免fclose(3)的缺陷 53
3.6.3 推遲錯(cuò)誤報(bào)告 54
3.7 小結(jié) 55
第4章 UNIX輸入和輸出 56
4.1 umask(2)函數(shù)和umask位 56
4.1.1 權(quán)限位 56
4.1.2 理解對(duì)umask的需要 57
4.1.3 理解umask的作用域 58
4.1.4 使用umask(2)函數(shù) 58
4.1.5 使用umask值的例子 58
4.1.6 umask(2) 函數(shù) 59
4.1.7 create(2)函數(shù) 60
4.2 讀和寫 61
4.2.1 read(2) 和write(2)初步 61
4.2.2 使用UNIX I/O 62
4.3 文件內(nèi)查找 64
4.3.1 使用lseek(2) 64
4.4 截取文件 66
4.5 稀疏文件 67
4.5.1 創(chuàng)建稀疏文件 67
4.6 強(qiáng)迫把數(shù)據(jù)寫到媒介上 70
4.6.1 sync(2)函數(shù) 70
4.6.2 sync(2)的缺點(diǎn) 71
4.6.3 fsync(2)函數(shù) 71
4.7 分散讀寫 72
4.7.1 readv(2)和 writev(2)函數(shù) 72
4.8 確定tty名稱 74
4.9 小結(jié) 76
第5章 文件上鎖 77
5.1 理解上鎖類型 77
5.1.1 文件上鎖技術(shù) 78
5.1.2 文件上鎖的限制 84
5.1.3 在整個(gè)文件中使用勸告性上鎖 84
5.1.4 使用flock(2)上鎖 85
5.2 記錄上鎖 86
5.2.1 使用lockf(2)上鎖 86
5.3 使用fcntl(2)實(shí)現(xiàn)POSIX上鎖 89
5.3.1 初始化struct flock 89
5.3.2 上鎖一個(gè)區(qū)域 90
5.3.3 解鎖區(qū)域 90
5.3.4 獲得上鎖信息 91
5.4 強(qiáng)制性上鎖 92
5.4.1 啟用強(qiáng)制性上鎖 93
5.5 小結(jié) 93
第6章 管理文件及其屬性 94
6.1 清除文件 94
6.2 鏈接文件 95
6.3 移動(dòng)文件 96
6.4 獲取文件系統(tǒng)信息 97
6.4.1 函數(shù)stat(2) 98
6.4.2 函數(shù)fstat(2) 100
6.4.3 使用文件屬性 100
6.4.4 測(cè)試文件類型 107
6.4.5 修改、訪問及創(chuàng)建時(shí)間 109
6.5 測(cè)試文件的訪問權(quán)限 109
6.6 符號(hào)鏈接 110
6.6.1 函數(shù)symlink(2) 110
6.6.2 函數(shù)lstat(2) 111
6.6.3 利用readlink(2) 讀取符號(hào)鏈接的內(nèi)容 111
6.7 文件權(quán)限和所有權(quán) 112
6.7.1 改變權(quán)限 112
6.7.2 改變所有權(quán) 113
6.8 有名管道(FIFO) 114
6.9 獲得尺寸和配置信息 115
6.10 小結(jié) 118
第7章 目錄管理 119
7.1 獲得工作目錄 119
7.1.1 指定空緩沖區(qū)參數(shù) 120
7.2 改變當(dāng)前目錄 120
7.2.1 保存當(dāng)前目錄 121
7.2.2 fchdir(2)的局限性 121
7.3 建立新目錄 122
7.4 刪除目錄 123
7.5 打開目錄進(jìn)行搜索 124
7.6 關(guān)閉目錄 125
7.7 搜索目錄 125
7.8 重新回到目錄的開始 128
7.9 保存目錄中的位置 128
7.10 在目錄內(nèi)恢復(fù)位置 129
7.11 掃描目錄 129
7.11.1 為scandir(3)聲明自己的select 函數(shù) 130
7.11.2 為scandir(3)聲明自己的compar函數(shù) 131
7.11.3 sysV 變體 131
7.11.4 scandir(3)實(shí)例 132
7.12 遍歷目錄結(jié)構(gòu) 135
7.13 改變根目錄 137
7.14 小結(jié) 140
第8章 臨時(shí)目錄和處理清除 141
8.1 創(chuàng)建臨時(shí)文件 141
8.1.1 使用函數(shù)tmpnam(3) 141
8.1.2 使用函數(shù)mktemp(3) 145
8.1.3 使用函數(shù)mkstemp(3) 145
8.1.4 使用函數(shù)mkstemps(3) 148
8.1.5 使用函數(shù)tmpfile(3) 148
8.1.6 使用函數(shù)tempnam(3) 150
8.2 使文件為臨時(shí)文件 153
8.2.1 使用unlink(2)使文件為臨時(shí)文件 153
8.2.2 退出清除 153
8.2.3 使用atexit(3) 函數(shù) 153
8.2.4 使用C++析構(gòu)函數(shù) 157
8.2.5 利用_exit(2)避免清除 162
8.3 小結(jié) 162
第二部分 庫(kù)函數(shù)
第9章 UNIX命令行處理 165
9.1 命令行約定 165
9.1.1 使用多個(gè)選項(xiàng) 165
9.1.2 組合多個(gè)選項(xiàng) 166
9.1.3 使用帶有參數(shù)的選項(xiàng) 166
9.1.4 識(shí)別選項(xiàng)或參數(shù) 166
9.2 選項(xiàng)參數(shù) 166
9.3 函數(shù)getopt(3) 167
9.3.1 getopt(3)外部值 167
9.3.2 getopt(3)函數(shù)調(diào)用 168
9.3.3 定義optstring 參數(shù) 169
9.3.4 定義選項(xiàng)處理循環(huán) 169
9.4 函數(shù)getsubopt(3) 171
9.4.1 確定子選項(xiàng)處理的結(jié)束 172
9.4.2 getsubopt(3)的完整例子 173
9.5 GNU長(zhǎng)選項(xiàng)擴(kuò)展 176
9.5.1 GNU getopt_long(3)函數(shù) 176
9.5.2 理解option結(jié)構(gòu) 177
9.5.3 建立option結(jié)構(gòu) 177
9.5.4 使用空的option.flag指針 177
9.5.5 使用非空option.flag 指針 178
9.6 小結(jié) 179
第10章 轉(zhuǎn)換函數(shù) 180
10.1 簡(jiǎn)單的轉(zhuǎn)換函數(shù) 180
10.1.1 細(xì)查函數(shù)atoi(3) 和atol(3) 180
10.1.2 atof(3)函數(shù) 182
10.2 使用sscanf(3)轉(zhuǎn)換和驗(yàn)證 182
10.2.1 把sscanf(3)應(yīng)用到數(shù)值轉(zhuǎn)換 183
10.2.2 使用sscanf(3) 測(cè)試數(shù)值轉(zhuǎn)換 184
10.2.3 改進(jìn)sscanf(3)轉(zhuǎn)換 184
10.2.4 sscanf(3)的局限性 185
10.3 函數(shù)strtol(3)和strtoul(3) 185
10.3.1 使用strtol(3)函數(shù) 186
10.3.2 出錯(cuò)測(cè)試 187
10.3.3 測(cè)試轉(zhuǎn)換指針 187
10.3.4 多項(xiàng)轉(zhuǎn)換 187
10.3.5 使用base參數(shù)進(jìn)行基數(shù)轉(zhuǎn)換 188
10.3.6 測(cè)試溢出和下溢 191
10.3.7 測(cè)試strtoul(3)溢出 192
10.4 大整數(shù)轉(zhuǎn)換 193
10.5 BSD的strtoq(3)和strtouq(3)函數(shù) 194
10.6 strtod(3)函數(shù) 194
10.6.1 使用strtod(3)函數(shù) 195
10.6.2 測(cè)試算術(shù)錯(cuò)誤 195
10.6.3 算術(shù)錯(cuò)誤測(cè)試的流程 196
10.7 小結(jié) 197
第11章 UNIX日期和時(shí)間機(jī)制 198
11.1 時(shí)區(qū) 198
11.1.1 世界時(shí)間標(biāo)準(zhǔn)初步 198
11.2 定義日期和時(shí)間數(shù)據(jù)類型 200
11.3 時(shí)間轉(zhuǎn)換函數(shù) 200
11.3.1 使用ctime(3)把時(shí)間轉(zhuǎn)換為串形式 204
11.3.2 函數(shù)ctime_r(3) 204
11.3.3 函數(shù)localtime(3) 和gmtime(3) 205
11.3.4 struct tm的成員 207
11.3.5 使用函數(shù)asctime(3)把日期/時(shí)間成份轉(zhuǎn)換成串 208
11.3.6 函數(shù)tzset(3) 209
11.3.7 利用函數(shù)mktime(3)創(chuàng)建Epoch時(shí)間 211
11.4 用strftime(3)定制日期和時(shí)間格式 212
11.4.1 strftime(3)格式說(shuō)明符 213
11.4.2 實(shí)現(xiàn)DTime::strftime(3)方法 214
11.4.3 測(cè)試類DTime 215
11.4.4 理解本地設(shè)置的作用 217
11.5 小結(jié) 217
第12章 用戶ID、口令和組管理 218
12.1 UNIX用戶管理入門 218
12.1.1 了解用戶名和用戶ID號(hào) 218
12.1.2 了解用戶名root 219
12.1.3 組名和組ID號(hào) 219
12.1.4 了解gid的0值 219
12.2 getuid(2)函數(shù)和geteuid(2)函數(shù) 219
12.3 getgid(2)函數(shù)和getegid(2)函數(shù) 220
12.4 真正的、有效的和已保存的用戶ID 220
12.4.1 有效的用戶ID 220
12.4.2 真正的用戶ID 220
12.4.3 已保存的用戶ID 221
12.4.4 身份驗(yàn)證角色概要 221
12.5 設(shè)置用戶ID 221
12.6 設(shè)置組ID 222
12.7 FreeBSD的issetugid(2)函數(shù) 223
12.8 etc/passwd文件 223
12.8.1 注釋字段 224
12.8.2 使用注釋字段的&特征 225
12.9 口令數(shù)據(jù)庫(kù)例程 225
12.9.1 passwd結(jié)構(gòu) 226
12.9.2 getpwent(3)的錯(cuò)誤處理 226
12.9.3 fgetpwent(3)函數(shù) 227
12.9.4 putpwent(3)函數(shù) 227
12.9.5 getpwuid(3)函數(shù) 228
12.9.6 getpwnam(3)函數(shù) 228
12.10 組數(shù)據(jù)庫(kù) 229
12.10.1 /etc/group文件 229
12.10.2 getgrent(3)、setgrent(3)和endgrent(3)函數(shù) 230
12.10.3 了解group結(jié)構(gòu) 230
12.10.4 fgetgrent(3)函數(shù) 231
12.10.5 getgrgid(3)函數(shù) 232
12.10.6 getgrnam(3)函數(shù) 232
12.11 相關(guān)的重入函數(shù) 232
12.12 輔助組 233
12.12.1 getgroups(2)函數(shù) 233
12.12.2 使用setgroups(2)函數(shù)設(shè)置組 236
12.12.3 為指定的用戶名設(shè)置組 236
12.13 小結(jié) 237
第13章 靜態(tài)庫(kù)和共享庫(kù) 238
13.1 靜態(tài)庫(kù) 238
13.1.1 檢測(cè)進(jìn)程內(nèi)存映像 238
13.1.2 實(shí)現(xiàn)靜態(tài)庫(kù) 239
13.1.3 使用ar(1)命令創(chuàng)建存檔文件 245
13.1.4 列出存檔的目錄 246
13.1.5 獲得存檔的詳細(xì)列表 247
13.1.6 鏈接靜態(tài)庫(kù) 247
13.2 共享庫(kù) 248
13.2.1 靜態(tài)庫(kù)的局限性 248
13.2.2 創(chuàng)建共享庫(kù) 249
13.2.3 鏈接共享庫(kù) 249
13.2.4 選擇靜態(tài)庫(kù)或動(dòng)態(tài)庫(kù) 249
13.2.5 列出共享庫(kù)的引用 250
13.2.6 動(dòng)態(tài)加載程序 250
13.2.7 位置無(wú)關(guān)的代碼 252
13.2.8 控制共享內(nèi)容 253
13.3 靜態(tài)庫(kù)和共享庫(kù)的比較 254
13.3.1 靜態(tài)庫(kù)的好處 254
13.3.2 共享庫(kù)的優(yōu)點(diǎn) 255
13.4 動(dòng)態(tài)庫(kù)加載 256
13.4.1 打開共享庫(kù) 256
13.4.2 報(bào)告錯(cuò)誤 257
13.4.3 獲得共享的引用指針 257
13.4.4 關(guān)閉共享庫(kù) 257
13.4.5 初始化和析構(gòu) 258
13.4.6 應(yīng)用動(dòng)態(tài)加載 258
13.4.7 HPUX 10.2動(dòng)態(tài)庫(kù)加載 261
13.5 小結(jié) 264
第14章 數(shù)據(jù)庫(kù)庫(kù)例程 265
14.1 NDBM數(shù)據(jù)庫(kù) 266
14.1.1 錯(cuò)誤處理 266
14.1.2 打開NDBM數(shù)據(jù)庫(kù) 267
14.1.3 關(guān)閉NDBM數(shù)據(jù)庫(kù) 267
14.1.4 存儲(chǔ)信息 267
14.1.5 獲取信息 269
14.1.6 刪除信息 269
14.1.7 訪問所有關(guān)鍵字 270
14.1.8 使用dbm_nextkey(3)函數(shù)刪除關(guān)鍵字 271
14.2 NDBM數(shù)據(jù)庫(kù)示例 272
14.2.1 目錄軟件 272
14.2.2 Dbm類 276
14.2.3 InoDb類 282
14.2.4 SnapShot應(yīng)用程序 287
14.2.5 運(yùn)行SnapShot應(yīng)用程序 296
14.2.6 訪問所有的關(guān)鍵字并刪除 299
14.3 小結(jié) 301
第三部分 高級(jí)概念
第15章 信號(hào) 305
15.1 了解UNIX信號(hào) 305
15.2 可靠的和不可靠的信號(hào) 306
15.3 不可靠的signal(3) API 306
15.4 可靠的信號(hào)API 309
15.4.1 清空信號(hào)集 309
15.4.2 填充信號(hào)集 310
15.4.3 給信號(hào)集添加信號(hào) 310
15.4.4 從信號(hào)集中刪除信號(hào) 311
15.4.5 測(cè)試一個(gè)集合中的信號(hào) 311
15.4.6 設(shè)置信號(hào)操作 312
15.4.7 信號(hào)操作標(biāo)志 313
15.4.8 使用可靠的信號(hào) 314
15.5 控制信號(hào) 315
15.5.1 阻塞信號(hào) 315
15.5.2 獲得等待狀態(tài)的信號(hào) 317
15.5.3 sigsuspend(2)函數(shù) 317
15.6 應(yīng)用alarm(3)函數(shù) 318
15.7 從信號(hào)處理程序中調(diào)用函數(shù) 321
15.7.1 避免重入代碼的問題 322
15.7.2 在信號(hào)處理程序中用errno報(bào)告重入的問題 322
15.8 應(yīng)用EINTR錯(cuò)誤代碼 323
15.9 喚醒信號(hào) 324
15.10 小結(jié) 325
第16章 有效的I/O調(diào)度 326
16.1 非阻塞的I/O 326
16.1.1 在非阻塞模式下打開文件 326
16.1.2 設(shè)置非阻塞模式 327
16.1.3 非阻塞的I/O操作 328
16.1.4 使用非阻塞I/O帶來(lái)的問題 330
16.2 I/O調(diào)度函數(shù) 330
16.2.1 文件描述符集合以及它們的宏 331
16.2.2 timeval結(jié)構(gòu) 332
16.2.3 select(2)函數(shù) 332
16.2.4 使用select(2)函數(shù) 335
16.3 I/O輪詢 340
16.3.1 輪詢事件 342
16.3.2 輪詢優(yōu)先級(jí) 343
16.3.3 poll(2)示例 343
16.4 小結(jié) 347
第17章 計(jì)時(shí)器 348
17.1 睡眠函數(shù) 348
17.2 sleep(3)的UNIX實(shí)現(xiàn) 350
17.2.1 以微秒為單位的睡眠 353
17.2.2 以納秒為單位的睡眠 356
17.3 間隔計(jì)時(shí)器函數(shù) 360
17.3.1 間隔計(jì)時(shí)器API 360
17.3.2 間隔計(jì)時(shí)器宏 362
17.3.3 間隔計(jì)時(shí)器的制約 363
17.3.4 創(chuàng)建只執(zhí)行一次的計(jì)時(shí)器 363
17.3.5 創(chuàng)建重復(fù)計(jì)時(shí)器 366
17.4 小結(jié) 370
第18章 管道和進(jìn)程 371
18.1 UNIX管道 371
18.1.1 創(chuàng)建UNIX管道 371
18.1.2 將管道打開到其他進(jìn)程 372
18.1.3 從管道讀取數(shù)據(jù) 374
18.1.4 將數(shù)據(jù)寫到管道 375
18.1.5 關(guān)閉管道 378
18.1.6 處理已破壞的管道 379
18.2 不用管道的外部進(jìn)程 380
18.2.1 解釋system(3)函數(shù)的返回值 381
18.2.2 調(diào)用命令 381
18.2.3 仔細(xì)考查system(3)函數(shù) 384
18.3 小結(jié) 385
第19章 分支進(jìn)程 386
19.1 UNIX分支進(jìn)程概述 386
19.1.1 fork(2)函數(shù) 388
19.1.2 使用fork(2) 388
19.2 等待進(jìn)程完成 390
19.2.1 僵進(jìn)程 390
19.2.2 wait(2)函數(shù) 392
19.2.3 解釋退出狀態(tài) 394
19.2.4 其他等待系統(tǒng)調(diào)用 395
19.3 執(zhí)行新程序 397
19.4 exec(2)系列的其他成員 402
19.5 小結(jié) 404
第20章 模式匹配 405
20.1 shell模式 405
20.1.1 *元字符 406
20.1.2 ?元字符 406
20.1.3 [元字符和]元字符 406
20.1.4 !元字符 407
20.1.5 帶有\(zhòng)的轉(zhuǎn)義字符 408
20.2 字符串模式函數(shù) 409
20.3 glob(3)函數(shù) 417
20.3.1 glob(3)函數(shù)的返回值 419
20.4 小結(jié) 433
第21章 正則表達(dá)式 434
21.1 了解正則表達(dá)式 434
21.1.1 固定符 434
21.1.2 集合 435
21.1.3 范圍 436
21.1.4 字符類 436
21.1.5 .元字符 436
21.1.6 加上括號(hào)的匹配子表達(dá)式 437
21.1.7 原子 437
21.1.8 段 437
21.1.9 分支 438
21.1.10 表達(dá)式邊界 439
21.1.11 引用的字符 439
21.2 正則表達(dá)式庫(kù) 439
21.2.1 編譯正則表達(dá)式 440
21.2.2 報(bào)告錯(cuò)誤 441
21.2.3 釋放正則表達(dá)式 442
21.2.4 匹配正則表達(dá)式 443
21.2.5 應(yīng)用正則表達(dá)式 444
21.3 小結(jié) 450
第22章 進(jìn)程間的通信 451
22.1 IPC的類型 451
22.2 消息隊(duì)列 451
22.3 共享內(nèi)存 453
22.4 信號(hào)量 454
22.5 引用IPC資源 455
22.5.1 IPC關(guān)鍵字值 456
22.5.2 創(chuàng)建IPC資源 456
22.5.3 根據(jù)IPC關(guān)鍵字訪問 457
22.5.4 根據(jù)IPC ID訪問 457
22.6 撤銷IPC資源 457
22.7 小結(jié) 458
第23章 消息隊(duì)列 459
23.1 控制消息隊(duì)列 459
23.1.1 創(chuàng)建消息隊(duì)列 459
23.1.2 訪問消息隊(duì)列 459
23.1.3 撤銷消息隊(duì)列 460
23.1.4 獲得消息隊(duì)列的信息 460
23.1.5 改變消息隊(duì)列 461
23.2 發(fā)送消息和接收消息 462
23.2.1 發(fā)送消息 462
23.2.2 接收消息 464
23.3 使用消息隊(duì)列 465
23.4 小結(jié) 485
第24章 信號(hào)量 486
24.1 信號(hào)量實(shí)用程序 486
24.2 創(chuàng)建和訪問信號(hào)量集合 488
24.3 撤銷信號(hào)量集合 491
24.4 控制信號(hào)量 493
24.4.1 查詢信號(hào)量集合 493
24.4.2 更改信號(hào)量訪問 499
24.4.3 查詢信號(hào)量的值 502
24.4.4 查詢整個(gè)信號(hào)量集合的值 503
24.4.5 更改信號(hào)量的值 504
24.4.6 更改整個(gè)信號(hào)量集合的值 505
24.4.7 查詢信號(hào)量的進(jìn)程ID 506
24.4.8 查詢等待通知的進(jìn)程數(shù) 508
24.4.9 查詢等待0的進(jìn)程數(shù) 508
24.5 使用信號(hào)量 508
24.5.1 等待信號(hào)量 510
24.5.2 通知信號(hào)量 514
24.5.3 等待0操作 514
24.5.4 信號(hào)量取消處理 514
24.5.5 semop實(shí)用程序 516
24.6 小結(jié) 526
第25章 共享內(nèi)存 527
25.1 globvar實(shí)用程序 527
25.1.1 創(chuàng)建全局變量池 528
25.1.2 撤銷全局變量池 528
25.1.3 globvar環(huán)境變量 529
25.1.4 創(chuàng)建全局變量 529
25.1.5 訪問全局變量 529
25.1.6 刪除全局變量 530
25.1.7 清除全局變量池 530
25.2 共享內(nèi)存系統(tǒng)調(diào)用 530
25.2.1 創(chuàng)建和訪問共享內(nèi)存 531
25.2.2 獲取共享內(nèi)存的信息 533
25.2.3 更改共享內(nèi)存屬性 535
25.2.4 連接共享內(nèi)存 536
25.2.5 釋放共享內(nèi)存 537
25.2.6 撤銷共享內(nèi)存 539
25.3 使用共享內(nèi)存 539
25.4 小結(jié) 551
第26章 內(nèi)存映射的文件 552
26.1 確定頁(yè)面的大小 553
26.2 創(chuàng)建內(nèi)存的映射 554
26.3 控制內(nèi)存映射的區(qū)域 563
26.3.1 更改訪問保護(hù) 563
26.3.2 通知核心內(nèi)存的使用情況 564
26.3.3 查詢內(nèi)存中的頁(yè)面 567
26.3.4 同步更改 568
26.4 撤銷內(nèi)存映射 569
26.5 小結(jié) 570
第27章 X Window編程 571
27.1 事件驅(qū)動(dòng)的編程 571
27.1.1 事件驅(qū)動(dòng)的模型 572
27.1.2 客戶/服務(wù)器處理 572
27.1.3 軟件層次 573
27.2 Xlib客戶程序 575
27.3 小結(jié) 591
圖書封面
圖書標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載