② 检查自动批处理文件AUTOEXEC.BAT是否存在,若存在则执行其中每条命令,执行完成后显示DOS提示符;若不存在,则显示日期和时间提示,等待用户输入指定的日期和时间,然后出现系统提示符A: 或C: ,表明DOS启动成功,等待用户输入DOS命令。至此DOS启动成功,完成了所有初始化任务。 3. DOS引导记录 DOS 引导记录位于软盘的0面0道1扇区;硬盘在DOS分区的逻辑0扇区上。DOS引导记录由以下3部分组成: 1 软(硬)盘I/O参数表。 表长19字节,从引导扇区的0字节偏移0BH处开始,分别记录每扇区字节数(2B),每簇的扇区数(1B)保留扇区数(2B),FAT表个数(1B),根目录项数(2B),总扇区数(2B),介质标志(1B),每个FAT所占扇区数(2B),每道扇区数(2B),磁头数(2B),隐藏扇区数(2B)。 2 软(硬)盘基数表。表长11字节,从引导扇区的0字节偏移21H处开始。 3 引导记录块。DOS引导记录块的功能是检查磁盘根目录下是否存在两个系统文件。存在则加载到内存指定区,并把控制权交给BIOS模块,否则显示相应的出错信息。 4. DOS文件系统 DOS文件管理主要通过文件目录表FDT、文件分配表FAT和磁盘参数表以及设备驱动程序来实施。
1 文件目录表DOS在固定的扇区位置设置FDT,该表具体描述文件名、子目录名和卷标以及有关信息。DOS 利用FDT掌握磁盘上每个文件的路径、属性、文件分配、长度、以及建立或修改的具体日期和时间。 FDT为每个文件或子目录分配一个目录登记项,目录登记项的记录文件名(8B)、扩展名(3B)、文件属性(1B)、保留区(10B)、最后修改时间(2B)、最后修改日期(2B)、文件起始簇(2B)、文件长度(4B)。 2 文件分配表 文件目录表FDT列出了分配给文件的磁盘空间,它后续的空间地址是由文件分配表FAT提供的。文件分配表在文件的存取过程中起着关键作用。为了保险起见,DOS系统在每张磁盘上生成两个完全一样的文件分配表,FAT记录着文件所分配到的位置。磁盘上的存储空间是以扇区为单位,但是操作系统对磁盘的最小分配单位是簇,每簇是一个或多个扇区。 5. DOS的程序加载过程 DOS 加载程序是由系统功能中的执行功能(EXEC)来完成的。利用COMMAND.COM命令处理程序解释用户输入的命令并执行之,COMMAND.COM命令处理程序可以解释如下三种用户命令:内部命令、外部命令和批处理文件。 1 COMMAND处理命令的过程 当DOS系统启动或系统复位后,屏幕上出现DOS提示符表明COMMAND.COM已处于开工状态,等待用户输入命令。
COMMAND.COM处理命令过程如下: ① 首先判断用户输入的命令是否正确。如果是内部命令,则转去执行COMMAND暂驻区的相应过程,执行结束返回到DOS提示符,否则判断是否为当前目录; ② 如果当前执行的命令不在当前目录下,则执行PATH命令搜索指定的目录,找到后判断要执行的是.COM类或.EXE类命令。如果是在当前目录下则不要搜索目录,直接判断是.COM还是.EXE命令。 ③ 如果在搜索过程中,在指定目录下未找到.COM文件或.EXE文件,再判断是否为批文件。如果三类文件都不是时,显示提示信息:Bad Command or filename。 ④ 若找到一个批处理文件,则转入COMMAND暂驻区的批处理程序,解释执行该批文件中每条命令。 ⑤ 当搜索到一个.COM或.EXE文件时,COMMAND便调用EXEC子功能加载该文件并予以执行。 ⑥ 当一个外部命令执行时,它几乎控制系统的全部资源。执行完毕后调用DOS结束功能,或释放所有内存,或程序驻留。然后再返回到DOS的提示符状态。 2 EXE文件的加载 由LINK连接程序生成的.EXE型文件是以特殊结构存贮在磁盘上。 当它被EXEC子功能加载时,除了要设置程序前缀PSP外,还要依据一个“文件头”指出的若干信息进行段重定位,同时,对各个内部寄存器也赋以初始化值,最后从DOS系统中接过控制权执行程序。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-27948-7.html
9
想讹钱
自投罗网