您好,欢迎访问三七文档
清华大学出版社第1章操作系统概述1.1什么是操作系统1.2操作系统的目标和功能1.3操作系统的发展历程1.4操作系统的分类1.5支持操作系统的硬件环境1.6操作系统的特征和服务1.7典型的现代操作系统清华大学出版社正如计算机科学中许多其它的技术名词都没有统一的定义一样,操作系统也没有唯一的一种定义与解释。如何看待一个操作系统,人们从不同的角度出发有不同的观点,通常有下面三种观点:虚拟机的观点——操作系统作为扩展机器如果仅仅是裸机(图1.1底层阴影部分),则仅有机器语言可供用户利用,关于内存、文件、外设等的操作是相当麻烦和晦涩的。1.1什么是操作系统清华大学出版社机器指令系统CPU内存、I/O接口裸机命令解释程序、语言编译程序、汇编程序数据库系统、网络软件等财务管理系统、航空定票系统、CAD系统、税务系统、银行帐务系统、铁路定票系统、保险系统、人事管理系统等系统软件核心应用软件用户1用户2用户n……图1.1计算机系统层次,每一层的扩充都为向上虚拟能力扩展操作系统1.1什么是操作系统清华大学出版社资源管理的观点—OS作为系统资源管理者四大类:处理机、存储器、外设及信息(程序和数据等)存储器操作系统软件用户程序和数据集处理器I/O控制器I/O控制器I/O控制器外部设备图1.2操作系统作为资源管理器打印机、键盘等操作系统程序数据.…存储设备计算机系统1.1什么是操作系统清华大学出版社资源管理的目的在于:为用户提供一种简单、有效使用资源的方法,充分发挥各种资源利用率,为此,对每种资源管理,要研究如下几方面的内容:_________________________________________记录资源使用状态;使用或未使用,谁使用等资源分配原则;确定如何分配(策略),何时分配执行分配;根据分配的策略进行资源分配。资源回收;在某些用户,或程序不再需要资源时,系统应及时回收(修改记录),以便进行再分配。1.1什么是操作系统清华大学出版社人机交互的观点—OS作为机器与用户之间的接口最初的计算机在没有操作系统的情况下,在使用计算机时用户需要进行大量的手工操作。例如,选择何种输入设备进行输入,在什么地址上启动相应的编译程序进行编译,编译的结果(目的代码)再重新在指定的输入设备上进行输入,指定具体的启动地址启动运行等。在有了操作系统之后,原来由人工所进行的许许多多烦琐而费时的操作就由操作系统来代替完成。现在的操作系统都配备了丰富的命令、鼠标方式以及各种图标方便用户与计算机进行交互和操作,因此,也可以说现在的操作系统是人——机交互的界面与接口,用户与计算机进行的一切活动都是要经过操作系统。几种典型计算机1.1什么是操作系统清华大学出版社不严格的定义;是加载在硬件之上,支持其它软件,并控制和管理计算机系统内各种硬件和软件资源,有效地组织各程序运行的系统软件,或程序集合。以下几点有助于我们理解操作系统的定义。系统软件;是第1次加载在硬件上的一组计算机程序(程序意图不同)。控制和管理计算机系统内各种资源,有效地组织作业或程序在CPU上运行。提供服务,方便用户使用,扩充硬件功能。1.1什么是操作系统清华大学出版社1.2.1操作系统的目标方便性;通过命令,或鼠标等便可完成所希望的要求(包括网上信息查询)。有效性;如实现CPU、I/O设备的并行操作、对内外存中存放的信息进行统一管理避免无序和空间的浪费。可扩展性;允许在不妨碍服务前提下,开发、测试和引进新的系统功能。如高性能芯片出现控制寄存器硬件机制后,操作系统经过扩展就实现了页式存储分配机制等。1.2操作系统的目标和功能清华大学出版社1.2.2操作系统的功能(之一)存储器管理功能内存分配;记录整个内存,按照某种策略实施分配,或回收释放的内存空间。地址映射;硬件支持下解决地址映射,即逻辑到物理地址转换。内存保护;保证各程序空间不受“进犯”。内存扩充;通过虚拟存储器技术虚拟成比实际内存大的多的空间来满足实际运行的需要。1.2操作系统的目标和功能清华大学出版社处理机管理功能作业和进程调度;后备队列上(外存空间)的调度,作业调度(并不是所有类型机器都具有)。CPU调度,进程调度。进程通信;由于多个程序(进程)彼此间会发生相互制约关系,需要设置进程同步机制。进程之间往往需要交换信息,为此系统要提供通信机制。1.2操作系统的目标和功能1.2.2操作系统的功能(之二)清华大学出版社设备管理功能缓冲区管理;管理各类I/O设备的数据缓冲区,解决CPU和外设速度不匹配的矛盾。设备无关性;应用程序独立于实际的物理设备,由操作系统将逻辑设备映射到物理设备。设备分配;根据I/O请求和相应分配策略分配外部设备以及通道、控制器等。设备驱动;实现用户提出的I/O操作请求,完成数据的输入输出。这个过程是系统建立和维持的。1.2操作系统的目标和功能1.2.2操作系统的功能(之三)清华大学出版社文件管理功能文件存储空间的管理;包括:记录空闲空间、为新文件分配必要的外存空间,回收释放的文件空间,提高外存的利用率等。目录管理;目录文件的组织、及实现用户对文件的“按名存取”、目录的快速查询和文件共享等。文件的读写管理和存取控制;根据用户请求,读取或写入外存。并防止未授权用户的存取或破坏,对各文件(包括目录文件)进行存取控制。1.2操作系统的目标和功能1.2.2操作系统的功能(之四)清华大学出版社用户接口命令界面;系统提供一套命令,每个命令都由系统的命令解释程序所接收、分析,然后调用相应模块完成命令所需求功能。图形界面;考虑用户使用计算机的方便性,现代操作系统都提供了图形用户界面。它也是一种交互形式,只不过将命令形式改成了图形提示和鼠标点击。程序界面;也称系统调用界面,是程序级上用户与操作系统打交道的方式。1.2操作系统的目标和功能1.2.2操作系统的功能(之五)清华大学出版社1.3.1操作系统的形成手工操作阶段(串行工作,20世纪40年代)用户直接与计算机硬件打交道。机器运行靠控制台(面板),包括显示灯、触发器、某类型输入设备。其缺点:一旦有某用户开始操作,计算机的全部资源都为该用户独占,直到下机将资源转给下个用户为止。操作是联机的,输入输出也是联机的(由CPU完成),因此程序运行时间拉的很长(手工操作),即在程序运行之前需要花费大量的准备时间。1.3操作系统的发展历程清华大学出版社批处理阶段(20世纪50年代末)从一个作业到另一个作业的过度摆脱人工干预,使其自动化,这就出现了批处理(这是系统追求资源利用率),而批处理也经历了两个阶段:早期的联机批处理;操作员将若干个作业合成一批,依次放在卡片读入机上,监督程序负责输入到磁带上,然后监督程序再开始自动地处理各个作业(包括读入内存、汇编或编译、连接装配),并启动程序运行。脱机批处理:在主机之外另设一台功能较为简单的小型卫星机,如图1.3所示。1.3操作系统的发展历程1.3.1操作系统的形成清华大学出版社卡片输入机打印机卫星机输入带输出带执行带系统带日志调入作业输出结果图1.3脱机成批处理主机批处理系统是形成后来操作系统的雏形。它的产生促进了其它软件的发展,其主要有以下几个方面:结束批处理阶段清华大学出版社输入输出标准程序和程序库;手工操作阶段,所有输入输出指令都是程序员直接写在程序中的。采用脱机输入输出后,系统就必须提供一套标准输入输出程序供用户调用,这样导致了程序库建立(包括汇编程序、编译程序、装配程序等)。库程序放在磁带上,只有监督程序放在内存。运行日志和记帐;负责记录系统资源的使用日志。覆盖技术;将程序和数据分成若干块,其中某些块放在辅存上,运行时调入内存覆盖已执行完程序,或数据。批处理阶段(20世纪50年代末)1.3操作系统的发展历程1.3.1操作系统的形成清华大学出版社批处理系统的问题:虽然成批处理系统缩短了手工操作的时间,促进了软件的发展,但仍存在不少缺点:监督程序、系统程序和用户程序之间是通过相互调用的方法来实现转移的。因此,若执行了一条非法指令,则整个系统就会停顿下来;若陷入死循环,则整个系统也无法向前推进。无法防止用户程序会冲掉一部分监督程序,因而可能使整个系统混乱。进入执行系统阶段1.3操作系统的发展历程1.3.1操作系统的形成清华大学出版社执行系统阶段(20世纪60年代初期)这个时期硬件获得了两个重要进展,一是通道,二是中断。对整个计算机体系来说都是极为重要的。有了中断和通道就实现了两个方面的功能:主机与输入输出的并行操作系统输入输出控制程序和中断处理程序永驻内存成为执行程序(或监督程序、控制程序)。通过时钟记时中断防止程序死循环;非法操作也会产生中断通知系统。图1.4给出了此时内存空间用户程序┇控制语言和命令解释器作业序列号输入输出控制程序中断处理程序用户程序区域执行/监控程序图1.4常驻监控程序内容1.3操作系统的发展历程1.3.1操作系统的形成清华大学出版社执行系统也推动软件发展,主要有两个方面:系统程序模块化:为保障系统修改方便,需要将整个系统模块化。命令语言的出现:执行系统的出现促进了作业控制语言的发展,但那时主要采用的是卡片式。执行系统仍然存在若干缺陷,最主要的,此时仍是单道系统,并不能很好地消除处理机对外部设备传输等待(如用户的输出量很大)。为克服这样问题,就促进了多道批处理系统及后续系统的产生。1.3操作系统的发展历程1.3.1操作系统的形成清华大学出版社手工操作阶段:用户上机完全手工操作,用户干预整个过程批处理阶段:实现用户之间转接自动化,无需用户干预执行系统阶段:由于中断和通道的产生,使得监督有了控制能力,有了管理者.1.3操作系统的发展历程1.3.1操作系统的形成清华大学出版社以上3个阶段可以看成是操作系统的产生过程,由多道批处理和多道程序设计概念的发展开始了操作系统趋于完善的又一发展历程。多道批处理系统最大的问题就是不支持交互,为了克服这一弱点,又很快就产生了分时系统等不同类型的操作系统。多道和分时的出现标志着较为完善的操作系统形成。1.3操作系统的发展历程1.3.2操作系统的完善清华大学出版社多道批处理操作系统的工作原理体现两个特征,一是“多道”,二是“成批”。如图1.5图1.5多道批处理系统工作原理作业卡片机作业1作业2┇作业nOS磁盘(输入井)磁盘(输出井)内存后备作业完成作业打印机处理器作业卡片机内存作业1作业2┇作业nOS后备作业完成作业打印机处理器结束1.4操作系统的分类1.4.1多道批处理操作系统清华大学出版社图1.5中输入井和输出井分别为磁盘或磁鼓上的两个区域,是系统特别划分出来用于输入输出的区域。设置输入井和输出井的目的有两个:协调输入/输出设备速度与处理机速度的差异。为作业调度提供条件。多道批处理系统的优点是:系统资源利用率比较高。吞吐率高。图1.6给出了单道与多道程序运行示意图。1.4操作系统的分类1.4.1多道批处理操作系统清华大学出版社(a)单道情形:打印请求打印请求图1.6单道与多道程序运行情况(b)多道情形:程序A监督程序I/O设备绘图仪请求t1t2t3t4t5t6t7t8CPU打印机绘图仪程序B打印完成绘图完成CPU空闲t9t10仍有空闲A/B运行?结束下一步下一步下一步下一步下一步下一步下一步下一步用户程序监督程序I/O操作I/O中断请求启动I/OI/O完成中断I/O中断请求启动I/Ot1I/O中断处理结束t2t3t4t5t6t7t8CPUCPU空闲空闲清华大学出版社多道批处理系统的缺点也是明显的:没有交互能力,用户无法干预自己作业的运行,使用起来不方便。用户作业可能需要等待很长时间才能得到运行。多道批处理操作系统下需要解决的问题:多道批处理系统是一种有效但又十分复杂的系统,为使系统中的多道程序间能协调地运行,必须解决在1.2.2节所述的操作系统主要功能:这些概念将在后续章节中分别加以详细讨论。1.4操作系统的分类1.4.1多道批处理操作系统清华大学出版社分时操作系统(TimeSharingOperatingSystem)
本文标题:计算机操作系统原理
链接地址:https://www.777doc.com/doc-7074095 .html