前言FOREWORD 操作系统是计算机系统中最关键的系统软件,计算机系统愈复杂,操作系统的作用和地位就愈重要。 本书结合现代操作系统的设计并考虑操作系统的发展方向,着重讨论操作系统设计的基本概念、基本原理和典型技术。全书共12章,下面介绍各章内容组成。 第1章简要介绍操作系统的基本概念、功能、发展历史以及主要成就等。 第2章介绍进程的概念,以及操作系统对进程进行控制和管理时采用的数据结构,并讨论与进程相关的线程等内容。 第3章介绍在单一系统中并行处理的关键技术——互斥和同步机制。 第4章描述死锁的性质,并讨论解决死锁问题的一些方法。 第5章讨论多种内存管理方法,并讨论用于支撑虚拟内存所需的硬件结构和操作系统用来管理虚拟内存的软件方法。 第6章分析各种不同的进程调度方法,包括实时调度策略等方面的内容。 第7章论述操作系统对输入输出设备的控制和管理,尤其是对系统性能影响较大的磁盘I/O的调度和控制。 第8章讲解文件的组织、存储、使用和保护等方面的内容。 第9章和第10章讲述分布式操作系统的一些关键设计领域,包括Client/Server结构,用于消息传递和远程过程调用的分布式通信机制、分布式进程迁移、中间件,以及解决分布式互斥和死锁问题的原理与技术。 第11章简要讨论保证操作系统安全性的相关理论和方法。 第12章以小型操作系统MINIX为例,用解释性的方式介绍MINIX设计和实现的具体过程,以期达到理论联系实际,学以致用,突出知行合一的目的。 本书由何炎祥、李飞、李宁共同编写,何炎祥统编了全书。在编写过程中得到了武汉大学计算机学院领导和同事们的热情帮助,清华大学出版社对本书的出版给予了大力支持,文中还参考、引用了国内外一些专家学者的论著和研究工作,以及一些公司的产品介绍,在此一并表示诚挚的感谢。 随着操作系统技术的发展,本书在前一版的基础上,对部分内容进行了修订和改编。限于水平,书中错误难免,敬请读者不吝赐教。 作者2024年10月