2020/2/121操作系统院(系):计算机科学与技术学院研究室:数据与知识工程教师:初妍2020/2/122内容概述1.1操作系统的目标和作用1.2操作系统的发展过程1.3操作系统的基本特性1.4操作系统的主要功能1.5操作系统的结构设计操作系统属于软件中的系统软件,起到对系统资源进行管理和分配,提高运行效率的作用。2020/2/1231.1操作系统的目标和作用1.1.1操作系统的目标1.1.2操作系统的作用1.1.3推动操作系统发展的主要动力2020/2/124计算机系统组成计算机系统软件硬件及固件(裸机)应用软件系统软件DBMS,编译软件操作系统2020/2/125计算机硬件操作系统系统工具应用软件应用用户应用开发人员操作系统开发人员紧贴系统硬件之上,所有其他软件之下(是其他软件的共同环境)2020/2/1261.1.1操作系统的目标目前存在着多种类型的OS,不同类型的OS,其目标各有所侧重。通常在计算机硬件上配置的OS,其目标有以下几点:1.方便性2.有效性3.可扩充性4.开放性2020/2/1271.方便性(用户的观点)操作系统最终是要为用户服务的。提供良好的、一致的用户接口,弥补硬件系统的类型和数量差别,使计算机更容易使用。2.有效性(系统管理人员的观点)操作系统要合理地组织计算机的工作流程,改善系统资源的利用率,提高系统的吞吐量从而使有限的资源完成更多的任务。3.可扩充性OS应采用层次化结构,以便于增加新的功能层次和模块,并能修改老的功能层次和模块。4.开放性遵循标准规范,方便地实现互连,实现应用程序的可移植性和互操作性。2020/2/1281.1操作系统的目标和作用1.1.1操作系统的目标1.1.2操作系统的作用1.1.3推动操作系统发展的主要动力2020/2/1291.OS作为用户与计算机硬件系统之间的接口OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。或者说,用户在OS帮助下,能够方便、快捷、安全、可靠地操纵计算机硬件和运行自己的程序。注意:OS是一个系统软件,因而这种接口是软件接口。命令方式联机用户接口(命令)脱机用户接口(批处理)系统调用方式形式上类似于过程调用,在应用编程中使用(API)图标--窗口方式用户通过屏幕上的窗口和图标来操纵计算机系统和运行自己的程序。1.1.2操作系统的作用OperatingSystem2020/2/1210图1-1OS作为接口的示意图用户应用程序系统调用命令图形、窗口操作系统计算机硬件操作系统各种应用程序DOS2020/2/12112.OS作为计算机系统资源的管理者计算机的资源包括处理机、存储器、I/O设备及数据和程序等管理的内容:资源的当前状态(数量和使用情况)、资源的分配、回收和访问操作,相应管理策略(包括用户权限)处理机管理存储器管理I/O设备管理文件管理Welcome2020/2/12123.OS用作扩充机器OS是扩展机(extendedmachine)/虚拟机(virtualmachine)将覆盖了软件的机器称为扩充机器或虚拟机在裸机上添加:设备管理、文件管理、存储管理(针对内存和外存)、处理机管理(针对CPU)。如果我们在裸机上覆盖一层I/O设备管理软件,用户便可以利用这层I/O设备管理软件提供给用户的接口来进行数据的输入和输出,那么用户此时看到的计算机是一台功能强大、使用方便的计算机,但实际上,计算机的硬件丝毫没有变化,这样的计算机称为软件扩充的机器,或称软件虚拟机。操作系统的非形式化定义(关键点):系统软件,程序模块的集合,资源管理和用户接口功能2020/2/12131.1操作系统的目标和作用1.1.1操作系统的目标1.1.2操作系统的作用1.1.3推动操作系统发展的主要动力2020/2/12141.1.3推动操作系统发展的主要动力1.不断提高计算机资源利用率计算机发展的初期,计算机系统昂贵,用作集中计算。2.方便用户在一定程序上也是它的界面,风格很方便用户,只需要鼠标点击,很方便。3.器件的不断更新换代CPU的位宽度(指令和数据)、快速外存(摩尔定律)4.计算机体系结构的不断发展从单处理机到多处理机;从单机OS到网络OS软件呢?2020/2/1215第一章操作系统引论1.1操作系统的目标和作用1.2操作系统的发展过程1.3操作系统的基本特征1.4操作系统的主要功能1.5操作系统的结构设计2020/2/12161.2操作系统的发展过程1.2.1无操作系统的计算机系统1.2.2单道批处理系统1.2.3多道批处理系统1.2.4分时系统1.2.5实时系统1.2.6网络操作系统1.2.7分布式操作系统2020/2/12171.2.1无操作系统的计算机系统1.人工操作方式1946~50年代(电子管),集中计算(计算中心),计算机资源昂贵用户在计算机上算题的所有工作都要用户人工干预,如程序的装入、运行、结果的输出等。随着计算机速度的加快,人机矛盾越来越大,直至无法容忍。必须寻求新的办法。工作方式用户:用户既是程序员,又是操作员;用户是计算机专业人员;编程语言:机器语言输入输出:纸带或卡片计算机的工作特点用户独占全机:不出现资源被其他用户占用,资源利用率低CPU等待用户:计算前,手工装入纸带或卡片;计算完成后,手工卸取纸带或卡片;CPU利用率低用户纸带、卡片计算机2020/2/12182.脱机输入/输出(Off-LineI/O)事先将用户程序或数据的纸带或卡片放入纸带输入机,在外围机的控制下输入到磁带上,CPU从磁带上读入数据;输出过程正好相反。这种脱机I/O方式的主要优点如下:(1)减少了CPU的空闲时间。(2)提高I/O速度。输入设备外围机主机外围机输出设备磁盘或磁带磁盘或磁带图1-2脱机I/O示意图2020/2/1219无操作系统的主要问题主要矛盾计算机处理能力的提高,手工操作的低效率(造成浪费);用户独占全机的所有资源;提高效率的途径批处理2020/2/12201.2操作系统的发展过程1.2.1无操作系统的计算机系统1.2.2单道批处理系统1.2.3多道批处理系统1.2.4分时系统1.2.5实时系统1.2.6网络操作系统1.2.7分布式操作系统2020/2/1221批处理系统理解批处理系统主要是采用了批处理技术。批处理技术是指计算机系统对一批作业自动进行处理的一种技术。所谓批处理系统是指加载在计算机上的一个系统软件,在它的控制下,计算机能够自动地成批地处理一个或多个用户的作业。所谓中断是指当主机接到外界硬件发来的中断信号时,停止原来的工作,转去处理中断的事件。在处理中断完成以后,主机又回到原来的工作点继续工作。这样可以使用户程序的I/O申请完成后,主机能自动在原中断点之后继续运行,同时为多道程序并发执行打下了基础。2020/2/12221.2.2单道批处理系统(SimpleBatchProcessingSystem)1.单道批处理系统的处理过程图1-3单道批处理系统的处理流程把下一个作业的源程序转换为目标程序源程序有错吗?否装配目标程序还有下一个作业?是否停止运行目标程序是开始2020/2/12232.单道批处理系统的特征单道批处理系统是最早出现的一种OS,严格地说,它只能算作是OS的前身而并非是现在人们所理解的OS。尽管如此,该系统比起人工操作方式的系统已有很大进步。该系统的主要特征如下:(1)自动性在顺利的情况下,磁带上的一批作业能自动地逐个地依次运行,而无需人工干预(2)顺序性磁带上的各道作业是顺序地进入内存,完成顺序与进入内存顺序相同(3)单道性内存中只有一道程序运行CPU和I/O设备使用忙闲不均(取决于当前作业的特性)对计算为主的作业,外设空闲对I/O为主的作业,CPU空闲2020/2/12241.2操作系统的发展过程1.2.1无操作系统的计算机系统1.2.2单道批处理系统1.2.3多道批处理系统1.2.4分时系统1.2.5实时系统1.2.6网络操作系统1.2.7分布式操作系统2020/2/12251.2.3多道批处理系统(MultiprogramedBatchSystem)1.多道程序设计的基本概念在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源,致使系统性能较差。为了进一步提高资源的利用率和系统吞吐量,在60年代中期又引入了多道程序设计技术,由此而形成了多道批处理系统。在该系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。2020/2/1226图1-4单道和多道程序运行情况|←CPU空闲-→||←CPU空闲-→|t1t2t3t4t5t6t7t8结束中断I/O完成启动I/OI/O中断请求I/O完成启动I/OI/O中断请求用户程序监督程序I/O操作(a)单道程序运行情况程序A程序AI/O请求程序AI/O完成程序B程序BI/O请求程序C程序CI/O请求程序D程序DI/O请求CI/O完成C再被调度程序BI/O完成程序A再被调度程序A程序B程序C程序D调度程序(b)四道程序运行情况A完成结束中断2020/2/12272.多道批处理系统的特征(1)多道性内存中同时存放几个作业,并允许并发执行,从而有效地提高了资源利用率和系统吞吐量。(2)无序性多个作业完成的先后顺序与它们进入内存的顺序之间无严格对应关系。(3)调度性作业调度,从后备队列进入内存;进程调度,分配处理机运行。(4)宏观上并发、微观上串行2020/2/12283.多道批处理系统的优缺点优点:资源利用率高:CPU、内存和I/O设备利用率较高;系统吞吐量大:单位时间内完成的工作总量大。缺点:用户交互性差:整个作业完成后或中间出错时,才与用户交互,不利于调试和修改;作业平均周转时间长:短作业的周转时间显著增长;2020/2/12294.多道批处理系统需要解决的问题(1)处理机管理问题(第3章)分配(回收)处理机共享资源,既满足程序需要,又提高利用率。(2)内存管理问题(第4章)分配内存以“各得其所”,且不因相互重迭而丢失信息。(3)I/O设备管理问题(第5章)既方便用户使用I/O设备,又提高设备利用率。(4)文件管理问题(第6章)组织程序和数据,便于用户使用,保证数据的安全性和一致性。(5)作业管理问题(第3章)对各种应用程序进行组织。操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序集合。2020/2/1230单道批处理系统与多道批处理系统的比较单道多道内存使用每次一个作业每次多个作业(充分利用内存)作业次序顺序,先进先出无确定次序占用CPU独占交替占用是否需要调度不需要需要2020/2/12311.2操作系统的发展过程1.2.1无操作系统的计算机系统1.2.2单道批处理系统1.2.3多道批处理系统1.2.4分时系统1.2.5实时系统1.2.6网络操作系统1.2.7分布式操作系统2020/2/12321.2.4分时系统(Time-SharingSystem)1.分时系统的产生如果说,推动多道批处理系统形成和发展的主要动力,是提高资源利用率和系统吞吐量,那么,推动分时系统形成和发展的主要动力,则是用户的需求。或者说,分时系统是为了满足用户需求所形成的一种新型OS。它与多道批处理系统之间,有着截然不同的性能差别。用户的需求具体表现在以下几个方面:(1)人机交互。(对程序进行调试、修改等直接控制)(2)共享主机。(主机贵,提高资源利用率)(3)便于用户上机。(作业直接从终端进入,并能控制)2020/2/1233分时系统定义分时系统:指在一台计算机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,每个用户都可通过自己的终端以交互方式使用计算机。2020/2/1234解释把计算机的系统资源(尤其是CPU时间)进行时间上的分割,每个时间段称为一个时间片(timeslice),每个用户依次轮流使用时