Solaris内核结构PDF电子书下载
- 电子书积分:15 积分如何计算积分?
- 作 者:(美)Jim Mauro,(美)Richard McDougall著;冯锐等译
- 出 版 社:北京:机械工业出版社
- 出版年份:2001
- ISBN:7111092929
- 页数:490 页
第一部分 Solaris内核简介 1
第1章 Solaris入门 1
1.1 Solaris简史 1
1.2 关键的不同之处 4
1.3 内核概述 6
1.3.1 Solaris内核体系结构 6
1.3.2 内核的模块化实现 7
1.4 进程、线程和调度 8
1.4.1 两级线程模型 9
1.4.2 全局进程优先级和调度 10
1.5 进程间通信 11
1.5.1 传统的UNIX IPC 11
1.5.2 System V IPC 11
1.5.3 POSIX IPC 12
1.5.4 高级Solaris IPC 12
1.6 信号 12
1.7 存储管理 12
1.7.1 全局内存分配 13
1.7.2 内核存储管理 14
1.8 文件和文件系统 14
1.8.1 文件描述符和文件系统调用 15
1.8.2 虚拟文件系统结构 15
1.9 I/O体系结构 17
第2章 内核服务 18
2.1 访问内核服务 18
2.2.1 上下文 19
2.2 进入内核模式 19
2.2.2 内核线程和中断上下文 20
2.2.3 UltraSPARC Ⅰ Ⅱ陷阱 20
2.3 中断 26
2.3.1 中断优先级 26
2.3.2 中断监控 30
2.3.3 处理器内部中断和交叉调用 30
2.4 系统调用 31
2.4.1 一般的系统调用 31
2.4.2 快速陷阱系统调用 32
2.5.1 Solaris 2.6和7的标注表 33
2.5 内核标注表 33
2.5.2 Solaris 2.5.1标注表 36
2.6 系统时钟 38
2.6.1 进程执行时间的统计 39
2.6.2 高频时钟中断 40
2.6.3 高频计时器 40
2.6.4 日期时间时钟 40
3.2 并行系统体系结构 42
3.1 同步 42
第3章 内核同步原语 42
3.3 加锁和同步的硬件考虑 45
3.4 关于同步对象的介绍 48
3.4.1 同步过程 49
3.4.2 同步对象操作向量 49
3.5 互斥锁 51
3.5.1 概述 51
3.5.2 Solaris 7互斥锁的实现 53
3.6.1 Solaris 7中的读/写锁 59
3.6 读/写锁 59
3.6.2 Solaris 2.6中RW锁的差异 62
3.6.3 Solaris 2.5.1中的RW锁的差异 62
3.7 旋转栅门和优先级继承 64
3.7.1 Solaris 7中的旋转栅门 65
3.7.2 Solaris 2.5.1和2.6中的旋转栅门 67
3.8 调度锁 70
3.9 内核信号量 72
4.1 内核的目录层次 75
第4章 内核引导和初始化 75
4.2 内核引导和初始化 77
4.2.1 加载引导块 78
4.2.2 加载ufsboot 79
4.2.3 定位核心内核映像和链接 79
4.2.4 加载内核模块 79
4.2.5 创建内核结构、资源和组件 80
4.2.6 完成引导过程 84
4.2.7 引导过程中创建系统内核线程 84
4.3 内核模块的加载和链接 84
5.1 为什么需要虚拟内存系统 91
第5章 Solaris内存体系结构 91
第二部分 Solaris内存管理 91
5.2 模块化的实现 94
5.3 虚拟地址空间 94
5.3.1 可执行代码和库的共享 96
5.3.2 SPARC地址空间 96
5.3.3 Intel芯片地址空间的布局 98
5.3.4 进程内存分配 98
5.3.6 地址空间管理 100
5.3.5 栈 100
5.3.7 虚拟内存保护模式 103
5.3.8 地址空间的页错误 103
5.4 内存的段 105
5.4.1 vnode段:seg_vn 108
5.4.2 写入时拷贝 111
5.4.3 页保护与通知 112
5.5 匿名内存 112
5.5.1 匿名内存层 114
5.5.2 Swapfs层 115
5.5.3 匿名内存统计 119
5.6 虚拟内存观测点 121
5.7 全局页管理 123
5.7.1 页——Solaris内存的基本单元 123
5.7.2 页的Hash列表 124
5.7.3 特定MMU的页结构 125
5.7.4 物理页列表 126
5.7.5 页级函数接口 127
5.7.7 页面大小 128
5.7.6 页的中止 128
5.7.8 页的分配 129
5.8 页扫描程序 132
5.8.1 页扫描程序的操作 132
5.8.2 出页算法和参数 133
5.8.3 共享库的优化 135
5.8.4 优先级分页算法 135
5.8.5 页扫描程序的实现 137
5.8.6 内存调度程序 140
5.9 硬件地址转换层 140
5.9.1 虚拟内存上下文和地址空间 142
5.9.2 UltraSPARC-Ⅰ和Ⅱ型的HAT 143
5.9.3 地址空间标识符 146
5.9.4 大页面 148
第6章 内核内存 151
6.1 内核虚拟地址规划 151
6.1.1 内核地址空间 151
6.1.5 可加载的内核模块正文和数据 152
6.1.4 SPARC V8和V9内核的核心程序 152
6.1.3 虚拟内存数据结构 152
6.1.2 内核正文段和数据段 152
6.1.6 内核地址空间和段 155
6.2 内核内存的分配 156
6.2.1 内核映射 156
6.2.2 资源映射分配程序 157
6.2.3 内核内存段驱动程序 159
6.2.4 内核内存片分配程序 160
7.1.2 内核内存 172
7.1.1 物理内存总数 172
第7章 内存的监控 172
7.1 内存监控的简单介绍 172
7.1.3 空闲内存 173
7.1.4 文件系统缓存内存 173
7.1.5 内存不足的检测 173
7.1.6 交换空间 174
7.2 内存监控工具 175
7.3 vmstat命令 175
7.3.1 空闲内存 176
7.3.4 进程内存的使用情况,ps和pmap命令 177
7.3.2 交换空间 177
7.3.3 页调度计数器 177
7.4 MemTool:没有绑定的内存工具 180
7.4.1 Memtool的实用程序 180
7.4.2 命令行工具 180
7.4.3 MemTool的图形用户界面 182
7.5 其他内存工具 185
7.5.1 运行空间的监视程序:wsm 186
7.5.2 一个扩充vmstat的命令:memstat 186
第8章 Solaris多线程的进程体系结构 189
8.1 Solaris进程简介 189
第三部分 线程、进程和IPC 189
8.1.1 进程的体系结构 190
8.1.2 进程映像 193
8.2 进程结构 195
8.2.1 进程结构 195
8.2.2 用户区 205
8.2.3 轻量级进程 209
8.2.4 内核线程 210
8.3.1 进程限制 213
8.3 内核进程表 213
8.3.2 LWP限制 215
8.4 进程创建 216
8.5 进程终止 223
8.5.1 LWP/kthead模型 224
8.5.2 deathrow 225
8.6 Procfs——进程文件系统 226
8.6.1 Procfs的实现 228
8.6.2 进程资源使用 235
8.6.3 微状态计数器 236
8.7 信号 240
8.7.1 信号的实现 245
8.7.2 SIGWAITING特殊信号 254
8.8 会话和进程组 255
第9章 Solaris内核调度程序 260
9.1 概述 260
9.1.1 调度等级 262
9.1.2 调度表 270
9.2 内核调度程序 275
9.2.1 调度队列 277
9.2.2 线程优先级 280
9.2.3 调度程序功能 291
9.3 内核睡眠/唤醒程序 304
9.3.1 条件变量 305
9.3.2 睡眠队列 306
9.3.3 睡眠过程 308
9.3.4 唤醒机制 311
9.4 调度程序激活 312
9.4.1 用户线程激活 313
9.4.2 LWP池激活 314
9.5 内核处理器控制和处理器集 315
9.5.1 处理器控制 317
9.5.2 处理器集 320
第10章 进程间通信 324
1O.1 通用System V IPC支持 324
10.1.1 模块创建 324
10.1.2 资源映射 327
10.2 System V共享内存 327
10.2.1 共享内存内核实现 330
10.2.2 相似共享内存 333
10.3 System V信号量 336
10.3.1 信号量内核资源 336
10.3.2 System V信号量的内核实现 338
10.3.3 Solaris内部的信号量操作 339
10.4 System V消息队列 341
10.4.1 消息队列使用的内核资源 341
10.4.2 消息队列的内核实现 345
10.5 POSIX IPC 346
10.5.1 POSIX共享内存 348
10.5.2 POSIX信号量 349
10.5.3 POSIX消息队列 351
10.6 Solaris门 354
10.6.1 门概述 354
10.6.2 门实现 355
第四部分 文件和文件系统 361
第11章 Solaris文件和文件I/O 361
11.1 Solaris的文件 361
11.2 文件的应用程序编程接口 367
11.2.1 标准I/O 368
11.2.2 C运行期文件句柄 371
11.2.3 标准I/O缓冲区大小 371
11.3 系统文件I/O 371
11.3.1 文件I/O系统调用 371
11.3.2 文件打开模式和文件描述符标志 372
11.4 异步I/O 378
11.4.1 文件系统异步I/O 379
11.4.2 内核异步I/O 379
11.5 内存映射文件I/O 383
11.5.1 映射选项 385
11.5.2 为存储系统提供建议 386
11.6 Solaris中的64位文件 390
11.6.1 Solaris 2.0中的64位设备支持 390
11.6.2 Solaris 2.5.1中的64位文件应用程序编程接口 391
11.6.3 Solaris 2.6:大文件OS 392
11.6.4 文件系统对大文件的支持 394
第12章 文件系统综述 395
12.1 为什么要有文件系统 395
12.3 普通文件系统 396
12.2 支持多个文件系统类型 396
12.3.1 分配和存储策略 397
12.3.2 文件系统容量 399
12.3.3 支持可变块大小 400
12.3.4 访问控制列表 401
12.3.5 文件系统日志报表 402
12.3.6 扩大和缩小文件系统 405
12.3.7 直接I/O 405
13.1.2 文件系统框架程序 408
13.1.1 统一的文件系统接口 408
13.1 Solaris文件系统框架 408
第13章 文件系统框架 408
13.2 vnode 409
13.2.1 vnode类型 411
13.2.2 Vnode方法 412
13.2.3 vnode引用计数 413
13.2.4 分页vnode缓存的接口 414
13.2.5 vnode页上的块I/O 415
13.3 vfs对象 415
13.3.1 文件系统交换表 417
13.3.2 安装的vfs列表 418
13.4 文件系统I/O 421
13.4.1 内存映射I/O 421
13.4.2 系统调用read()和write() 423
13.4.3 Seg_map段 423
13.5 路径名管理 426
13.5.1 lookupname()和lookuppn()方法 427
13.5.2 vop_lookup()方法 427
13.5.3 vop_readdir()方法 427
13.5.4 路径名遍历函数 428
13.5.5 目录名查询缓存 429
13.5.6 文件系统模块 432
13.5.7 安装和拆卸 432
13.6 文件系统刷新守护进程 434
第14章 UNIX文件系统 435
14.1 UFS发展历史 435
14.2.1 UFS Inode 436
14.2.2 UFS目录 436
14.2 UFS磁盘格式 436
14.2.3 UFS硬链接 438
14.2.4 UFS结构 438
14.2.5 磁盘块定位 440
14.2.6 UFS块分配 441
14.2.7 UFS分配和参数 442
14.3 UPS的实现 444
14.3.1 文件映射到磁盘块 444
14.3.2 读写UFS文件的方法 447
14.3.3 核心内的UFS Inode 450
14.3.4 UFS目录和路径名 452
15.1 文件缓存简介 453
15.1.1 Solaris页缓存 453
第15章 Solaris文件系统缓存 453
15.1.2 块缓冲区缓存 455
15.2 页缓存和虚存系统 456
15.3 分页对系统到底好不好 457
15.4 影响文件系统性能的分页参数 460
15.5 用直接I/O绕过页缓存 462
15.5.1 UFS直接I/O 462
15.6 目录名缓存 463
15.5.2 Veritas VxFS的直接I/O 463
15.7 Inode缓存 465
15.7.1 UFS Inode缓存大小 465
15.7.2 VxFS Inode缓存 466
第五部分 附录 469
附录A 内核的调整、开关和限制参数 469
附录B 内核虚拟地址映射 476
附录C 一个Procfs程序示例 483
参考文献 488
- 《联吡啶基钌光敏染料的结构与性能的理论研究》李明霞 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《柏里曼人体结构绘画教学描摹本 第2册 头手足结构》杨建飞主编 2019
- 《认知语言学视野的抽象方位结构研究》曹爽著 2019
- 《无机材料晶体结构学概论》毛卫民编著 2019
- 《数据结构教程》付婷婷,王志海,张磊编著 2019
- 《数据结构 C语言版 第5版》邓文华 2019
- 《RNA折叠结构预测算法与计算复杂性》刘振栋著 2019
- 《中国好字帖 硬笔楷书教程 结构》张鹏涛主编 2016
- 《钢结构》陈绍蕃,郭成喜主编 2018
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019