《Linux中TCP/IP协定实现及嵌入式套用》一书主要介绍Linux中TCP/IP协定的实现技术,研究讨论Linux中TCP/IP协定实现的基本原理,分析有关的原始码。在此基础上介绍了嵌入式系统与嵌入式网路设计的基本方法和实例。本书可作为从事嵌入式系统和嵌入式网路开发与套用科技人员的参考书,也可作为本科生与研究生的TCP/IP协定教学参考书。
基本介绍
- 书名:Linux中TCP/IP协定实现及嵌入式套用
- 作者:张曦煌
- 出版社:北京航空航天大学出版社
- 出版时间:2008
版权资讯
书 名: Linux中TCP/IP协定实现及嵌入式套用
ISBN: 9787811242041
开本: 16
定价: 39.00 元
内容简介
嵌入式系统和嵌入式网路近年来发展十分迅速,得到了越来越多的套用。Linux以及Linux中TCP/IP协定的开放原始码为实现嵌入式系统和嵌入式网路提供了很好的技术基础。本书介绍Linux中TCP/IP协定的实现技术,研究讨论Linux中TCP/IP协定实现的基本原理,分析有关的原始码。在此基础上介绍了嵌入式系统与嵌入式网路设计的基本方法和实例。
本书可作为从事嵌入式系统和嵌入式网路开发与套用科技人员的参考书,也可作为本科生与研究生的TCP/IP协定教学参考书。
目录
第1章嵌入式Internet概述
1.1嵌入式系统1
1.2Internet网路2
1.3嵌入式Internet技术3
1.4嵌入式作业系统与Linux5
1.5TCP/IP协定简介8
1.5.1TCP/IP协定8
1.5.2TCP/IP协定原理9
1.5.3Linux中TCP/IP协定的分层结构10
第2章Linux的核心技术
2.1系统初始化12
2.2进程16
2.2.1进程控制块16
2.2.2创建和撤消进程21
2.2.3执行程式21
2.2.4进程调度21
2.3核心同步机制25
2.3.1自旋锁26
2.3.2原子操作28
2.3.3信号量29
2.3.4底半处理、任务转包与软中断30
2.3.5定时器34
2.4系统调用36
2.4.1系统调用与软中断36
2.4.2系统调用表37
2.4.3系统调用的过程38
2.5任务等待伫列42
2.5.1相关的数据结构42
2.5.2等待伫列操作43
2.6中断与设备46
2.6.1中断控制器825947
2.6.2中断向量表IDT48
2.6.3中断服务程式的构建54
2.6.4与中断相关的数据结构与初始化57
2.6.5IRQ描述符58
2.6.6中断请求服务伫列59
2.6.7中断请求描述符数组的初始化60
2.6.8注册驱动程式的ISR61
2.6.9注销驱动程式的ISR65
2.7连线埠操作67
2.7.1I/O连线埠资源67
2.7.2I/O连线埠操作70
第3章网路编程与网路socket的实现
3.1Linux网路编程72
3.1.1套接口72
3.1.2网路编程函式74
3.1.3简单实例75
3.2socket系统调用78
3.3socket数据结构81
3.4套节字的初始化84
3.5socket函式86
3.5.1套接字创建sys_socket()86
3.5.2套接字绑定sys_bind()89
3.5.3套节字监听sys_listen()90
3.5.4sys_accept()91
3.5.5sys_connect()94
3.5.6sys_send()94
3.5.7sys_recv()97
3.6INET层的数据结构及其初始化99
3.6.1INET层的数据结构100
3.6.2INET的初始化108
3.7INET层函式110
3.7.1inet_create()110
3.7.2inet_bind()114
3.7.3inet_listen()116
3.7.4inet_accept()117
3.7.5inet_connect()118
3.7.6inet_sendmsg()121
3.7.7inet_recvmsg()121
第4章TCP/IP协定层
4.1TCP/IP协定栈的初始化123
4.1.1报文处理例程初始化及注册124
4.1.2函式ip_init()126
4.2数据报伫列126
4.2.1输入数据报伫列的Softnet_data数据结构127
4.2.2伫列的初始化128
4.2.3输出数据报排队130
4.2.4伫列接收数据报135
4.2.5process_backlog()函式137
4.2.6netif_receive_skb()函式139
4.3传输层多路分发和内部数据报路由141
第5章socket缓冲与记忆体分配
5.1Linux中的slab快取操作函式143
5.1.1slab分配机制143
5.1.2slab快取操作函式144
5.2Linux套接字缓冲(socketbuffer)151
5.3套接字缓冲的使用函式153
5.3.1套接字缓冲分配及释放的函式153
5.3.2複製及克隆套接字缓冲的函式156
5.3.3管理套接字缓冲列表的函式158
第6章TCP/UDP数据传送与接收
6.1TCP和UDP简介162
6.1.1UDP162
6.1.2TCP163
6.2关键数据结构166
6.3传输层初始化169
6.4发起连线170
6.4.1UDP协定发起连线170
6.4.2TCP协定发起连线172
6.5UDP的数据传送与接收174
6.5.1UDP的数据传送174
6.5.2UDP的数据接收178
6.6TCP时钟与可靠机制182
6.6.1TCP写定时器182
6.6.2TCP重传定时器函式183
6.6.3视窗探测定时器函式185
6.6.4TCP回响延迟定时器函式186
6.6.5TCP保持连线定时器函式188
6.7TCP数据传送190
6.8TCP数据接收197
6.8.1TCP接收处理函式tcp_v4_rcv()197
6.8.2TCP接收状态处理200
6.8.3连线状态下TCP数据段的处理205
6.8.4TCP套接字层接收210
第7章IP层
7.1IP层与路由概念217
7.1.1IP数据报217
7.1.2路由概念218
7.2IP层相关数据结构219
7.2.1IP数据报头219
7.2.2路由cache数据结构220
7.3路由cache处理函式223
7.3.1rt_garbage_collect()函式223
7.3.2路由cache处理其他函式226
7.4RPDB及FIB数据结构227
7.4.1路由表数据结构228
7.4.2FIB规则230
7.5路由234
7.5.1路由初始化234
7.5.2从IP层发出一个数据报235
7.5.3接收一个数据报到IP层237
7.6网路地址到物理地址的映射协定ARP243
7.6.1ARP协定运作机制244
7.6.2ARP数据结构244
7.6.3ARP协定初始化245
7.6.4接收并处理ARP报文248
7.7差错与控制报文ICMP253
7.7.1ICMP的数据结构254
7.7.2ICMP初始化254
7.7.3ICMP报文处理255
7.7.4传送ICMP报文256
第8章Linux网路设备
8.1网路设备数据结构258
8.2ne2000兼容网卡介绍263
8.2.1ne2000的暂存器264
8.2.2主要暂存器功能265
8.2.38039.h档案266
8.2.4数据接收与传送268
8.3网卡的初始化269
8.3.1net_dev_init()269
8.3.2ethif_probe()274
8.3.3ne_probe()276
8.3.4ne_probe1()277
8.3.5ethdev_init()284
8.3.6ether_setup()285
8.4打开与关闭286
8.4.1网卡打开ei_open()286
8.4.2网卡关闭函式ei_close()288
8.5数据传送288
8.5.1ei_start_xmit()288
8.5.2ne_block_output()292
8.5.3NS8390_trigger_send()295
8.6数据接收296
8.6.1ei_interrupt()297
8.6.2ei_receive()300
8.6.3ne_get_8390_hdr()304
8.6.4ne_block_input()305
8.6.5netif_rx()307
8.6.6netif_rx_schedule()309
第9章嵌入式系统与嵌入式网路
9.1ARM311
9.1.1概述311
9.1.2LPC2210312
9.1.3LPC2210结构313
9.1.4仿真和调试317
9.2嵌入式μClinux及其套用开发318
9.2.1嵌入式μClinux系统概况318
9.2.2开发工具319
9.2.3建立μClinux开发环境320
9.2.4在μClinux下开发应用程式321
9.3基于ARM的嵌入式网路系统的构建322
9.3.1GPIO323
9.3.2串口设计329
9.3.3网卡8019as的连线331
9.3.4串口网路伺服器与socket编程332
9.4基于无作业系统的嵌入式TCP/IP协定的实现335
9.4.1Socket的实现335
9.4.2数据结构的简化337
9.4.3数据传送339
9.4.4数据接收341
9.5基于GPRS的数据採集设计344
9.5.1GPRS通信原理及网路结构344
9.5.2GPRS无线数传模组TC35I345
9.5.3TC35I的GPRS网路操作346
9.5.4TC35I的GPRS网路程式实现346
参考文献
……