序言 1
艾奇序 1
前言 1
第1章 概念和工具 1
1.1 基础概念和术语 1
1.1.1 Win32 API 1
1.1.2 服务、函数和例程 2
1.1.3 进程、线程和作业 3
1.1.4 虚拟内存 4
1.1.5 内核模式与用户模式 6
1.1.6 对象和句柄 8
1.1.7 安全 9
1.1.8 注册表 10
1.1.9 Unicode 10
1.2 深入 Windows 2000 精髓 11
1.2.1 配套光盘中的工具 12
1.2.2 Performance 工具 13
1.2.3 Windows 2000 支持工具 13
1.2.4 Windows 2000 资源包 13
1.2.5 内核调试工具 14
1.2.6 软件开发包平台 16
1.2.7 设备驱动程序包 16
1.2.8 系统内部工具 16
1.3 小结 16
第2章 系统体系结构 17
2.1 要求与设计目标 17
2.2 操作系统模型 19
2.2.1 可移植性 20
2.2.2 对称式多处理 20
2.2.3 可伸缩性 21
2.3 总体结构 22
2.4 Windows 2000 的产品包 24
2.4.1 检查链接编译 25
2.4.2 多处理器系统文件 26
2.5 关键系统组件 29
2.5.1 环境子系统与子系统 DLL 30
2.5.2 Ntdll.dll 37
2.5.3 执行程序 38
2.5.4 内核 39
2.5.5 硬件抽象层 40
2.5.6 设备驱动程序 41
2.5.7 查看没存档的接口 44
2.5.8 系统进程 46
2.6 小结 55
第3章 系统机制 56
3.1 陷阱调度 56
3.1.1 中断调度 57
3.1.2 异常调度 71
3.1.3 系统服务调度 76
3.2 对象管理器 79
3.2.1 执行程序对象 80
3.2.2 对象结构 82
3.3 同步 96
3.3.1 内核同步 97
3.3.2 执行程序同步 99
3.4 系统工作者线程 105
3.5 Windows 2000 全局标记 107
3.6 本机过程调用 108
3.7 小结 112
第4章 启动与关闭 113
4.1 引导进程 113
4.1.1 引导前的准备 113
4.1.2 引导扇区和 Ntldr 115
4.1.3 初始化 Kernel 和执行程序子系统 121
4.1.4 Smss、Csrss 和 Winlogon 124
4.2.1 在安全模式中加载的驱动程序 125
4.2 安全模式 125
4.2.2 安全模式意识用户程序 127
4.2.3 安全模式中的引导日志 127
4.3 恢复控制台 128
4.4 关机 130
4.5 系统崩溃 131
4.5.1 Windows 2000 为什么会崩溃 132
4.5.2 蓝色屏幕 132
4.5.3 崩溃转储文件 134
4.6 小结 135
第5章 管理机制 136
5.1 注册表 136
5.1.1 注册表数据类型 136
5.1.2 注册表逻辑结构 137
5.1.3 注册表内部 141
5.2.1 服务应用程序 150
5.2 服务 150
5.2.2 服务帐号 154
5.2.3 服务控制管理器 156
5.2.4 服务启动 158
5.2.5 启动错误 161
5.2.6 接受引导和所知最近的正确配置 161
5.2.7 服务错误 163
5.2.8 服务关闭 163
5.2.9 共享的服务进程 164
5.2.10 服务控制程序 166
5.3 Windows 管理装置 167
5.3.1 WMI 体系结构 168
5.3.2 提供程序 169
5.3.3 通用信息模型和管理对象格式语言 170
5.3.4 WMI 名字空间 172
5.3.5 类关联 173
5.3.7 WMI 安全性 174
5.3.6 WMI 实现 174
5.4 小结 175
第6章 进程、线程和作业 176
6.1 进程的本质 176
6.1.1 数据结构 176
6.1.2 内核变量 183
6.1.3 性能计数器 183
6.1.4 相关函数 184
6.1.5 相关工具 185
6.2 CreateProcess 流程 191
6.2.1 阶段1:打开要执行的映像 193
6.2.2 阶段2:创建 Windows 2000 执行程序进程对象 195
6.2.3 阶段3:创建初始线程及其堆栈和环境 198
6.2.4 阶段4:向 Win32 子系统通知新进程 198
6.2.5 阶段5:开始初始化线程的执行 199
6.2.6 阶段6:在新进程环境中完成进程初始化 199
6.3.1 数据结构 200
6.3 线程的本质 200
6.3.2 内核变量 204
6.3.3 性能计数器 205
6.3.4 相关函数 205
6.3.5 相关工具 206
6.4 CreateThread 流程 207
6.5 线程调度 210
6.5.1 Windows 2000 调度概述 210
6.5.2 优先级 212
6.5.3 Wn32 调度 API 214
6.5.4 相关工具 214
6.5.5 实时优先级 216
6.5.6 中断级与优先级对比 216
6.5.7 线程状态 217
6.5.8 时间片 218
6.5.9 调度数据结构 220
6.5.10 调度方案 221
6.5.11 环境切换 224
6.5.12 空闲线程 224
6.5.13 提高优先级 224
6.5.14 对称式多处理系统上的线程调度 229
6.6 作业对象 233
6.7 小结 236
第7章 内存管理 237
7.1 内存管理器组件 237
7.1.1 配置内存管理器 238
7.1.2 检查内存的使用 240
7.2 内存管理器提供的服务 243
7.2.1 保留和提交页面 244
9.5.4 I/O完成端口操作 386
9.5.5 同步 388
9.6 小结 389
10.1 Window2000 存储的演化历史 391
第10章 存储管理 391
10.2 分区 392
10.2.1 基本分区 392
10.2.2 动态分区 393
10.3 存储驱动程序 397
10.3.1 磁盘驱动程序 398
10.3.2 设备命名 398
10.3.3 基本磁盘管理 399
10.3.4 动态磁盘管理 400
10.3.5 磁盘性能监视 402
10.4 多分区卷管理 402
10.4.1 跨越卷 403
10.4.2 带区卷 403
10.4.3 镜像卷 404
10.4.4 RAID-5卷 406
10.4.5 卷的 I/O 操作 407
10.5.1 装配管理器 408
10.5 卷名字空间 408
10.5.2 装配点 409
10.5.3 卷装配 412
10.6 小结 415
第11章 高速缓存管理器 416
11.1 Windows 2000 高速缓存管理器的主要特性 416
11.1.1 单个、集中的系统高速缓存 416
11.1.2 内存管理器 417
11.1.3 高速缓存的一致性 417
11.1.4 虚拟块高速缓存 418
11.1.5 基于流的高速缓存 419
11.1.6 可恢复文件系统支持 419
11.2 高速缓存结构 420
11.3 高速缓存的大小 421
11.3.1 高速缓存的虚拟大小 422
11.3.2 高速缓存的物理大小 422
11.4.1 系统范围的高速缓存数据结构 425
11.4 高速缓存数据结构 425
11.4.2 每个文件的高速缓存数据结构 426
11.5 高速缓存操作 429
11.5.1 写回高速缓存和延迟写 429
11.5.2 智能预读 432
11.5.3 系统线程 433
11.5.4 快速 I/O 433
11.6 高速缓存支持例程 435
11.6.1 复制到高速缓存和从高速缓存复制 436
11.6.2 带映射和牵制接口的高速缓存 437
11.6.3 带直接存储器存取接口的高速缓存 438
11.6.4 写入调整 439
11.7 小结 440
第12章 文件系统 441
12.1 Windows 2000 文件系统格式 441
12.1.3 FAT12、FAT16和FAT32 442
12.1.1 CDFS 442
12.1.2 UDF 442
12.1.4 NTFS 445
12.2 文件系统驱动程序体系结构 445
12.2.1 本机 FSD 445
12.2.2 远程 FSD 446
12.2.3 文件系统操作 448
12.3 NTFS 设计目标和特性 452
12.3.1 高端文件系统需求 452
12.3.2 NTFS 的高级特性 453
12.4 NTFS 文件系统驱动程序 460
12.5 NTFS要磁盘结构 463
12.5.1 卷 463
12.5.2 簇 463
12.5.3 主文件表 464
12.5.5 文件记录 469
12.5.4 文件引用数 469
12.5.6 文件名 471
12.5.7 驻留和非驻留属性 473
12.5.8 索引 475
12.5.9 数据压缩和稀疏文件 476
12.5.10 重分析点 480
12.5.11 更改日志文件 480
12.5.12 对象 ID 481
12.5.13 配额跟踪 481
12.5.14 统一的安全 482
12.6 支持 NTFS 恢复 482
12.6.1 文件系统设计演变 482
12.6.2 日志 484
12.6.3 恢复 488
12.7 NTFS 坏簇恢复 491
12.8 文件系统安全加密 494
12.8.2 第一次加密文件 496
12.8.1 注册回调 496
12.8.3 解密过程 500
12.8.4 备份加密的文件 501
12.9 小结 502
第13章 连网机制 503
13.1 OSI 参考模型 503
13.1.1 OSI 层 504
13.1.2 Windows 2000 连网组件 504
13.2 网络 API 505
13.2.1 命名管道和邮箱 506
13.2.2 Windows Socket 510
13.2.3 远程过程调用 514
13.2.4 通用网络文件系统 517
13.2.5 NetBIOS 520
13.2.6 其他网络 API 522
13.3 网络资源名字解析 524
13.3.1 MPR 525
13.3.2 MUP 527
13.3.3 域名系统 528
13.4 协议驱动程序 528
13.5 NDIS 驱动程序 530
13.5.1 NDIS 小端口特征 535
13.5.2 面向连接的 NDIS 535
13.6 绑定 538
13.7 分层网络服务 539
13.7.1 远程访问 539
13.7.2 活动目录 539
13.7.3 网络负载平衡 540
13.7.4 文件复制服务程序 541
13.7.5 分布式文件系统 542
13.7.6 TCP/IP 扩展 543
13.8 小结 545
术语表 546