引言系统导论 1
0.1 MS-DOS简史 1
目 录 1
0.2 MS-DOS的设计准则 2
0.2.1 MS-DOS的设计原则 2
0.2.2 MS-DOS的构成 2
0.2.3 COMMAND文件 3
0.2.4文件结构 3
0.2.6减少内部断片化 4
0.2.5内部断片化 4
0.2.7 FAT表功能 5
0.2.8运行中的文件系统 5
0.2.9扇区缓存 7
0.2.10 MS-DOS中没有顺序文件的概念 7
0.2.11失效效应 8
0.2.12 MS-DOS 2.0系统 8
1.1.3 IO.SYS(输出/入控制部分) 10
1.1.2 MSDOS.SYS(文件管理部分) 10
1.1.1 COMMAND.COM(命令执行部分) 10
1.1 MS-DOS的基本构成 10
第一章MS-DOS软件体系 10
1.1.4各模块的关系 11
1.2 MS-DOS内存分配和启动机制 12
1.2.1 Boot时的内存分配 12
1.2.2启动 12
1.2.3 IO.SYS子程序的初始化动作 14
1.2.4 MSDOS.SYS的初始化 14
1.2.6 COMMAND.COM的加载 15
1.2.5 CONFIG.SYS的设定 15
1.2.7初始化动作的含义 16
第二章 COMMAND.COM 18
2.1命令的输入和执行 18
2.1.1文件的执行顺序 18
2.1.2路径的检索处理 19
2.1.3批命令的处理 20
2.1.4 内部命令的动作 21
2.2 I/O的换向 21
2.2.1换向的处理 21
2.2.2标准输出/入和换向 22
2.3 管道 23
2.4 COMMAND.COM的再加载 26
第三章MSDOS.SYS 28
3.1 MSDOS.SYS的概要 28
3.2内部中断的机能 28
3.2.1 INT20H和 INT 27H(程序的终了) 29
(终了地址、Ctrl-C地址和致命错误中断地址) 31
3.3 MS-DOS中程序的执行 31
3.2.4 INT 25H和INT 26H(绝对磁盘读与写) 31
3.2.3 INT 22H、INT23H和INT 24H 31
3.2.2 INT 21H(系统功能调用) 31
3.3.1 MS-DOS中程序的构造 32
3.3.2 内存方式 33
3.3.3 PSP(Program Scgmcn?Prc?ix) 35
3.3.4环境 39
3.4程序执行的开始和终了 41
3.4.1进程的肩动 43
3.4.2新进程的执行 44
3.5.2 INT 23H和INT24H向量 45
3.5.1 INT 22H向量 45
3.5程序的链和中断 45
3.4.3进程的终了 45
3.6 FCB和文件处理号 49
3.6.1 基本FCB 49
3.6.2 FCB和文件构造 51
3.6.3文件处理号 55
3.7 系统调用 57
3.7.1 系统调用的方法 60
3.7.2控制台输出/入 60
3.7.4用FCB读写文件 62
3.7.3 设备的输出/入 62
3.7.5有关时间/标志的控制及其他 64
3.7.6 用文件处理号读写文件 65
3.7.7文件目录管理 68
3.7.8进程管理 68
3.7.9 内存管理 71
3.8 系统调用和MSDOS.SYS的内部处理 72
3.8.1 系统调用的呼出 72
3.8.3文件和磁盘的缓存 73
3.8.2控制台输出/入 73
3.8.4 系统用FCB和文件处理号 78
3.8.5 文件处理号与进程的关系 80
3.8.6 内存管理 82
3.8.7结构文件 83
第四章IO.SYS 85
4.1 IO.SYS和设备驱动程序 85
4.1.1块型和字符型设备 85
4.1.3设备驱动程序的链接 86
4.1.2设备驱动程序的构造 86
4.1.4 设备头 89
4.2设备驱动程序的呼出 91
4.2.1 I/O请求处理过程 92
4.2.2命令包和两个入口指针的意义 93
4.3 BPB和介质检查 93
4.3.1 BPB 94
4.3.2 BPB的选择 96
4.3.3介质描述字节 97
4.3.4 DPB 97
4.3.5介质检查和DPB的更新 98
4.4 I/O命令 99
4.4.1 请求头 99
4.4.2状态和I/O请求 100
4.4.3 I/O请求命令 101
第五章文件系统 107
5.1 文件目录和文件 107
5.1.1 文件目录、记录项和文件 107
5.1.2文件系统的实现 110
5.2.2 FAT和簇 112
5.2.1 扇区和簇 112
5.2 FAT 112
5.3磁盘的盘区 114
第六章系统功能调用实例 117
6.1系统调用的步骤 117
6.2 错处理 117
6.3寄存器的保存 119
6.4系统调用的实例 119
6.4.1功能00H,01H,02H 119
6.4.2 功能03H,04H,05H 121
6.4.3功能06H 123
6.4.4功能07H,08H,09H 125
6.4.5功能0AH,0BH,2AH,2BH,2CH,2DH,0CH 131
6.4.6功能0DH,0EH,1 1H,12H 136
6.4.7功能0FH,10H,14H,15H,16H 142
6.4.8功能13H 146
6.4.9功能17H 148
6.4.10功能19H,30H,36H,38H 151
6.4.11 功能1AH,21H,22H,23H 155
6.4.12功能24H,27H,28H,29H 160
6.4.13功能25H,35H 166
6.4.14功能2EH,54H 167
6.4.1 5功能33H 169
6.4.16功能39H,3AH,3BH 171
6.4.17功能3CH,3DH,3EH,3FH,40H 175
6.4.1 8功能41H 182
6.4.19功能2FH,42H 184
6.4.20功能43H 189
6.4.21功能44H 191
6.4.22功能45H 197
6.4.23功能46H 200
6.4.24功能47H 203
6.4.25功能48H,49H,4AH 205
6.4.26功能3 1H,4BH,4CH,4DH 209
6.4.27功能4EH,4FH 217
6.4.28功能56H 221
6.4.29功能57H 224
第七章MS-DOS未公开的系统功能 227
7.1 INT 21H 中未公开的功能 227
7.2 INT21H未公开功能的使用方法 228
7.2.1 功能1BH、1CH 229
7.2.2功能1FH、32H 229
7.2.3 功能26H、55H 231
7.2.4功能34H 231
7.2.5 功能37H 232
7.2.6 功能50H、51 H 233
7.2.7功能52H 233
7.2.8 功能53H 234
7.2.9功能58H 235