图书介绍
4.4BSD操作系统设计与实现PDF|Epub|txt|kindle电子书版本网盘下载
![4.4BSD操作系统设计与实现](https://www.shukui.net/cover/7/30784845.jpg)
- (美)麦库斯克等著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111366478
- 出版时间:2012
- 标注页数:399页
- 文件大小:190MB
- 文件页数:414页
- 主题词:计算机网络-操作系统,4.4 BSD
PDF下载
下载说明
4.4BSD操作系统设计与实现PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一部分 综述1
第1章BSD系统的历史和目标1
1.1 UNIX系统的历史1
1.1.1 UNIX系统的起源1
1.1.2 UNIX系统的研究与发展3
1.1.3 AT&T的UNX系统Ⅲ和系统Ⅴ5
1.1.4其他组织5
1.1.5关于BSD系统5
1.1.6 UNIX世界6
1.2 BSD和其他系统7
1.3 4BSD的设计目标9
1.3.1 4.2BSD设计目标9
1.3.2 4.3BSD设计目标10
1.3.3 4.4BSD设计目标10
1.4系统的发布11
参考资源13
第2章4.4BSD设计综述16
2.1 4.4 BSD模块与内核16
2.2内核结构17
2.3内核提供的服务19
2.4进程管理19
2.4.1信号20
2.4.2进程组和会话21
2.5内存管理22
2.5.1 BSD内存管理设计要点22
2.5.2.内核中的内存管理23
2.6 I/O系统24
2.6.1描述符与I/O24
2.6.2描述符管理25
2.6.3设备25
2.6.4套接字IPC26
2.6.5分散/聚集I/O27
2.6.6多文件系统支持27
2.7文件系统27
2.8文件库(filestore)30
2.9网络文件系统31
2.10终端32
2.11进程间通信32
2.12网络通信33
2.13网络实现33
2.14系统操作34
习题34
参考资源34
第3章 内核服务36
3.1内核组织36
3.1.1系统进程36
3.1.2系统入口36
3.1.3内核的运行时结构37
3.1.4内核的入口38
3.1.5内核的返回39
3.2系统调用39
3.2.1结果处理39
3.2.2系统调用的返回40
3.3陷阱和中断40
3.3.1陷阱40
3.3.2 I/O设备中断41
3.3.3软件中断41
3.4时钟中断42
3.4.1统计和进程调度42
3.4.2超时43
3.5内存管理服务44
3.6时间服务46
3.6.1标准时间47
3.6.2调整时间47
3.6.3外部表示47
3.6.4间隔时间47
3.7用户、组和其他标识符48
3.7.1主机标识符50
3.7.2进程组和会话50
3.8资源服务51
3.8.1进程优先级51
3.8.2资源利用51
3.8.3资源限制51
3.8.4文件系统配额52
3.9系统操作服务52
习题53
参考资源54
第二部分 进程55
第4章 进程管理55
4.1进程管理概述55
4.1.1多程序机制56
4.1.2调度56
4.2进程状态57
4.2.1进程结构58
4.2.2用户结构61
4.3上下文切换62
4.3.1进程状态63
4.3.2底层上下文切换63
4.3.3主动上下文切换63
4.3.4同步65
4.4进程调度67
4.4.1进程优先级的计算67
4.4.2进程优先级例程68
4.4.3进程运行队列和上下文切换69
4.5进程创建70
4.6进程终止72
4.7信号72
4.7.1与POSIX信号的比较74
4.7.2发送信号75
4.7.3传递信号77
4.8进程组和会话78
4.8.1会话79
4.8.2作业控制80
4.9进程调试81
习题83
参考资源84
第5章 内存管理85
5.1术语85
5.1.1进程与内存86
5.1.2分页86
5.1.3替换算法87
5.1.4工作集模型87
5.1.5交换88
5.1.6虚拟内存的优点88
5.1.7虚拟内存的硬件要求88
5.2 44BSD虚拟内存系统综述89
5.3内核内存管理91
5.3.1内核映射和子映射91
5.3.2内核地址空间的分配92
5.3.3内核内存分配93
5.4进程独立拥有的资源(Per-Process Resource)95
5.4.1 44BSD进程虚拟地址空间95
5.4.2缺页调度96
5.4.3映射对象97
5.4.4对象98
5.4.5页对象98
5.5共享内存99
5.5.1 mmap模型100
5.5.2共享映射102
5.5.3私有映射102
5.5.4压缩影子链104
5.5.5私有快照105
5.6新进程的创建106
5.6.1保留内核资源106
5.6.2复制用户地址空间107
5.6.3不采用复制技术创建新进程108
5.7文件的执行108
5.8进程地址空间的操作109
5.8.1进程大小的改变109
5.8.2文件映射110
5.8.3改变保护机制111
5.9进程的终止112
5.10分页器接口112
5.10.1 vnode分页器114
5.10.2设备分页器115
5.10.3交换分页器115
5.11分页117
5.12页面替换121
5.12.1换页参数122
5.12.2页面换出守护进程123
5.12.3交换124
5.12.4换入进程125
5.13可移植性126
5.13.1 pmap模块的角色128
5.13.2初始化和启动130
5.13.3映射的分配和释放132
5.13.4改变映射的访问和锁定属性134
5.13.5页表使用信息的管理135
5.13.6物理页面的初始化135
5.13.7内部数据结构的管理136
习题137
参考资源137
第三部分I/O系统139
第6章I/O系统综述139
6.1从用户到设备的I/O映射139
6.1.1设备驱动程序140
6.1.2 I/O队列141
6.1.3中断处理141
6.2块设备142
6.2.1块设备的入口点142
6.2.2磁盘I/O请求的排序143
6.2.3磁盘标签144
6.3字符设备145
6.3.1原始设备和物理I/O146
6.3.2面向字符的设备147
6.3.3字符设备驱动程序的入口点148
6.4描述符管理和服务148
6.4.1打开文件入口149
6.4.2对描述符的管理151
6.4.3文件描述符的锁定152
6.4.4描述符上的多路复用I/O操作154
6.4.5 select的实现155
6.4.6在内核中数据的移动157
6.5虚拟文件系统的接口159
6.5.1 vnode的内容159
6.5.2对vnode的操作160
6.5.3路径名翻译161
6.5.4导出文件系统服务162
6.6独立于文件系统的服务163
6.6.1名字缓存164
6.6.2缓冲区管理165
6.6.3缓冲区管理的实现167
6.7可堆叠的文件系统169
6.7.1简单文件系统层170
6.7.2联合安装的文件系统171
6.7.3其他的文件系统173
习题174
参考资源175
第7章 本地文件系统176
7.1文件系统的分层管理176
7.2索引节点的结构177
7.3命名180
7.3.1目录180
7.3.2在目录中查找名字181
7.3.3路径名转化182
7.3.4链接182
7.4配额185
7.5文件锁定187
7.6其他文件系统机制191
7.6.1大文件支持191
7.6.2文件标志192
习题193
参考资源193
第8章 本地文件库194
8.1文件库概述194
8.2 Berkeley快速文件系统196
8.2.1 Berkeley快速文件系统的组织197
8.2.2存储策略的优化198
8.2.3文件的读/写操作199
8.2.4文件系统参数化201
8.2.5布局策略202
8.2.6分配机制203
8.2.7块的成簇205
8.2.8同步操作207
8.3日志结构的文件系统208
8.3.1日志结构的文件系统组织209
8.3.2索引文件211
8.3.3读日志212
8.3.4写日志212
8.3.5块统计213
8.3.6缓存215
8.3.7目录操作215
8.3.8文件的创建216
8.3.9读写文件217
8.3.10文件系统清理217
8.3.11文件系统参数化219
8.3.12文件系统的崩溃恢复219
8.4基于内存的文件系统220
8.4.1基于内存的文件系统的组织221
8.4.2文件系统性能223
8.4.3展望223
习题224
参考资源225
第9章 网络文件系统227
9.1历史和概况227
9.2 NFS结构和操作229
9.2.1 NFS协议231
9.2.2 44BSD的NFS实现233
9.2.3客户端/服务器的交互236
9.2.4 RPC的传输问题236
9.2.5安全问题237
9.3提高性能的技术239
9.3.1租约241
9.3.2崩溃恢复244
习题245
参考资源246
第10章 终端处理248
10.1终端处理模式248
10.2行规程249
10.3用户接口250
10.4 tty数据结构251
10.5进程组、会话和终端控制253
10.6字符列表253
10.7 RS-232和调制解调器控制254
10.8终端操作255
10.8.1打开255
10.8.2输出行规程256
10.8.3输出的上半部257
10.8.4输出的下半部258
10.8.5输入的下半部258
10.8.6输入的上半部259
10.8.7 stop例程260
10.8.8 ioctl例程260
10.8.9调制解调器转换261
10.8.10关闭终端设备261
10.9其他的行规程262
10.9.1串行线路IP规程262
10.9.2图表行规程263
习题263
参考资源263
第四部分 通信265
第11章 进程间通信265
11.1进程间通信模型265
11.2实现结构和概述270
11.3内存管理271
11.3.1 mbufs271
11.3.2存储管理算法273
11.3.3 mbuf操作例程274
11.4数据结构275
11.4.1通信域275
11.4.2套接字276
11.4.3套接字地址278
11.5建立连接279
11.6数据传送281
11.6.1传送数据281
11.6.2接收数据283
11.6.3传递访问权限285
11.6.4在本地域传递访问权限286
11.7关闭套接字287
习题288
参考资源289
第12章 网络通信290
12.1内部结构290
12.1.1数据流291
12.1.2通信协议291
12.1.3网络接口293
12.2套接字到协议的接口297
12.2.1协议用户请求例程298
12.2.2内部请求300
12.2.3协议控制-输出例程300
12.3协议到协议的接口301
12.3.1 pr output301
12.3.2 pr_input301
12.3.3 pr_ctlinput301
12.4协议和网络接口之间的接口302
12.4.1数据包的传送302
12.4.2数据包的接收303
12.5路由305
12.5.1内核路由表306
12.5.2路由查找308
12.5.3路由重定向311
12.5.4路由表接口311
12.5.5用户级的路由策略312
12.5.6用户级路由接口:路由套接字312
12.6缓存和拥塞控制313
12.6.1协议缓存策略313
12.6.2队列限制314
12.7原始套接字314
12.7.1控制块314
12.7.2输入处理315
12.7.3输出处理315
12.8其他的网络子系统主题315
12.8.1带外数据316
12.8.2地址解析协议316
习题317
参考资源318
第13章 网络协议320
13.1 Internet网络协议320
13.1.1 Internet地址322
13.1.2子网322
13.1.3广播地址324
13.1.4 Internet多播324
13.1.5 Internet端口与关联325
13.1.6协议控制块325
13.2用户数据报协议(UDP)325
13.2.1初始化326
13.2.2输出327
13.2.3输入327
13.2.4控制操作328
13.3互联网协议(IP)328
13.3.1输出329
13.3.2输入330
13.3.3转发331
13.4传输控制协议(TCP )332
13.4.1 TCP连接状态333
13.4.2序列变量336
13.5 TCP算法337
13.5.1定时器338
13.5.2往返程时间的估计339
13.5.3连接建立340
13.5.4连接关闭341
13.6 TCP输入处理342
13.7 TCP输出处理344
13.7.1数据的发送345
13.7.2避免傻瓜窗口综合征346
13.7.3避免小数据包346
13.7.4延迟的确认及窗口更新347
13.7.5重发状态348
13.7.6慢启动348
13.7.7源抑制的处理349
13.7.8缓冲区与窗口大小调整349
13.7.9使用慢启动避免拥塞350
13.7.10快速重发351
13.8 Internet控制报文协议(ICMP )352
13.9 OSI实现中的问题353
13.10联网和进程间通信综述355
13.10.1通信通道的创建355
13.10.2数据的发送与接收356
13.10.3数据传送或接收的终止356
习题357
参考资源359
第五部分 系统操作361
第14章 系统启动361
14.1概述361
14.2引导362
14.3内核的初始化363
14.3.1汇编语言启动363
14.3.2机器相关初始化364
14.3.3消息缓冲区364
14.3.4系统数据结构364
14.4自动配置365
14.4.1设备的探测366
14.4.2设备连接367
14.4.3新的自动配置数据结构367
14.4.4新的自动配置函数368
14.4.5设备命名368
14.5独立于机器的初始化369
14.6用户级初始化371
14.6.1 /sbin/init371
14.6.2 /etc/rc372
14.6.3 /usr/libexe/getty372
14.6.4 /usr/bin/login372
14.7系统启动的相关话题373
14.7.1内核的配置373
14.7.2系统关机与自动重启373
14.7.3系统调试374
14.7.4同内核来回传递信息374
习题375
参考资源376
附录 术语表377