注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)操作系統(tǒng)LinuxLinux網(wǎng)絡(luò)編程技術(shù)

Linux網(wǎng)絡(luò)編程技術(shù)

Linux網(wǎng)絡(luò)編程技術(shù)

定 價:¥48.00

作 者: 天夜創(chuàng)作室編著
出版社: 人民郵電出版社
叢編項: Linux專家之路
標(biāo) 簽: UNIX操作系統(tǒng) 程序設(shè)計

ISBN: 9787115097279 出版時間: 2001-01-01 包裝: 平裝
開本: 26cm+光盤1片 頁數(shù): 444 字?jǐn)?shù):  

內(nèi)容簡介

  本書詳盡而細致地介紹了在Linux操作系統(tǒng)下進行網(wǎng)絡(luò)編程所需要的各種知識,對網(wǎng)絡(luò)編程的模型和原理、套接字函數(shù)的使用方法、多線程和多進程的結(jié)構(gòu)以及大型網(wǎng)絡(luò)應(yīng)用程序的設(shè)計方法等進行了全面的講解。書中還穿插了大量的實例程序,并配以說明,更加方便讀者的學(xué)習(xí)和理解。本書內(nèi)容的精心安排、簡潔的措辭、豐富的實例可以使初學(xué)者迅速掌握Linux網(wǎng)絡(luò)編程的技術(shù),同時,Linux的高級程序員也可以從中得到一些啟示,從而最大限度地發(fā)揮Linux程序的潛能。本書適用于各種Linux網(wǎng)絡(luò)程序的開發(fā)維護人員。

作者簡介

暫缺《Linux網(wǎng)絡(luò)編程技術(shù)》作者簡介

圖書目錄

第1篇 基礎(chǔ)知識篇

第1章 Linux操作系統(tǒng)概述 3
1.1 Linux操作系統(tǒng)簡介 4
1.1.1 Linux的來源 4
1.1.2 Linux的特征 5
1.2 常用的Linux命令 6
1.2.1 操作目錄和處理文件 6
1.2.2 正文編輯命令vi 9
1.2.3 進程處理 11
1.2.4 安全與權(quán)限設(shè)置 12
1.2.5 基本的網(wǎng)絡(luò)命令 14
1.2.6 聯(lián)機幫助 16
1.3 文件系統(tǒng) 17
1.3.1 Linux文件系統(tǒng)概述 18
1.3.2 Linux文件系統(tǒng)的組成 18
1.3.3 文件系統(tǒng)管理 20
1.3.4 虛擬文件系統(tǒng)VFS 22
1.3.5 文件系統(tǒng)的相關(guān)調(diào)用 25
1.3.6 安裝和卸載文件系統(tǒng) 27
1.4 Linux系統(tǒng)的安全性 29
1.4.1 安裝和啟動安全 29
1.4.2 用戶賬號與口令 30
1.4.3 文件與系統(tǒng)備份 31
1.4.4 網(wǎng)絡(luò)服務(wù)的安全 32
1.5 小結(jié)與練習(xí) 33
1.5.1 小結(jié) 33
1.5.2 習(xí)題與思考 33

第2章 TCP/IP協(xié)議 35
2.1 網(wǎng)絡(luò)傳輸分層 36
2.1.1 OSI參考模型 36
2.1.2 TCP/IP協(xié)議簇 37
2.2 IP協(xié)議 39
2.2.1 IP報文格式 40
2.2.2 IP地址 42
2.2.3 子網(wǎng)與網(wǎng)絡(luò)掩碼 44
2.2.4 IP路由 45
2.2.5 IP層的其他控制協(xié)議 46
2.3 差錯和控制報文協(xié)議ICMP 47
2.4 TCP協(xié)議 49
2.4.1 TCP傳輸原理 49
2.4.2 傳輸層端口 50
2.4.3 TCP格式 50
2.4.4 建立一個TCP連接 53
2.4.5 TCP序列號預(yù)測 53
2.5 UDP協(xié)議 54
2.5.1 UDP協(xié)議簡介 54
2.5.2 何時使用UDP協(xié)議 55
2.6 小結(jié)與練習(xí) 56
2.6.1 小結(jié) 56
2.6.2 習(xí)題與思考 56

