Board logo

标题: 原创:DOS启动教学初步(三):MSDOS.SYS模块  [打印本页]

作者: yiyesong     时间: 2002-11-18 00:00    标题: 原创:DOS启动教学初步(三):MSDOS.SYS模块 

      MSDOS.SYS中文名称叫文件管理程序,是DOS系统中的核心文件,所以又被称为DOS内核,在PC-DOS中该文件名为IBMDOS.COM。
      IO.SYS模块的系统初始化程序取得控制权后,它即装入并定位MSDOS.SYS模块,同时调用内核初始化程序DOSINIT,完成对DOS内核的初始化。
    MSDOS.SYS模块实施DOS操作系统的文件管理,并提供诸多的系统功能调用。它也由两部分组成:
    1、内核初始化程序DOSINIT;
    2、系统功能调用程序。
    内核初始化程序DOSINIT的主要工作有如下4个方面:
    1、设置DOS的有关中断向量;
    2、检查IO.SYS模块中设备头(相当于设备控制块)的链接结构,并完成对它们的初始化;
    3、建立块设备相应的驱动器参数表(DPB);
    4、按照CONFIG.SYS中的BUFFERS命令,开辟并建立系统的磁盘缓冲区链。
    DOSINIT完成上述4项任务之后,控制又返回到SYSINIT。
    系统功能调用程序主要指INT 21H(H是十六进制的标识)中断处理程序,当前的微处理器都支持多种类型的中断,按照产生中断的原因,可分为外部硬件中断、内部硬件中断以及软中断三大类。Intel86系列的微处理器可支持256种中断,中断号为00-FFH,即3种类型的全部256种中断,都由一个唯一的中断来标识。INT 21H属于软中断,它是由于CPU执行一条INT n指令而引起的程序中断(n为中断号)。
     MS-DOS的系统功能约100多种,用以实现字符设备管理、时钟管理、磁盘管理、文件和目录操作、记录读写、内存管理、程序执行、网络共享等。每一种功能都对应一个“功能”号。只要把功能号预先送入AH寄存器(CPU的一种通用寄存器,用以数据的寄存),并按要求设置相应的入口参数,然后执行一条INT 21H指令,即可根据提供的功能号进行转散,以中断方式完成对某一系统功能的调用。






[此贴子已经被作者于2002-11-21 19:31:59编辑过]



作者: LiveOnLove     时间: 2002-11-26 00:00
看来要学一些汇编程序才晓得哦。有中断和汇编指令的中文教程吗?
作者: 小辉     时间: 2002-12-2 00:00
我也想學,有沒有這方面的教材,推荐一下。
作者: yanrongzhu52     时间: 2004-2-28 00:00
对啊!有没有啊?
作者: 594tsm     时间: 2004-2-28 00:00
不是有本汇编语言的教材书吗?
我正在学,不过学的很烂
作者: razor     时间: 2004-3-7 00:00
好利害!佩服!佩服!