注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)網(wǎng)絡(luò)與數(shù)據(jù)通信網(wǎng)絡(luò)服務(wù)UNIX網(wǎng)絡(luò)編程 卷2 進(jìn)程間通信(第2版)

UNIX網(wǎng)絡(luò)編程 卷2 進(jìn)程間通信(第2版)

UNIX網(wǎng)絡(luò)編程 卷2 進(jìn)程間通信(第2版)

定 價:¥109.00

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

ISBN: 9787115517807 出版時間: 2019-10-01 包裝:
開本: 16開 頁數(shù): 457 字?jǐn)?shù):  

內(nèi)容簡介

  本書是一部UNIX 網(wǎng)絡(luò)編程的經(jīng)典之作!進(jìn)程間通信(IPC)幾乎是所有Unix 程序性能的關(guān)鍵,理解IPC 也是理解如何開發(fā)不同主機間網(wǎng)絡(luò)應(yīng)用程序的必要條件。本書從對Posix IPC 和System V IPC 的內(nèi)部結(jié)構(gòu)開始討論,全面深入地介紹了4 種IPC 形式:消息傳遞(管道、FIFO、消息隊列)、同步(互斥鎖、條件變量、讀寫鎖、文件與記錄鎖、信號量)、共享內(nèi)存(匿名共享內(nèi)存、具名共享內(nèi)存)及遠(yuǎn)程過程調(diào)用(Solaris門、Sun RPC)。附錄中給出了測量各種IPC 形式性能的方法。 本書內(nèi)容詳盡且具**性,幾乎每章都提供精選的習(xí)題,并提供了部分習(xí)題的答案,是網(wǎng)絡(luò)研究和開發(fā)人員理想的參考書。

作者簡介

  W. 理查德·史蒂文斯(W. Richard Stevens)國際知名的UNIX 和網(wǎng)絡(luò)專家,備受贊譽的技術(shù)作家。他1951 年2 月5 日出生于贊比亞,后隨父母回到美國。中學(xué)時就讀于弗吉尼亞菲什伯恩軍事學(xué)校,1973 年獲得密歇根大學(xué)航空和航天工程學(xué)士學(xué)位。1975 年至1982 年,他在亞利桑那州圖森市的基特峰國家天文臺從事計算機編程工作,業(yè)余時間喜愛飛行運動,做過兼職飛行教練。這期間他分別在1978 年和1982 年獲得亞利桑那大學(xué)系統(tǒng)工程碩士和博士學(xué)位。此后他去康涅狄格州紐黑文的健康系統(tǒng)國際公司任主管計算機服務(wù)的副總裁。1990 年他回到圖森,從事專業(yè)技術(shù)寫作和咨詢工作。寫下了多種經(jīng)典的傳世之作,包括《TCP/IP 詳解》(三卷)、《UNIX 環(huán)境高級編程》和《UNIX網(wǎng)絡(luò)編程》(兩卷)。Stevens 于1999 年9 月1日去世,年僅48 歲。2000 年他被國際**機構(gòu)USENIX 追授“終身成就獎”。

圖書目錄