第3章 網(wǎng)絡(luò)編程基礎(chǔ) 57
3.1 客戶端與服務(wù)器通信模型 58
3.2 套接字編程基礎(chǔ) 59
3.2.1 套接字簡介 59
3.2.1 套接字網(wǎng)絡(luò)編程原理 60
3.2.3 基本套接字函數(shù) 62
3.3 完整的讀寫函數(shù) 72
3.4 數(shù)據(jù)的傳遞 76
3.4.1 傳遞整形數(shù)據(jù)示例 76
3.4.2 傳遞字符串?dāng)?shù)據(jù)示例 81
3.4.3 數(shù)據(jù)傳遞的格式問題 85
3.5 小結(jié)與練習(xí) 85
3.5.1 小結(jié) 85
3.5.2 習(xí)題與思考 86

第4章 進程控制 87
4.1 進程的概念 88
4.1.1 程序與進程 88
4.1.2 進程控制塊PCB 89
4.1.3 進程的標(biāo)志 89
4.1.4 多進程程序的特點 92
4.2 用fork創(chuàng)建進程 93
4.2.1 Linux系統(tǒng)描述進程的數(shù)據(jù)結(jié)構(gòu) 93
4.2.2 fork調(diào)用完成的操作 94
4.2.3 子進程與父進程 95
4.2.4 一個fork調(diào)用的簡單實例 96
4.2.5 fork調(diào)用對文件的共享存取 97
4.3 和進程相關(guān)的系統(tǒng)調(diào)用 101
4.3.1 Linux系統(tǒng)調(diào)用簡介 101
4.3.2 exec系統(tǒng)調(diào)用 101
4.3.3 system函數(shù)調(diào)用 104
4.3.4 wait函數(shù)調(diào)用 104
4.3.5 waitpid函數(shù)調(diào)用 105
4.3.6 setpgrp函數(shù)調(diào)用 107
4.3.7 signal函數(shù)調(diào)用 107
4.3.8 kill函數(shù)調(diào)用 109
4.3.9 alarm系統(tǒng)調(diào)用 110
4.3.10 exit函數(shù)調(diào)用 111
4.4 守護進程 112
4.5 多進程編程的技巧 114
4.5.1 程序結(jié)構(gòu)問題 114
4.5.2 選擇主體分叉點 114
4.5.3 進程間關(guān)系處理 114
4.5.4 進程間通信問題 115
4.6 小結(jié)與練習(xí) 115
4.6.1 小結(jié) 115
4.6.2 習(xí)題與思考 115

第5章 域名系統(tǒng)與套接字選項 117
5.1 域名系統(tǒng)簡介 118
5.1.1 域名 119
5.1.2 名稱服務(wù)器 120
5.1.3 DNS客戶/服務(wù)器機制 120
5.2 域名和IP地址的獲取 121
5.2.1 通過域名獲得IP地址 121
5.2.2 通過IP地址獲取域名信息 123
5.2.3 獲取本地主機的域名地址 125
5.2.4 獲取套接字本地名和相連的端地址 126
5.2.5 internet地址操作的函數(shù)調(diào)用 129
5.3 端口號和服務(wù)名的獲取 130
5.3.1 通過服務(wù)名獲取端口號 130
5.3.2 通過端口號獲取服務(wù)名 131
5.4 其他網(wǎng)絡(luò)相關(guān)信息的獲取 132
5.4.1 getprotoent函數(shù)調(diào)用 132
5.4.2 getservent函數(shù)調(diào)用 134
5.5 套接字選項 136
5.4.1 函數(shù)getsockopt和setsockopt 136
5.4.2 通用套接字選項 137
5.4.3 函數(shù)fcntl和ioctl 141
5.5 小結(jié)與練習(xí) 142
5.5.1 小結(jié) 142
5.5.2 習(xí)題與思考 143

