【文档说明】第十章C-DOS操作系统课件.ppt,共(69)页,1.023 MB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-55038.html
以下为本文档部分文字说明:
第十章PC-DOS操作系统第十章PC-DOS操作系统§1DOS§2PC-DOS的基本结构§3PC-DOS§4§5§6内存管理§7§8§9DOS§10命令处理程序CCP§11CC-DOS与PC-DOS第十章PC-DOS操作系统§1DOS的历史与发展表10-1DOS的发展及其主要性能第十章PC-DOS
操作系统第十章PC-DOS操作系统§2PC-DOS的基本结构PC-IBMBIOIBMDOSCOMMAND(命令处理部分)第十章PC-DOS操作系统具体来说,与这四个部分相应的程序的全部(或部分)都存放在DOS软盘上,自举记录————基本输入输出管理模块(以隐式文件的形式存放在盘
上)——磁盘操作系统模块(以隐式文件的形式存放在盘上)——命令处理程序第十章PC-DOS操作系统图10-1PC-DOS层次结构第十章PC-DOS操作系统1.引导程序该程序模块在FORMAT命令时装在系统磁盘的0道第1扇区。系统启动或复位时,首先进入
固化的I/O程序ROMBIOS,对系统进行初始化和自测试,然后进入ROMBIOS的BOOT-STRAP(中断INT19)。如果是系统盘,则读入引导程序模块;否则,就给出出错信息并进入ROMBASIC。引导程序
进入内存并被执行后,即将系统盘上目录表内容读入内存。同时,判断基本输入输出程序IBMBIOCOM和磁盘操作系统程序IBMDOSCOM两个文件的位置是否对。正确的位置是IBMBIOCOM在前,IBMDOSCOM紧跟其后。如果
程序不对或者不是系统盘,将发出出错提示信息。如一切正常,则转向执行基本输入输出IBMBIOCOM程序。第十章PC-DOS操作系统2.IBMBIO.COM模块IBMBIO.COM模块作为ROMBIOS与IBMBIO.COM模块的接口,(1)测定系统中设备的状态和进
行初始化。(2)具有11个与ROMBIOS的接口程序。(3)设置低序号的中断向量。(4)完成引导和传递控制作用。第十章PC-DOS操作系统表10-2中断向量表第十章PC-DOS操作系统第十章PC-DOS操作系统3.IBMDOS.COM模块表
10-3中断向量表第十章PC-DOS操作系统第十章PC-DOS操作系统(1)确定磁盘内部工作参数。表10-4第十章PC-DOS操作系统(2)对文件分配表进行初始化。所谓分配表FAT(FileAllocationTable)是供文件分配磁盘
空间使用的。FAT表的结构很简单,它由若干个表项所组成。每个表项的位长度有两种:12位和16长度为12位或16位,其值与磁盘容量有关(当磁盘容量<4087簇时为12位,否则为16位)。第十章PC-DOS操作系统如图10-2所示,FAT表由长度为12位的若干个表项组成,表头占两项共3个字
节,表示磁盘规格的说明,FFFFFFH:双面,FEFFFFH:单面,FDFFFFH:双面,FCFFFFH:单面,每道9第十章PC-DOS操作系统图10-2FAT结构形式第十章PC-DOS操作系统表头中第2、3字节由系统设置,总是FFFF,按第一个字节识别磁盘规格。从第
三项起记录盘簇的标记信息,000:表示该扇区未使用,并可供使用。FF8~FFF:表示是文件的最后一个盘簇。FF0~FF7:表示保留盘簇。若不是装配链的一部分时,FF7表示是一个坏盘簇,FF8~FFF作为文件结束标志。×××:三个任意16进制数,表示文件的下一个盘簇号。文件的第
一个盘簇号则存放在文件的目录中。第十章PC-DOS操作系统(3)为COMMAND.COM模块建立程序段前缀。操作系统规定,当调入一个外部命令或功能调用EXEC去调用一个程序时,DOS都要为此程序确定其在内存中存放的最低地址,并为它建立一个程序段前缀。表10-5第十章PC-DO
S操作系统(4)填入20H~3FH类中断向量。(5)为IBMBIO.COM模块装入COMMAND.COM提供装入地址。装入后,BIO即将控制传送给COMMAND.COM模块的第1个字节。第十章PC-DOS操作系统COMMAND.COM命令处理程序(1)在内存中
的常驻部分。(2)初始化部分。(3)暂驻部分。(4)指挥DOS把用户程序装入内存并使它们去控制计算机工作。第十章PC-DOS操作系统表10-6第十章PC-DOS操作系统2.2DOS在磁盘上的空间分配PC系统所使用的磁盘,无论是软盘还是硬盘,在
盘面上存放DOS都有相似的位置。此DOS区域有如下形式:第十章PC-DOS操作系统§3PC-DOS的启动引导过程3.1引导程序装入内存及其执行过程它是靠FORMAT固化在软盘0面0道1扇区或硬盘1柱面0磁头1扇区上,是靠运行ROMBIOS时被装入内存的。详细地讲是这样:当用户将
机器通电后,即自动进入ROMBIOS的复位指令JMPRESET,其机器指令为EA5BE000F0,然后转跳到F0000:E05B进行整个开机工作,在完成系统的初始化和一系列自测试工作之后,就调用INT19(
BOOT-STRAP),于是引导程序就被装入内存绝对地址0∶7C00处。引导程序被装入内存的意义是实现系统自举,装入后将把控制转到引导程序的执行上。第十章PC-DOS操作系统图10-3BOOT-STRAP程序框图第十章PC-DOS操作系统图10-4引导程序框图第十章
PC-DOS操作系统第十章PC-DOS操作系统图10-5PC-DOS2.00启动引导流程第十章PC-DOS操作系统可以按下列方法建立CONFIG(1)输入:COPYCON:CONFIG(2)配置:譬如BREAK=ON它为一个程序执行任何
功能时,使DOS对Ctrl-Break进行开始开启延长检验(省缺值off)FILES=20可扩展同时打开文件数20BUFFERS=5可扩展缓冲区到5个第十章PC-DOS操作系统(3)按F6键和ENTER键,以便结束。AUTOEXE
C.BAT是一个特殊的批命令文件。当启动或再启动DOS时,命令处理程序检索AUTOEXECBAT文件,如果该文件出现在DOS盘上,那么每当启动DOS时,DOS总是自动地执行该文件。第十章PC-DOS操作系统§4文件管理
4.1文件目录PC-DOS的目录在0道。每个目录占32个字节。在单面盘中,目录占4个扇区,最多有64个目录入口;在双面盘中,目录为7个扇区,有112个目录入口。每个目录的32个字节定义如下:第十章PC-DOS操作系统0~7
:文件名。其中第一个字节(0字节)表示本目录项的状态。00E52E第十章PC-DOS操作系统8~10:文件扩展名(如.COM为命令文件、BAT为批文件、EXE为运行文件等)11:01020408表示在目录开始的11个字节为盘标号,而目录中其他部分不再包含有用信息。盘标号仅存于根目录中。
20为归档位。当文件完成了写操作并已关闭时,置此值。第十章PC-DOS操作系统12~21:保留。22~23:文件建立时间或最近一次文件修改时间。此两字节共16位,按下面划分表示小时(hh)、分(mm)和秒(ss):其中:hh、mm均为二进制数,ss是以2s作增
量的二进制数。第十章PC-DOS操作系统24~25:建立文件或最后一次修改文件的日期。两字节共16位,分别表示年(yy)、月(mm)和日(dd):yy=0~119(1980~2099)mm=1~12dd=1~3126~24:起始簇
号。硬盘软盘数据空间的第一个簇号总是00228~31:以字节为单位的文件长度。第十章PC-DOS操作系统4.2硬盘上的树形文件结构硬盘根目录下的最大文件数取决于硬盘上DOS所在盘区的大小。根目录下除文件外还可含有子目录,子目录下又可有文件和子目录。磁盘
的根目录在FORMAT格式化命令时建立。由于软盘的目录为一级目录,所以对文件的访问非常简单,直接通过文件名访问即可。但对具有树形文件结构的硬盘来说,要查找一个文件,就必须给出文件的路径(Path)。第十章PC-DOS操作系统例如,系统工作的当
前目录为David,如需找出David的报表(REPORTS)目录下的一种名为ANNUAL.FIG的年报。(1)从当前目录David开始。REPORTS\ANNUAL(2)从根目录开始。\SALES\DAVID\REPORTS\ANNUALFIG开头的反斜杠号“\”表示
根目录。从上可见,路径是由一系列目录名组成的,目录名之间用“\”号分开。第十章PC-DOS操作系统例如,当前目录为David,现需查找Jeanne下的报表SUMMARY。如从根开始,可用\SALES\JEANNE\REPORTS\SUMMARY如用回溯方法,¨\JEAN
NE\REPORTS\SUMMARY左面的“¨”表示从当前目录David回溯至上一层父目录第十章PC-DOS操作系统DOS还提供有一组关于目录操作的命令,(MD)(RD)(没有文件和子目录的目录才能被删除)(CD)
TREE第十章PC-DOS操作系统4.3文件控制块及文件管理方法图10-6文件控制块FCB格式第十章PC-DOS操作系统0-1-驱动器A2-1-驱动器A2-驱动器B左对齐,尾补空格。第十章PC-DOS操作系统912~13
:相对于文件开头的当前块号。每块为12816~19:文件长度(以字节计)20~21:建立文件和最后修改文件的日期:第十章PC-DOS操作系统22~31:保留为系统用。32:当前块内的当前的相对记录号(0~127)。用户对盘进行顺序读
写操作前,需预置此段。字节0~15和32~36必须由用户程序设置,字节16~31则由DOS设置。下面,对扩展的文件控制块FCB作一说明:FCB-7:若为FFH的标志,表明是扩展的FCB。FCB-6至FCB-2:保留区。FCB-1:属性字节。如02表示秘密文件、
04表示系统文件等等。第十章PC-DOS操作系统4.4系统文件表与读写操作的实现图10-7SFT表组的链结构第十章PC-DOS操作系统图10-8程序I/O数据结构之间的关系第十章PC-DOS操作系统§5设备管理在DOS中设备管理可对两个基本类型——字符设备和块设
备进行管理。DOS设备管理与一些专用数据结构有关,如每个驱动程序都有一个设备表,DOS系统程序就是用此表的信息去分配和管理设备。每个设备驱动程序都具有三个部分:设备表、策略程序和中断程序。I/O操作的起始扇区号的计算公式为:=(当前簇号-2)×每簇扇区数+文件
数据区的起始扇区号第十章PC-DOS操作系统§6内存管理DOS对640KB的常规内存区的分配和待分配的内存块是依据内存控制块链进行跟踪管理的。DOS的4个内存管理功能调用48H、49H、4AH及58H分别管理内存块申请、内存块释
放、内存块修改和内存管理策略设定等操作,它们为DOS操作系统和应用程序有效地、充分地使用有限内存而服务。第十章PC-DOS操作系统§7进程管理图10-9PSP和与其相应的程序结构图第十章PC-DOS操作系统DOS操作系统可通过EXEC功能调用4BH来实现程序的管理和控
制:EXEC可供系统程序或应用程序(称其为父进程)把另一个程序(称其为子进程)调入到内存中,由父进程决定子进程是否执行,并且父进程还能决定子进程被调入到内存的位置。当子进程结束之后,控制将返回到父进程。第十章PC-DOS操作系统§8系
统调用与软中断(1)把系统调用编号放入寄存器AH(2)(3)执行软中断INT21,启动相应命令执行。第十章PC-DOS操作系统实际上,在20~3FH类这32个中断向量中,目前DOS只使用了20~27H类这8个向量,其余由DOS保留作为今后的功能扩展。20~3FH类向量所在的区域相当于地址80H~F
FH。(1)系统功能调用21H已讨论过。(2)程序的退出。①正常退出INT20H。用户程序执行完毕后,可使用这条中断处理来结束用户程序,退回操作系统。②驻留退出INT27H。用于用户自己写的中断处理程序的初始化。用这种方法退出后,留下的程序被PC-DOS视为自身的一部分
,不会被其他程序覆盖。第十章PC-DOS操作系统(3)磁盘读写。INT25H和INT26H用来读写盘上的若干个扇区,这是两条BIOS调用。(AL)驱动器号(0=A,1=B,…等)(CX)(DX)开始扇区的逻辑号(
0号表示0柱0面1区)(DS∶BX)例如,MOVAL,0把盘号置为AMOVCX,7双面盘根目录长为7MOVDX,5目录区从0柱0面6MOVBX,1000传送到1000HINTTMP第十章PC-DOS操作系统§9DOS命令9.1DOS命令的格式和类型显示一个名为TABLEDIRC:\W
ANG\TABLEDAT\WDIR[d:][path][filenameext]][/W]第十章PC-DOS操作系统(2)驱动器名[d(3)路径名[path]:(4)文件名[filenameext]](5)参数第
十章PC-DOS操作系统1命令格式的说明d:——表示用户指定的驱动器。在驱动器符后面跟一个冒号。A和B分别表示第一和第二软盘驱动器,C为第一个硬盘驱动器。如果省略这个参数,则DOS认为是当前的隐含驱动器。path——代表目录名的路径,[\][dirname]
[\dirname[…]]。目录名之间以斜杠分开。第一个斜杠表示由根目录开始。加入文件名时,必须加在目录名路径的末端。例如:/DIR1\DIR2\FILE。filenameext——表示文件名及其扩展名。filespec——表示某个指定的文件。包括指定驱动器和指定的文件名。即[d:]fil
e-name[ext]。第十章PC-DOS操作系统(1)上述[]中的项是任选项,如选用这些项时,仅需写出[]内的参数,无须写[](2)由一竖杠隔开的项(例如[ON|OFF])只可输入竖杠两边参数中的一
个(ON或OFF),不可两者均输入;(3)省略号(…)(4)可以用大写或小写字母,也可以大、小写混合使用。第十章PC-DOS操作系统2.DOS命令的类型DOS命令可分为内部命令和外部命令两大类。内部命
令就在DOS内,可以直接识别和执行。外部命令和程序文件一样驻留在磁盘上,必须将它从磁盘读出才能执行。所以外部命令的磁盘必须事先在驱动器内。例如,用户输入命令。B:GRAPHICS系统将从B驱动器中寻找出GRAPHICSCOM命令文件并加以执行。第十
章PC-DOS操作系统9.2DOS命令举例1.DIR(列目录)用途:显示磁盘文件目录。列出磁盘文件目录中的全部目录项,或者仅显示指定文件的目录项。此外,屏幕上还显示文件数目、磁盘余下的自由空间、文件长度和日期等信息。格式:DIR[d:][path][filename[ext]
][/P][/W]说明:参数/P表示屏幕满时显示暂停。按任一键后继续显示。参数/W为宽显示方式,每行5个文件名。本参数仅用于80×25字符方式。文件名中可以使用“?”和“”字符。第十章PC-DOS操作系统例1
列出盘上所有的文件(如果考虑宽显示方式)A>DIRVolumeindriveAhasnolabelDirectoryofA:\第十章PC-DOS操作系统2.ERASE(删除文件)用途:在指定驱动器和目录中删除
文件。格式:ERASE[d:][path][filename[ext]]或DEL[d:][path[filename[ext]]说明:DEL是ERASE的简记形式。删除命令是DOS的内部命令。如果不给出驱动器符,就
认为是当前隐含的驱动器。如果不指定目录路径,则认为是当前的目录。可以使用和?作为文件名。系统文件IBMBIO.COM和IBMDOS.COM不能删除。第十章PC-DOS操作系统3.TREE(显示树结构目录)命令用途:显示指定驱动器上所有树形文件结构的目录,并
有选择地显示各子目录中的文件。格式:TREE[d:][/F]说明:属外部命令。对每个目录都给出了从根目录开始的完整的路径名。同时给出属该目录的所有子目录。如果使用参数/F,还将显示出各子目录中的所有文件。第十章PC-DO
S操作系统例2设磁盘上树形文件结构目录如图10-10所示。执行TREE命令后显示图10-10具有路径的目录第十章PC-DOS操作系统4.TYPE(打印)命令用途:在屏幕上显示指定文件的内容。格式:TYPE
[d:][path]filename[ext]说明:属内部命令。不给出路径名,指当前目录。文件中所有字符,包括控制字符都送屏幕。但CTRL-I或CHR$(9)均按跳格(8个字符间隔)处理。此命令只打印文件,不能打印目录。可将>PRN加到命令后
把文件在打印机上打印出来。第十章PC-DOS操作系统§10命令处理程序CCP图10-11CCP在内存分配图中的位置第十章PC-DOS操作系统图10-12命令处理程序框图第十章PC-DOS操作系统§11CC-DOS与PC-DOS1.CC-DOS与PC-DOS的关系第十章P
C-DOS操作系统2.CC-BOOT-STRAP将PCDOS的三个文件引入内存后,就检查磁盘上是否存在AUTOEXECBAT文件。如存在,则执行这个批命令文件中的各条命令,CC-DOS的系统盘上就存在一个AUTOEXEC.BAT文件,echooffclsec
hoPLEASEWAITfile1ccccverifyon第十章PC-DOS操作系统(1)fileEXE。①判断磁盘上是否存在CCLIB文件,如不存在,就显示出错信息,并准备再次引导系统。②判断CCLIB文件中是否有内容。如无内容,则显示出
错信息,并准备再次引导程序。③把本程序的代码段值(CS)和初始偏移值(为全0)存入1F类中断指针存放处(即0000∶007C~007F)。④申请一块能放下汉字库的内存空间。本程序驻留内存,退出运行。第十章PC-DOS操作系统(2)cccc.EXE.cccc.EXE文件分为两部分,
一部分是该文件本身的执行代码,另一部分是CC-BIOS的程序,它只是在执行cccc.EXE命令时被带入内存驻留,并未真正执行。cccc.EXE文件所作的工作过程如下:①把汉字库CCLIB文件装入到1F类中断指针指向的内存中去;②把1F类中断指针的内容保存起来,以备将来访问汉字库时用;
③把1D类中断指针指向CRT初始化参数存放处;第十章PC-DOS操作系统④把10类中断指针改为指向CC-BIOS的CRT控制程序入口:⑤把1F⑥把16类中断指针改为指向CC-BIOS的键盘控制程序的入口;⑦把CRT初始化成200×640⑧显示CC-BIOS的标题(即版本号、研制单位等)。⑨
本程序驻留内存,退出运行。