第 一部分 簡介
第 1章 簡介 2
1.1 概述 2
1.2 進(jìn)程、線程與信息共享 3
1.3 IPC對象的持續(xù)性 4
1.4 名字空間 5
1.5 fork、exec和exit對IPC對象的
影響 7
1.6 出錯處理:包裹函數(shù) 8
1.7 Unix標(biāo)準(zhǔn) 9
1.8 書中IPC例子索引表 11
1.9 小結(jié) 13
習(xí)題 13
第 2章 Posix IPC 14
2.1 概述 14
2.2 IPC名字 14
2.3 創(chuàng)建與打開IPC通道 16
2.4 IPC權(quán)限 18
2.5 小結(jié) 19
習(xí)題 19
第3章 System V IPC 20
3.1 概述 20
3.2 key_t鍵和ftok函數(shù) 20
3.3 ipc_perm結(jié)構(gòu) 22
3.4 創(chuàng)建與打開IPC通道 22
3.5 IPC權(quán)限 24
3.6 標(biāo)識符重用 25
3.7 ipcs和ipcrm程序 27
3.8 內(nèi)核限制 27
3.9 小結(jié) 28
習(xí)題 29
第二部分 消息傳遞
第4章 管道和FIFO 32
4.1 概述 32
4.2 一個簡單的客戶-服務(wù)器例子 32
4.3 管道 32
4.4 全雙工管道 37
4.5 popen和pclose函數(shù) 39
4.6 FIFO 40
4.7 管道和FIFO的額外屬性 44
4.8 單個服務(wù)器,多個客戶 46
4.9 對比迭代服務(wù)器與并發(fā)服務(wù)器 50
4.10 字節(jié)流與消息 51
4.11 管道和FIFO限制 55
4.12 小結(jié) 56
習(xí)題 57
第5章 Posix消息隊列 58
5.1 概述 58
5.2 mq_open、mq_close和mq_unlink
函數(shù) 59
5.3 mq_getattr和mq_setattr函數(shù) 61
5.4 mq_send和mq_receive函數(shù) 64
5.5 消息隊列限制 67
5.6 mq_notify函數(shù) 68
5.7 Posix實時信號 78
5.8 使用內(nèi)存映射I/O實現(xiàn)Posix消息隊列 85
5.9 小結(jié) 101
習(xí)題 101
第6章 System V消息隊列 103
6.1 概述 103
6.2 msgget函數(shù) 104
6.3 msgsnd函數(shù) 104
6.4 msgrcv函數(shù) 105
6.5 msgctl函數(shù) 106
6.6 簡單的程序 107
6.7 客戶-服務(wù)器例子 112
6.8 復(fù)用消息 113
6.9 消息隊列上使用select和poll 121
6.10 消息隊列限制 122
6.11 小結(jié) 124
習(xí)題 124
第三部分 同步
第7章 互斥鎖和條件變量 126
7.1 概述 126
7.2 互斥鎖:上鎖與解鎖 126
7.3 生產(chǎn)者-消費者問題 127
7.4 對比上鎖與等待 131
7.5 條件變量:等待與信號發(fā)送 132
7.6 條件變量:定時等待和廣播 136
7.7 互斥鎖和條件變量的屬性 136
7.8 小結(jié) 139
習(xí)題 139
第8章 讀寫鎖 140
8.1 概述 140
8.2 獲取與釋放讀寫鎖 140
8.3 讀寫鎖屬性 141
8.4 使用互斥鎖和條件變量實現(xiàn)讀寫鎖 142
8.5 線程取消 148
8.6 小結(jié) 153
習(xí)題 153
第9章 記錄上鎖 154
9.1 概述 154
9.2 對比記錄上鎖與文件上鎖 157
9.3 Posix fcntl記錄上鎖 158
9.4 勸告性上鎖 162
9.5 強制性上鎖 164
9.6 讀出者和寫入者的優(yōu)先級 166
9.7 啟動一個守護進(jìn)程的唯一副本 170
9.8 文件作鎖用 171
9.9 NFS上鎖 173
9.10 小結(jié) 173
習(xí)題 174
第 10章 Posix信號量 175
10.1 概述 175
10.2 sem_open、sem_close和sem_unlink函數(shù) 179
10.3 sem_wait和sem_trywait函數(shù) 180
10.4 sem_post和sem_getvalue函數(shù) 180
10.5 簡單的程序 181
10.6 生產(chǎn)者-消費者問題 186
10.7 文件上鎖 190
10.8 sem_init和sem_destroy函數(shù) 191
10.9 多個生產(chǎn)者,單個消費者 193
10.10 多個生產(chǎn)者,多個消費者 196
10.11 多個緩沖區(qū) 199
10.12 進(jìn)程間共享信號量 205
10.13 信號量限制 206
10.14 使用FIFO實現(xiàn)信號量 206
10.15 使用內(nèi)存映射I/O實現(xiàn)信號量 210
10.16 使用System V信號量實現(xiàn)Posix信號量 218
10.17 小結(jié) 224
習(xí)題 225
第 11章 System V 信號量 226
11.1 概述 226
11.2 semget函數(shù) 227
11.3 semop函數(shù) 229
11.4 semctl函數(shù) 231
11.5 簡單的程序 232
11.6 文件上鎖 237
11.7 信號量限制 238
11.8 小結(jié) 242
習(xí)題 242
第四部分 共享內(nèi)存區(qū)
第 12章 共享內(nèi)存區(qū)介紹 244
12.1 概述 244
12.2 mmap、munmap和msync函數(shù) 247
12.3 在內(nèi)存映射文件中給計數(shù)器持續(xù)加1 250
12.4 4.4BSD匿名內(nèi)存映射 254
12.5 SVR4 /dev/zero內(nèi)存映射 255
12.6 訪問內(nèi)存映射的對象 255
12.7 小結(jié) 259
習(xí)題 260
第 13章 Posix共享內(nèi)存區(qū) 261
13.1 概述 261
13.2 shm_open和shm_unlink函數(shù) 261
13.3 ftruncate和fstat函數(shù) 262
13.4 簡單的程序 263
13.5 給一個共享的計數(shù)器持續(xù)加1 267
13.6 向一個服務(wù)器發(fā)送消息 270
13.7 小結(jié) 275
習(xí)題 275
第 14章 System V共享內(nèi)存區(qū) 276
14.1 概述 276
14.2 shmget函數(shù) 276
14.3 shmat函數(shù) 277
14.4 shmdt函數(shù) 277
14.5 shmctl函數(shù) 277
14.6 簡單的程序 278
14.7 共享內(nèi)存區(qū)限制 281
14.8 小結(jié) 282
習(xí)題 283
第五部分 遠(yuǎn)程過程調(diào)用
第 15章 門 286
15.1 概述 286
15.2 door_call函數(shù) 291
15.3 door_create函數(shù) 292
15.4 door_return函數(shù) 293
15.5 door_cred函數(shù) 294
15.6 door_info函數(shù) 294
15.7 例子 295
15.8 描述符傳遞 306
15.9 door_sever_create函數(shù) 310
15.10 door_bind、door_unbind和door_revoke函數(shù) 315
15.11 客戶或服務(wù)器的過早終止 315
15.12 小結(jié) 321
習(xí)題 322
第 16章 Sun RPC 323
16.1 概述 323
16.2 多線程化 330
16.3 服務(wù)器捆綁 333
16.4 認(rèn)證 336
16.5 超時和重傳 338
16.6 調(diào)用語義 342
16.7 客戶或服務(wù)器的過早終止 343
16.8 XDR:外部數(shù)據(jù)表示 345
16.9 RPC分組格式 361
16.10 小結(jié) 365
習(xí)題 366
后記 368
附錄A 性能測量 371
附錄B 線程入門 406
附錄C 雜湊的源代碼 409
附錄D 精選習(xí)題解答 417
參考文獻(xiàn) 433
索引 435

本目錄推薦

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