第6章 UDP數(shù)據(jù)報編程 145
6.1 UDP數(shù)據(jù)報編程概述 146
6.2 recvfrom和sendto函數(shù) 147
6.3 UDP服務(wù)器的工作特點 149
6.4 UDP客戶機的工作特點 152
6.5 UDP套接字的連接 156
6.5.1 UDP套接字如何建立連接 156
6.5.2 數(shù)據(jù)報發(fā)送后情況 158
6.5.3 連接的重設(shè)與取消 158
6.6 UDP應(yīng)用程序示例 159
6.6.1 發(fā)送和接收指定的數(shù)據(jù)報實例 159
6.6.2 OICQ的實現(xiàn)原理 163
6.7 UDP編程的一些常見問題 166
6.7.1 UDP與TCP的比較 166
6.7.2 UDP缺乏流量控制 166
6.7.3 數(shù)據(jù)報的丟失問題 167
6.7.4 數(shù)據(jù)的排序問題 167
6.8 小結(jié)與練習(xí) 167
6.8.1 小結(jié) 167
6.8.2 習(xí)題與思考 168

第2篇 應(yīng)用提高篇

第7章 進程間通信與同步 171
7.1 信號處理 172
7.1.1 信號的概念 172
7.1.2 Linux系統(tǒng)支持的信號集 172
7.1.3 信號的捕獲與處理 174
7.1.4 信號掩碼 176
7.1.5 sigaction系統(tǒng)調(diào)用 177
7.1.6 pause系統(tǒng)調(diào)用 179
7.2 管道 179
7.2.1 管道的概念 179
7.2.2 創(chuàng)建管道 180
7.2.3 其他相關(guān)的系統(tǒng)調(diào)用 181
7.3 消息隊列 183
7.3.1 消息隊列的數(shù)據(jù)結(jié)構(gòu) 183
7.3.2 有關(guān)的系統(tǒng)調(diào)用 184
7.4 共享內(nèi)存 188
7.4.1 共享內(nèi)存的創(chuàng)建 189
7.4.2 有關(guān)的系統(tǒng)調(diào)用 191
7.5 信號量 194
7.5.1 信號量的基本概念 194
7.5.2 POSIX無名信號量 195
7.5.3 system V信號量 196
7.5.4 用信號量解決互斥問題 201
7.6 小結(jié)與練習(xí) 204
7.6.1 小結(jié) 204
7.6.2 習(xí)題與思考 205

第8章 高級套接字函數(shù) 207
8.1 函數(shù)recv和send 208
8.1.1 send的用法 208
8.1.2 recv的用法 209
8.2 函數(shù)readv和writev 211
8.3 函數(shù)recvfrom和sendto 214
8.4 函數(shù)recvmsg和sendmsg 214
8.5 套接字的關(guān)閉 216
8.5.1 用close函數(shù)關(guān)閉套接字 216
8.5.2 shutdown函數(shù)的使用 216
8.6 小結(jié)與練習(xí) 218
8.6.1 小結(jié) 218
8.6.2 習(xí)題與思考 218

第9章 系統(tǒng)I/O與服務(wù)器模型 219
9.1 系統(tǒng)I/O模型簡介 220
9.2 阻塞與非阻塞 221
9.2.1 阻塞套接字的特點 221
9.2.2 阻塞式I/O實現(xiàn)超時控制 226
9.2.3 非阻塞套接字 227
9.3 多路復(fù)用的I/O模型 231
9.3.1 多路復(fù)用簡介 231
9.3.2 select函數(shù) 232
9.3.3 多路復(fù)用I/O的應(yīng)用實例 234
9.4 信號驅(qū)動的I/O模型 244
9.5 創(chuàng)建Linux網(wǎng)絡(luò)服務(wù)器 246
9.5.1 TCP循環(huán)服務(wù)器 246
9.5.2 TCP并發(fā)服務(wù)器 247
9.5.3 UDP循環(huán)服務(wù)器 247
9.5.4 UDP并發(fā)服務(wù)器 248
9.5.5 多路復(fù)用I/O并發(fā)服務(wù)器 249
9.5.6 一個TCP并發(fā)服務(wù)器實例 249
9.6 小結(jié)與練習(xí) 252
9.6.1 小結(jié) 252
9.6.2 習(xí)題與思考 252

