注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡網(wǎng)絡與數(shù)據(jù)通信網(wǎng)絡服務UNIX環(huán)境高級編程 第3版

UNIX環(huán)境高級編程 第3版

UNIX環(huán)境高級編程 第3版

定 價:¥169.00

作 者: (美)W.,理查德·史蒂文斯,史蒂芬·A.,拉戈
出版社: 人民郵電出版社
叢編項:
標 簽: 暫缺

ISBN: 9787115516756 出版時間: 2019-10-01 包裝:
開本: 16開 頁數(shù): 812 字數(shù):  

內容簡介

  本書是被譽為UNIX編程“圣經(jīng)”的Advanced Programming in the UNIX Environment一書的第3版。在本書第2版出版后的8年中,UNIX發(fā)生了巨大的變化,特別是影響UNIX編程接口的有關標準變化很大。本書在保持前一版風格的基礎上,根據(jù)新的標準對內容進行了修訂和增補,反映了新的技術發(fā)展。書中除了介紹UNIX文件和目錄、標準I/O庫、系統(tǒng)數(shù)據(jù)文件和信息、進程環(huán)境、進程控制、進程關系、信號、線程、線程控制、守護進程、各種I/O、進程間通信、網(wǎng)絡IPC、偽終端等方面的內容,還在此基礎上介紹了眾多應用實例,包括如何創(chuàng)建數(shù)據(jù)庫函數(shù)庫以及如何與網(wǎng)絡打印機通信等。此外,還在附錄中給出了函數(shù)原型和部分習題的答案。本書內容**,概念清晰,闡述精辟,對于所有層次UNIX/Linux程序員都是一本不可或缺的參考書。

作者簡介

  作者簡介W. 理查德·史蒂文斯(W. Richard Stevens)國際知名的UNIX和網(wǎng)絡專家,備受贊譽的技術作家。生前著有多部經(jīng)典的傳世之作,包括《UNIX網(wǎng)絡編程》(兩卷本)、《TCP/IP詳解》(三卷本)和本書第1版。史蒂芬·A. 拉戈(Stephen A. Rago)資深UNIX程序員,目前任NEC美國實驗室存儲系統(tǒng)研究組研究員。之前是貝爾實驗室的UNIX系統(tǒng)V版本4的開發(fā)人員之一。著有《UNIX系統(tǒng)V網(wǎng)絡編程》,是本書第1版的技術審校和第2版的共同作者。譯者簡介戚正偉 博士,上海交通大學軟件學院教授、博士生導師,CCF高級會員,CCF系統(tǒng)軟件、理論計算機專委會委員,微軟亞洲研究院和美國卡內基梅隆大學(CMU)訪問學者。主要研究方向為系統(tǒng)軟件和程序分析等,除翻譯本書外,還著有《NewBluePill:深入理解硬件虛擬機》等。張亞英 博士,同濟大學電子與信息工程學院計算機系教授,研究方向為網(wǎng)絡與分布式系統(tǒng)、大數(shù)據(jù)挖掘與分析等。尤晉元 上海交通大學計算機科學及工程系教授、博士生導師。在科研方面,主要從事操作系統(tǒng)和分布對象計算技術方面的研究。在教學方面,長期承擔操作系統(tǒng)及分布計算等課程的教學工作。主編和翻譯了多本操作系統(tǒng)教材和參考書,包括《UNIX操作系統(tǒng)教程》《UNIX高級編程技術》《UNIX環(huán)境高級編程》和《操作系統(tǒng):設計與實現(xiàn)》等。

圖書目錄

