特色:
本书是由中山大学信息科学与技术学院计算机科学系郭嵩山教授编写的“操作系统结构分析”课程的教材。 该教材的特点是采用以模块主程序为主线,以数据结构为中心的系统软件分析方法,对Windows 98设备驱动模块(IO.SYS)进行深入的剖析,不仅使读者全面了解操作系统实现I/O的过程。同时,也学会并掌握了用汇编程序实现软件分析的方法。 本书可作为高等院校计算机有关专业的教材或教学参考书,也可作为在职培训教材及从事PC开发的工程技术人员常备的技术参考资料。
Windows是家喻户晓的个人计算机操作系统(以下简称OS)。Windows的操作和使用是非常简便的,但其OS规模却是十分庞大,结构也十分复杂。如何深入分析、研究OS的结构是学习和理解OS如何实现资源管理的重要一环,尤其是对OS底层如何实现I/O的基本管理;对了解整个OS的运作;对相关的通信与接口;对计算机安全和病毒的防治等等,都有着十分普遍的意义。我们通过深入剖析Windows OS IO的结构,学习OS是如何设计和实现的,这些对于从事计算机应用开发人员,将会受益匪浅。 如何分析操作系统,笔者总结多年来剖析和研究OS和系统软件中所摸索到的经验后认为:采用以模块主程序为主线,以数据结构为中心的系统软件分析方法,是一种好的分析方法。强调以主程序为主线,可使读者快捷、省力地了解整个模块的总体结构,再逐层去剖析各个分支模块的结构。强调以数据结构为中心,是因为一个系统程序的设计,在其算法确定之后,关键就是数据结构的设计。在剖析OS时,往往遇到的难题是对表格(线性表、链表)、缓冲区(暂存区)、静态和动态堆栈等数据结构未能弄清;对各模块所使用的数据单元的意义和取值未能了解;从而大大降低了分析和阅读系统程序清单的速度,甚至使分析工作无法进行下去。 本书以Windows 98作为主要分析对象,对其设备驱动模块(IO.SYS)进行了全面、深入的剖析。同时,对于涉及I/O设备中ROM-BIOS的部分中断处理程序也进行了分析,以便于读者全面了解OS实现I/O的过程。为了方便读者学习、分析和研究,本书第2~4章的*后1~2节,都列出了该部分程序的详细注释清单。 本书力求从有利于教与学的角度,对一般人感到难度很大的操作系统内部结构和实现原理通过深入浅出的系统论述,让读者既能建立整体的概念,又能逐步深入,一层一层地剖析。为了帮助读者能结合原理读懂源程序清单,我们对于程序清单中的注释尽量详细,力求深入到每一条指令,对于重要的程序段,我们都在正文中给出了执行流程图。同时,本书每章后均附有习题和思考题,以帮助读者更好地理解和掌握。