第10章 帶外數(shù)據(jù) 253
10.1 帶外數(shù)據(jù)概述 254
10.2 帶外數(shù)據(jù)的發(fā)送與接收 255
10.2.1 帶外數(shù)據(jù)標(biāo)志 255
10.2.2 發(fā)送帶外數(shù)據(jù) 256
10.2.3 接收帶外數(shù)據(jù) 257
10.2.4 應(yīng)用程序?qū)鈹?shù)據(jù)的處理 259
10.2.5 帶外數(shù)據(jù)的覆蓋 259
10.3 發(fā)送帶外數(shù)據(jù)應(yīng)用實例 260
10.4 幾種接收帶外數(shù)據(jù)的方法 263
10.4.1 通過信號SIGURG接收帶外數(shù)據(jù) 263
10.4.2 通過多路復(fù)用模型接收帶外數(shù)據(jù) 267
10.4.3 通過檢測帶外標(biāo)識接收帶外數(shù)據(jù) 269
10.5 帶外數(shù)據(jù)的覆蓋實例 273
10.6 小結(jié)與練習(xí) 278
10.6.1 小結(jié) 278
10.6.2 習(xí)題與思考 279

第3篇 深入實例篇

第11章 多線程編程 283
11.1 線程的基本概念 284
11.1.1 什么是線程 285
11.1.2 采用多線程的優(yōu)點 285
11.1.3 線程的結(jié)構(gòu)一覽 286
11.1.4 多線程的標(biāo)準(zhǔn) 288
11.2 線程的相關(guān)調(diào)用 289
11.2.1 創(chuàng)建線程的函數(shù) 289
11.2.2 退出線程的函數(shù) 290
11.2.3 創(chuàng)建線程的簡單實例 290
11.2.4 其他相關(guān)的函數(shù)調(diào)用 292
11.3 線程間的互斥 298
11.3.1 線程互斥的概念 298
11.3.2 相關(guān)的函數(shù)調(diào)用 299
11.4 線程的同步 303
11.4.1 線程同步的概念 303
11.4.2 相關(guān)的函數(shù)調(diào)用 303
11.5 線程的特定數(shù)據(jù)區(qū) 307
11.5.1 線程特定數(shù)據(jù)區(qū)概念 307
11.5.2 相關(guān)的函數(shù)調(diào)用 308
11.5.3 線程特定數(shù)據(jù)使用的方法 310
11.6 一個多線程掃描端口的實例 311
11.7 小結(jié)與練習(xí) 316
11.7.1 小結(jié) 316
11.7.2 習(xí)題與思考 316

第12章 原始套接字編程 319
12.1 原始套接字概述 320
12.2 創(chuàng)建原始套接字 320
12.3 發(fā)送和接收數(shù)據(jù)包 322
12.4 產(chǎn)生欺騙的IP數(shù)據(jù)包 323
12.5 Ping應(yīng)用程序分析 327
12.5.1 Ping命令的功能 327
12.5.2 Ping程序的設(shè)計實現(xiàn) 328
12.5.3 Ping命令攻擊目標(biāo)機器 334
12.6 小結(jié)與練習(xí) 337
12.6.1 小結(jié) 337
12.6.2 習(xí)題與思考 337

第13章 綜合實例——網(wǎng)絡(luò)業(yè)務(wù)系統(tǒng)模擬 339
13.1 銀行業(yè)務(wù)系統(tǒng)背景 340
13.1.1 銀行業(yè)務(wù)系統(tǒng)遵循的原則 340
13.1.2 銀行業(yè)務(wù)系統(tǒng)的特點 340
13.2 總體設(shè)計方案 341
13.2.1 系統(tǒng)構(gòu)成 341
13.2.2 功能說明 342
13.3 詳細設(shè)計方案(網(wǎng)絡(luò)編程部分) 343
13.3.1 系統(tǒng)網(wǎng)絡(luò)拓撲結(jié)構(gòu)圖 343
13.3.2 程序流程介紹 344
13.3.3 功能模塊的劃分 345
13.4 源代碼解析 346
13.4.1 相關(guān)的頭文件 346
13.4.2 公用函數(shù)的說明 349
13.4.3 地市服務(wù)器通信模塊 361
13.4.4 與對方前置機通信模塊 378
13.4.5 前置機處理模塊 395
13.5 小結(jié)與練習(xí) 417
13.5.1 小結(jié) 417
13.5.2 習(xí)題與思考 418

附錄 部分習(xí)題參考答案 419

本目錄推薦

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