第 1章 UNIX基礎知識\t1
1.1 引言 1
1.2 UNIX體系結構 1
1.3 登錄 1
1.4 文件和目錄 3
1.5 輸入和輸出 6
1.6 程序和進程 8
1.7 出錯處理 11
1.8 用戶標識 13
1.9 信號 14
1.10 時間值 16
1.11 系統(tǒng)調用和庫函數(shù) 17
1.12 小結 18
習題 18
第 2章 UNIX標準及實現(xiàn) 20
2.1 引言 20
2.2 UNIX標準化 20
2.2.1 ISO C 20
2.2.2 IEEE POSIX 21
2.2.3 Single UNIX Specification 25
2.2.4 FIPS 26
2.3 UNIX系統(tǒng)實現(xiàn) 26
2.3.1 SVR4 27
2.3.2 4.4BSD 27
2.3.3 FreeBSD 28
2.3.4 Linux 28
2.3.5 Mac OS X 28
2.3.6 Solaris 28
2.3.7 其他UNIX系統(tǒng) 29
2.4 標準和實現(xiàn)的關系 29
2.5 限制 29
2.5.1 ISO C限制 30
2.5.2 POSIX限制 31
2.5.3 XSI限制 33
2.5.4 函數(shù)sysconf、pathconf和fpathconf 33
2.5.5 不確定的運行時限制 40
2.6 選項 43
2.7 功能測試宏 46
2.8 基本系統(tǒng)數(shù)據(jù)類型 47
2.9 標準之間的沖突 48
2.10 小結 48
習題 48
第3章 文件I/O 49
3.1 引言 49
3.2 文件描述符 49
3.3 函數(shù)open和openat 50
3.4 函數(shù)creat 52
3.5 函數(shù)close 53
3.6 函數(shù)lseek 53
3.7 函數(shù)read 57
3.8 函數(shù)write 57
3.9 I/O的效率 58
3.10 文件共享 59
3.11 原子操作 62
3.12 函數(shù)dup和dup2 63
3.13 函數(shù)sync、fsync和fdatasync 65
3.14 函數(shù)fcntl 65
3.15 函數(shù)ioctl 70
3.16 /dev/fd 71
3.17 小結 72
習題 72
第4章 文件和目錄 74
4.1 引言 74
4.2 函數(shù)stat、fstat、fstatat和lstat 74
4.3 文件類型 75
4.4 設置用戶ID和設置組ID 78
4.5 文件訪問權限 79
4.6 新文件和目錄的所有權 80
4.7 函數(shù)access和faccessat 81
4.8 函數(shù)umask 83
4.9 函數(shù)chmod、fchmod和fchmodat 84
4.10 粘著位 87
4.11 函數(shù)chown、fchown、fchownat和lchown 88
4.12 文件長度 89
4.13 文件截斷 90
4.14 文件系統(tǒng) 90
4.15 函數(shù)link、linkat、unlink、unlinkat和remove 93
4.16 函數(shù)rename和renameat 95
4.17 符號鏈接 96
4.18 創(chuàng)建和讀取符號鏈接 99
4.19 文件的時間 99
4.20 函數(shù)futimens、utimensat和utimes 101
4.21 函數(shù)mkdir、mkdirat和rmdir 103
4.22 讀目錄 104
4.23 函數(shù)chdir、fchdir和getcwd 108
4.24 設備特殊文件 110
4.25 文件訪問權限位小結 112
4.26 小結 113
習題 113
第5章 標準I/O庫 115
5.1 引言 115
5.2 流和FILE對象 115
5.3 標準輸入、標準輸出和標準錯誤 116
5.4 緩沖 116
5.5 打開流 118
5.6 讀和寫流 120
5.7 每次一行I/O 122
5.8 標準I/O的效率 123
5.9 二進制I/O 125
5.10 定位流 126
5.11 格式化I/O 127
5.12 實現(xiàn)細節(jié) 131
5.13 臨時文件 134
5.14 內存流 137
5.15 標準I/O的替代軟件 140
5.16 小結 140
習題 140
第6章 系統(tǒng)數(shù)據(jù)文件和信息 142
6.1 引言 142
6.2 口令文件 142
6.3 陰影口令 145
6.4 組文件 146
6.5 附屬組ID 147
6.6 實現(xiàn)區(qū)別 148
6.7 其他數(shù)據(jù)文件 148
6.8 登錄賬戶記錄 149
6.9 系統(tǒng)標識 150
6.10 時間和日期例程 151
6.11 小結 157
習題 157
第7章 進程環(huán)境 158
7.1 引言 158
7.2 main函數(shù) 158
7.3 進程終止 158
7.4 命令行參數(shù) 162
7.5 環(huán)境表 163
7.6 C程序的存儲空間布局 163
7.7 共享庫 165
7.8 存儲空間分配 165
7.9 環(huán)境變量 168
7.10 函數(shù)setjmp和longjmp 170
7.11 函數(shù)getrlimit和setrlimit 175
7.12 小結 180
習題 180
第8章 進程控制 181
8.1 引言 181
8.2 進程標識 181
8.3 函數(shù)fork 182
8.4 函數(shù)vfork 187
8.5 函數(shù)exit 188
8.6 函數(shù)wait和waitpid 190
8.7 函數(shù)waitid 194
8.8 函數(shù)wait3和wait4 195
8.9 競爭條件 196
8.10 函數(shù)exec 199
8.11 更改用戶ID和更改組ID 204
8.12 解釋器文件 207
8.13 函數(shù)system 211
8.14 進程會計 215
8.15 用戶標識 220
8.16 進程調度 221
8.17 進程時間 224
8.18 小結 226
習題 226
第9章 進程關系 228
9.1 引言 228
9.2 終端登錄 228
9.3 網(wǎng)絡登錄 231
9.4 進程組 233
9.5 會話 234
9.6 控制終端 235
9.7 函數(shù)tcgetpgrp、tcsetpgrp和tcgetsid 237
9.8 作業(yè)控制 237
9.9 shell執(zhí)行程序 240
9.10 孤兒進程組 244
9.11 FreeBSD實現(xiàn) 246
9.12 小結 248
習題 248
第 10章 信號 249
10.1 引言 249
10.2 信號概念 249
10.3 函數(shù)signal 256
10.4 不可靠的信號 259
10.5 中斷的系統(tǒng)調用 260
10.6 可重入函數(shù) 262
10.7 SIGCLD語義 264
10.8 可靠信號術語和語義 266
10.9 函數(shù)kill和raise 267
10.10 函數(shù)alarm和pause 268
10.11 信號集 273
10.12 函數(shù)sigprocmask 275
10.13 函數(shù)sigpending 276
10.14 函數(shù)sigaction 278
10.15 函數(shù)sigsetjmp和siglongjmp 283
10.16 函數(shù)sigsuspend 286
10.17 函數(shù)abort 291
10.18 函數(shù)system 293
10.19 函數(shù)sleep、nanosleep和clock_nanosleep 298
10.20 函數(shù)sigqueue 300
10.21 作業(yè)控制信號 301
10.22 信號名和編號 303
10.23 小結 305
習題 305
第 11章 線程 307
11.1 引言 307
11.2 線程概念 307
11.3 線程標識 308
11.4 線程創(chuàng)建 309
11.5 線程終止 311
11.6 線程同步 318
11.6.1 互斥量 320
11.6.2 避免死鎖 322
11.6.3 函數(shù)pthread_mutex_ timedlock 327
11.6.4 讀寫鎖 328
11.6.5 帶有超時的讀寫鎖 332
11.6.6 條件變量 332
11.6.7 自旋鎖 335
11.6.8 屏障 336
11.7 小結 340
習題 340
第 12章 線程控制 341
12.1 引言 341
12.2 線程限制 341
12.3 線程屬性 342
12.4 同步屬性 345
12.4.1 互斥量屬性 345
12.4.2 讀寫鎖屬性 352
12.4.3 條件變量屬性 353
12.4.4 屏障屬性 354
12.5 重入 354
12.6 線程特定數(shù)據(jù) 358
12.7 取消選項 362
12.8 線程和信號 364
12.9 線程和fork 367
12.10 線程和I/O 370
12.11 小結 371
習題 371
第 13章 守護進程 372
13.1 引言 372
13.2 守護進程的特征 372
13.3 編程規(guī)則 374
13.4 出錯記錄 377
13.5 單實例守護進程 380
13.6 守護進程的慣例 381
13.7 客戶進程-服務器進程模型 386
13.8 小結 386
習題 387
第 14章 高級I/O 388
14.1 引言 388
14.2 非阻塞I/O 388
14.3 記錄鎖 391
14.4 I/O多路轉接 403
14.4.1 函數(shù)select和pselect 404
14.4.2 函數(shù)poll 408
14.5 異步I/O 410
14.5.1 System V異步I/O 410
14.5.2 BSD異步I/O 411
14.5.3 POSIX異步I/O 411
14.6 函數(shù)readv和writev 419
14.7 函數(shù)readn和writen 421
14.8 存儲映射I/O 422
14.9 小結 428
習題 428
第 15章 進程間通信 429
15.1 引言 429
15.2 管道 430
15.3 函數(shù)popen和pclose 436
15.4 協(xié)同進程 441
15.5 FIFO 445
15.6 XSI IPC 448
15.6.1 標識符和鍵 448
15.6.2 權限結構 449
15.6.3 結構限制 450
15.6.4 優(yōu)點和缺點 450
15.7 消息隊列 451
15.8 信號量 455
15.9 共享存儲 459
15.10 POSIX信號量 465
15.11 客戶進程-服務器進程屬性 470
15.12 小結 472
習題 472
第 16章 網(wǎng)絡IPC:套接字 474
16.1 引言 474
16.2 套接字描述符 474
16.3 尋址 477
16.3.1 字節(jié)序 477
16.3.2 地址格式 478
16.3.3 地址查詢 480
16.3.4 將套接字與地址關聯(lián) 486
16.4 建立連接 487
16.5 數(shù)據(jù)傳輸 491
16.6 套接字選項 502
16.7 帶外數(shù)據(jù) 504
16.8 非阻塞和異步I/O 505
16.9 小結 506
習題 506
第 17章 高級進程間通信 507
17.1 引言 507
17.2 UNIX域套接字 507
17.3 唯一連接 512
17.4 傳送文件描述符 518
17.5 open服務器進程第 1版 527
17.6 open服務器進程第 2版 533
17.7 小結 542
習題 542
第 18章 終端I/O 544
18.1 引言 544
18.2 綜述 544
18.3 特殊輸入字符 549
18.4 獲得和設置終端屬性 553
18.5 終端選項標志 554
18.6 stty命令 560
18.7 波特率函數(shù) 560
18.8 行控制函數(shù) 561
18.9 終端標識 562
18.10 規(guī)范模式 567
18.11 非規(guī)范模式 570
18.12 終端窗口大小 576
18.13 termcap、terminfo和curses 578
18.14 小結 578
習題 579
第 19章 偽終端 580
19.1 引言 580
19.2 概述 580
19.3 打開偽終端設備 585
19.4 函數(shù)pty_fork 588
19.5 pty程序 590
19.6 使用pty程序 595
19.7 高級特性 600
19.8 小結 601
習題 601
第 20章 數(shù)據(jù)庫函數(shù)庫 603
20.1 引言 603
20.2 歷史 603
20.3 函數(shù)庫 604
20.4 實現(xiàn)概述 605
20.5 集中式或非集中式 608
20.6 并發(fā) 610
20.7 構造函數(shù)庫 610
20.8 源代碼 611
20.9 性能 635
20.10 小結 639
習題 639
第 21章 與網(wǎng)絡打印機通信 640
21.1 引言 640
21.2 網(wǎng)絡打印協(xié)議 640
21.3 超文本傳輸協(xié)議HTTP 642
21.4 打印假脫機技術 643
21.5 源代碼 644
21.6 小結 684
習題 684
附錄A 函數(shù)原型 685
附錄B 其他源代碼 721
附錄C 部分習題答案 730
附錄參考書目 763

本目錄推薦

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