资源预览内容
第1页 / 共87页
第2页 / 共87页
第3页 / 共87页
第4页 / 共87页
第5页 / 共87页
第6页 / 共87页
第7页 / 共87页
第8页 / 共87页
第9页 / 共87页
第10页 / 共87页
亲,该文档总共87页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第一章第一章 操作系统引论操作系统引论第一章 操作系统引论1.1 操作系统的目标和作用1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能 1.5 操作系统的结构设计 1.1 操作系统的目标和作用 1.1.计算机系统的组成计算机系统的组成 硬件系统硬件系统(裸机):CPU、存储器(主存、辅存)、I/O、I/O控制系统 软件系统软件系统:系统软件、应用软件 系统软件系统软件:管理计算机本身的操作。如操作系统、编译. 应用软件应用软件:提供给用户进行解题。如,科学计算、事物管理2.计算机系统的层次结构 图 1.1 计算机系统的层次结构 3.操作系统的目标 目前存在着多种类型的OS,不同类型的OS,其目标各有所侧重。通常在计算机硬件上配置的OS,其目标有以下几点: 1. 方便性 2. 有效性 3. 可扩充性 4. 开放性 4. 操作系统的地位 计算机系统由硬件和软件组成 操作系统在硬件基础上的第一层软件是其他软件和硬件之间的接口操作系统设计者操作系统设计者应用软件设计者应用软件设计者应用软件设计者应用软件设计者5. 操作系统的作用 OS作为用户与计算机硬件系统之间的接口 OS作为计算机系统资源的管理者 OS用作扩充机器6. 推动操作系统发展的主要动力 不断提高计算机资源利用率不断提高计算机资源利用率 方便用户方便用户 器件的不断更新换代器件的不断更新换代 计算机体系结构的不断发展计算机体系结构的不断发展 1.2 操作系统的发展过程1.2.1 1.2.1 无操作系统的计算机系统无操作系统的计算机系统1. 1. 人工操作方式人工操作方式 从第一台计算机诞生(1945年)到50年代中期的计算机,属于第一代,这时还未出现OS。计算机操作是由用户采用人工操作方式直接使用计算机硬件系统,即由程序员将事先已穿孔(对应于程序和数据)的纸带(或卡片)装入纸带输入机(或卡片输入机),再启动它们将程序和数据输入计算机, 然后启动计算机运行。当程序运行完毕并取走计算结果后, 才让下一个用户上机。2.人工操作方式的特点特点:用户独占全机CPU等待人工操作独占性串行性缺点:计算机的有效机时严重浪费效率低3. 脱机输入/输出方式 在采用脱机输入输出方式时,程序和数据的输入输出都是在外围计算机的控制下完成的,即它们是脱离主机进行的,故称之为脱机输入输出操作。 脱机I/O方式的主要优点如下: (1)减少了CPU的空闲时间。 (2) 提高I/O速度。图 1-2 脱机I/O示意图脱机输入技术 为解决低速输入设备与CPU速度不匹配的问题,可将用户程序和数据,在一台外围计算机的控制下,预先从低速输入设备输入到磁带上,当CPU需要这些程序和数据时,再直接从磁带机高速输入到内存,从而大 大加快了程序的输入过程,减少了CPU等待输入的时间。脱机输出技术 当程序运行完毕或告一段落,CPU需要输出时,无须直接把计算结果送至低速输出设备,而是高速地把结果送到磁带上,然后再另一台外围机地控制下,把磁带上的计算结果由相应的输出设备输出,着就大大加快了程序的输出过程。1.2.2 单道批处理系统 1.单道批处理系统的处理过程单道批处理系统的处理过程 批处理是指计算机系统对一批作业自动进行处理的一种技术。 单道批处理在内存中仅有一道作业。图 1-3 单道批处理系统的处理流程 2. 2. 单道批处理系统的特征单道批处理系统的特征 单道批处理系统是最早出现的一种OS,严格地说,它只能算作是OS的前身而并非是现在人们所理解的OS。 该系统的主要特征如下: (1) 自动性 (2) 顺序性 (3) 单道性 1.2.3 多道批处理系统 1. 1. 多道程序设计的基本概念多道程序设计的基本概念 在计算机内存中同时存放若干道已开始运行尚未结束的程序,它们交替运行,共享系统中的各种硬、软件资源,从而使处理机得到充分利用。 在该系统中, 用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。卡片卡片IBM1401IBM7094IBM1401输入磁带输入磁带磁带机磁带机卡卡片片阅阅读读机机输出磁带输出磁带打打印印机机图图14 早期批处理系统早期批处理系统$END$RUNData for program$LOADFortran program$FORTRAN $JOB, 10,429754 Cherry Chen 图图1 15 5 典型的典型的FMS JOB FMS JOB 结构结构图 1-6 单道和多道程序运行情况 2.多道批处理系统的特点 多道: 多道指某个作业占用CPU,若由于某种原因暂时不用CPU 则系统让第二个作业占用CPU成批处理: 用户自己不能干预自己作业的运行,一旦发现作业错误不能及时改正,并延长开发软件时间,所以适用于成熟的程序。无序性调度性 3.多道批处理系统的优缺点 (1) 资源利用率高 (2)(2) 系统吞吐量大 (3)(3)可提高内存和I/O设备利用率(4)(4)平均周转时间长(5)(5)无交互能力。适合大型科学计算、数据处理。适合大型科学计算、数据处理。 4.多道批处理需要解决的问题 (1) 处理机管理问题。 (2)(2) 内存管理问题。 (3)(3) I/O设备管理问题。 (4)(4) 文件管理问题。 (5)(5) 作业管理问题。 1.2.4 分时系统 1. 1. 分分时时系系统统(Time-Sharing (Time-Sharing System)System)的的产产生生 分时系统是为了满足用户需求所形成的一种新型OS。它与多道批处理系统之间,有着截然不同的性能差别。用户的需求具体表现在以下几个方面: (1) 人机交互 (2) 共享主机 (3) 便于用户上机 主机主机终终端端图 1-7 分时系统示意图2.分时系统的思想采用时间片轮的方法,同时为许多终端用户服务,对每个用户能保证足够快的响应时间,并提供交互会话的功能。时间片:将CPU的时间划分成若干个片段,称为时间片,操作系统以时间片为单位,轮流为每个终端用户服务设计目标:对用户的请求及时响应,并在可能条件下尽量提高系统资源的利用率。适合办公自动化、教学及事务处理等要求人机会话的场合。 3.分时操作系统工作方式 一台主机连接了若干个终端每个终端有一个用户在使用交互式的向系统提出命令请求系统接受每个用户的命令采用时间片轮转方式处理服务请求并通过交互方式在终端上向用户显示结果用户根据上步结果发出下道命令4.分时系统实现中的关键问题 为实现分时系统,其中,最关键的问题是如何使用户能与自己的作业进行交互,即当用户在自己的终端上键入命令时, 系统应能及时接收并及时处理该命令,再将结果返回给用户。 此后, 用户可继续键入下一条命令,此即人机交互。即使有多个用户同时通过自己的键盘键入命令,系统也应能全部地及时接收并处理: (1) 及时接收。 (2) 及时处理。 5.分时操作系统特点多路性交互性 “独占”性及时性同时有多个用户使用一台计算机同时有多个用户使用一台计算机宏观上:是多个人同时使用一个宏观上:是多个人同时使用一个CPUCPU微观上:多个人在不同时刻轮流使用微观上:多个人在不同时刻轮流使用CPUCPU用户根据系统响应结果进一步用户根据系统响应结果进一步提出新请求提出新请求( (用户直接干预每一步用户直接干预每一步) )用户感觉不到计算机为其他人服务用户感觉不到计算机为其他人服务(OSOS提供虚机器,各个用户的虚提供虚机器,各个用户的虚机器互不干扰)机器互不干扰)系统对用户提出的请求及时响应系统对用户提出的请求及时响应 6.影响响应时间的因素终端数目多少调度算法(时间片的选取)信息交换量和信息交换速度机器处理能力请求服务的时间长短及服务请求的分布 1.2.5 实时系统 “实时”,是表示“及时”,而实时系统(Real-Time System)是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。特点:及时性要求高,系统可靠性高。 1.实时操作系统的分类实时控制系统:通常是指以计算机为中心的生产过程控制系统,又称计算机控制系统。 如:钢铁冶炼和钢板轧制的自动控制、炼油、化工生产过程的自动控制,军事控制等。实时信息处理系统:计算机及时接收从远程终端发来的服务请求,根据用户提出的问题对信息进行检索和处理,并在很短时间内对用户做出正确回答。例如:银行,机票订购系统、股市行情实时信息处理系统等。 2. 实时操作系统主要追求目标对外部请求在严格时间范围内作出反应高可靠性安全性完整性实时系统必须和先进的技术装备相结合实时系统必须和先进的技术装备相结合(1)多路性 (2)独立性 (3)及时性 (4)交互性 (5)可靠性 3.实时系统与分时系统特征的比较1.2.6 操作系统的发展 操作系统(包括其前身)成为独立的程序,已有40年的历史,它经过60和70年代的大发展时期,到80年代虽已趋于成熟,但它仍继续沿着两个方向继续向前发展,一个是随着计算机系统结构的发展,形成多处理机操作系统、网络操作系统和分布式操作系统;另一个则是把操作系统应用于微机,形成微机操作系统。1.多处理机操作系统 在1975年前后,打破了以单处理机体系结构为主的局面,形成了由多台处理机通过互连网络连接在一起的计算机系统。近年来所推出的大、中、小型机,大多数都在采用多处理机体系结构,甚至在高档微机中也出现了这种趋势。多处理机结构紧密耦合(Tightly Coupled)多处理机结构 松散耦合(Loosely Coupled)多处理机结构多处理机类型主从式 独立管理程序系统浮动式管理程序控制方式2. 网络操作系统 网络操作系统是建立在主机操作系统基础上,用于管理网络通信和共享资源,协调各主机上任务地运行,并向用户提供统一的、有效的网络接口的软件集合。 按网络所覆盖的地理范围和互连计算机之间的距离的不同,可把计算机网络分为两种: 广域网WAN(Wide Area Network) 局域网LAN(Local Area Network) 网络操作系统的基本功能网络通信 资源管理提供多种网络服务提供网络接口网络操作系统网络操作系统网络服务网络服务应用程序应用程序 通信软件通信软件(协议支持)(协议支持)单机单机操作系统操作系统用户应用程序用户应用程序图图18 局域网操作系统的结构局域网操作系统的结构 通信软件通信软件(协议支持)(协议支持)1)1)分布式操作系统的功能分布式操作系统的功能资源管理任务分配分布式进程同步和通信管理程序浮动3. 分布式操作系统 2) 要解决的关键问题 分布式OS设计过程中要解决的关键问题: (1)通信原语的设计(2)资源管理(3)系统容错 3)分布式操作系统特征1.系统内只有一个全局操作系统,采用分布式控制的办法,负责全系统的资源管理和运行控制。2.资源进一步共享:系统内包含有多个物理资源和逻辑资源,它们可以动态地分配给各个任务3.透明性: 资源共享,分布。系统对用户提供一个透明的、一体化的用户界面。4.自治性: 处于分布式系统的多个主机处于平等地位,无主从关系所有资源都必须高度自治而相互配合地工作,它们之间不存在层次控制或主从控制的关系。5.处理能力增强、速度更快、可靠性增强 4) 网络和分布式的区别 (1) 分布具有各个计算机间相互通讯, 无主从关系;网络有主从关系(2) 分布式系统资源为所有用户共享; 而网络有限制地共享(3) 分布式系统中若干个计算机可相互 协作共同完成一项任务 4.微型机(个人)操作系统计算机在某一时间内为单用户服务,其追求目标是界面友好,使用方便,丰富的应用软件。(1) MS-DOS(2)微机多任务操作系统微机多任务操作系统的分类按系统结构分: 内在式(built-in)贴附式(bolt-on )按任务调度方式分:先决式(preemptive)协作式(cooperative)微型机操作系统(续)1)内在式是指操作系统开始设计就把多任务功能构筑. 其中,如 OS/2和UNIX操作系统。2)贴附式是指把多任务功能附加到一个单任务操作系统中而形 成,如Microsoft的Windows就是在DOS基础上加入多任务功能而构成的多任务操作系统。微型机操作系统(续)3)先决式是指由系统内部时钟来决定CPU由一个任务转移去执行另一个任务的时刻,转移时刻是系统以某种分配策略预先确定的,应用程序无权干预。如OS/2和UNIX都是先决式多任务操作系统。4)协作式是指几个应用程序联合动作,通过某种通信方式来分享CPU。Windows和Novell公司的Netware网络操作系统是以协作式来工作的。 5. 嵌入式操作系统1)什么是嵌入式系统:什么是嵌入式系统: 在各种设备、装置或系统中,完成特定功能的软硬件系统它们是一个大设备、装置或系统中的一部分,这个大设备、装置或系统可以不是“计算机”通常工作在反应式或对处理时间有较严格要求环境中由于它们被嵌入在各种设备、装置或系统中,因此称为嵌入式系统 2)嵌入式系统软件:用于提供系统所需的功能和灵活性硬件 = (处理器、ASIC、存储器)用于提供所需的性能以及部分安全机制专用门阵列专用门阵列模拟模拟I/O处理器核处理器核存储器存储器 3) 嵌入式操作系统在嵌入式系统中的OS,称为嵌入式操作系统。嵌入式操作系统,是运行在嵌入式智能芯片环境中,对整个智能芯片以及它所操作、控制的各种部件装置等等资源进行统一协调、调度、指挥和控制的系统软件。 4 4)典型嵌入式操作系统的特性 完成某一项或有限项功能;不是通用型的 在性能和实时性方面有严格的限制 能源、成本和可靠性通常是影响设计的重要 因素 占有资源少、易于连接 系统功能可针对需求进行裁剪、调整和生成 以便满足最终产品的设计要求 5)嵌入式操作系统开发环境 通常配有源码级可配置的系统模块设计 丰富的同步原语 可选择的调度算法 可选择内存分配策略 定时器与计数器 多方式中断处理支持 多种异常处理选择 多种通信方式支持 标准语言库 数学运算库和开放式应用程序接口 6.操作系统领域中新的操作系统有线电视机顶盒领域,PowerTV移动通信领域,EPOC掌上计算机领域,Palm OS数字影像领域, Digita1.3 操作系统的基本特性 1.1.操作系统的定义操作系统的定义操作系统(Operating System,简称OS)是控制和管理计算机硬件和软件资源的一个系统软件,是一些程序模块的集合。它能以尽量有效、合理有效、合理的方式组织和管理计算机的软硬件资源,合理的组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能,使得用户能够灵活、方便、有效灵活、方便、有效的使用计算机,使整个计算机系统能高效地运行。它是系统软件的核心,是计算机处理时必不可少的非常重要的软件。2.操作系统的特征并发性共享性虚拟性异步性3.并发性并行性是指两个或多个事件在同一时间发生。 并发性是指两个或多个事件在同一时间间隔内发生。 (与并发相似,但多指硬件支持) 程序的并发执行,有效地改善了系统资源的利用率和提高了系统的吞吐量,但它使系统复杂化,操作系统必须具有控制和管理各种并发活动的能力。 4.共享性操作系统与多个用户的程序共同使用计算机系统中的资源资源共享是指系统中的硬件和软件资源不再为某个程序所独占,而是供多个用户共同使用。并发和共享是操作系统两个最基本的特征,这两者之间又是互为存在条件的。 资源共享是以程序的并发为条件的,若系统不允许程序并发执行,自然不存在资源共享问题。 若系统不能对资源共享实施有效的管理,也必将影响到程序的并发执行,甚至根本无法并发执行。 5.虚拟性 在操作系统中,所谓虚拟,是指把一个物理上的实体,变为若干个逻辑上的对应物。物理实体(前者)是实的, 而后者是虚的,相应地,用于实现虚拟的技术,称为虚拟技术。在OS中利用了多种虚拟技术,分别用来实现虚拟处理机、虚拟内存、 虚拟外部设备和虚拟信道等。6.6.异步性异步性( (AsynchronismAsynchronism) ) 在多道程序环境下,允许多个进程并发执行, 但由于竞争资源等因素的限制,使进程的执行不是“一气呵成,而是以“走走停停”的方式运行。多道程序环境下程序的执行,是以异步方式进行的;每个程序在何时执行,多个程序间的执行顺序以及完成每道程序所需的时间都是不确定和不可预知的。进程是以人们不可预知的速度向前推进,此即进程的异步性。1.4 操作系统的主要功能 从资源管理观点看,操作系统具有五大功能:处理机管理存储器管理设备管理文件管理作业管理1.处理机管理 主要任务:是对处理机的分配和运行实施有效管理。对处理机管理,可归结为对进程的管理。进程管理的主要功能进程控制:当用户作业要运行时,应为之建立一个或多个进程,并为它分配除处理机以外的所有资源,将它放入进程就绪队列。当进程运行完成时,立即撤消该进程,以便及时释放其所占有的资源。进程控制的基本功能就是创建和撤消进程以及控制进程的状态转换。进程同步:所谓进程同步是指系统对并发执行的进程进行协调。最基本的进程同步方式是使诸进程以互斥方式访问临界资源。进程管理的主要功能(续)此外,对于彼此相互合作、去完成共同任务的诸进程,则应由系统对它们的运行速度加以协调。进程通信:对于相互合作的进程,在它们运行时,相互之间往往要交换一定的信息,这种进程间所进行的信息交换称为进程通信。 进程调度:当一个正在执行的进程已经完成,或因某事件而无法继续执行时,系统应进行进程调度,重新分配处理机。进程调度是指按一定算法,如最高优先算法,从进程就绪队列中选出一进程,把处理机分配给它,为该进程设置运行现场,并使之投入运行。 2.存储器管理存储器管理的主要任务存储器管理的主要任务: :为多道程序的并发运行提供良好环境; 便于用户使用存储器; 提高存储器的利用率; 为尽量多的用户提供足够大的存储空间。存储器管理的功能内内存存分分配配:多道程序能并发执行的首要条件是,各道程序都有自己的内存空间,因此,为每道程序分配内存是存储器管理的最基本功能。内内存存保保护护:为保证各道程序都能在自己的内存空间运行而互不干扰,要求每道程序在执行时能随时检查对内存的所有访问是否合法。必须防止因一道程序的错误而扰乱了其它程序,尤其应防止用户程序侵犯操作系统的内存区。存储器管理的功能(续)地地址址映映射射:在多道程序的系统中,操作系统必须提供把程序地址空间中的逻辑地址转换为内存空间对应的物理地址的功能。地址映射功能可使用户不必过问物理存储空间的分配细节,从而为用户编程提供了方便。内存扩充:由于物理内存的大小可能限制了大型作业或多个作业的并发执行,为了满足用户的要求并改善系统性能,必须对内存加以扩充。但我们无须去真正地增加内存空间,而只须借助于虚拟存贮技术,便可获得这样地效果,使系统能运行内存要求量远比物理内存大得多得作业,或让更多得作业并发执行。 3.设备管理1)1)设备管理的主要任务设备管理的主要任务: :为用户程序分配I/O设备;完成用户程序请求的I/O操作;提高CPU和I/O设备的利用率;改善人机界面。2)设备管理程序应具有的功能缓缓冲冲管管理理:几乎所有的外围设备于处理机交换信息时,都要利用缓冲来缓和CPU和I/O设备间速度不匹配的矛盾,和提高CPU与设备、设备与设备间操作的并行程度,以提高CPU和I/O设备的利用率。设设备备分分配配:系统根据用户所请求的设备类型和所采用的分配算法对设备进行分配,并将未获得所需设备的进程放进相应设备的等待队列。 设备管理程序应具有功能(续)设设备备处处理理:启动指定的I/O设备,完成用户规定的I/O操作,并对由设备发来的中断请求进行及时响应,根据中断类型进行相应的处理。虚虚拟拟设设备备功功能能:通常,把一次仅允许一个进程使用的设备称为独占设备。系统可通过某种技术使该设备成为能被多个用户共享的设备,以提高设备利用率及加速程序的执行过程。可使每个用户都感觉到自己在独占该设备。 4.文件管理文件存储空间的管理目录管理文件读、写管理文件保护向用户提供接口5.作业管理1 1)作作业业管管理理的的主主要要任任务务: :是根据系统条件和用户需要,对作业的运行进行合理的组织、调度及相应的控制。2 2)作作业业调调度度:作业调度是指根据系统的能力和当前作业的运行情况,按一定策略,从后备作业队列中选出一批作业,为它们分配所需的I/O设备和存储空间,将它们调入内存并为之建立相应的进程,使之成为具有获得处理机资格的侯选进程。3 3)作作业业控控制制:作业控制是指作业从进入系统开始,直到运行完成的整个过程中,用户可通过某种形式向系统发出各种命令,以对自己的作业进行控制和管理。1.5 操作系统的结构设计 1.5.1 1.5.1 软件工程的基本概念软件工程的基本概念 1. 1. 软件的含义软件的含义 软件是指当计算机运行时,能提供所要求的功能和性能的指令和程序的集合,该程序能够正确地处理信息的数据结构;作为规范软件,还应具有描述程序功能需求以及程序如何操作使用的文档。2. 2. 软件工程的含义软件工程的含义 软件工程是指运用系统的、规范的和可定量的方法,来开发、运行和维护软件。其目的是为了解决在软件开发中所出现的编程随意、软件质量不可保证以及维护困难等问题。 无结构OS模块化OS结构 分层式OS结构1.5.2 传统的操作系统结构在早期开发操作系统时,设计者只是把他的注意力放在功能的实现和获得高的效率上,缺乏首尾一致的设计思想。这种OS是无结构的。主要是编制紧凑程序,便于利用内存,对go to无限制,缺乏清晰的程序结构,难以维护和理解,增加了维护人员的负担。 1. 无结构操作系统无结构操作系统2. 模块化OS结构 模块化程序设计技术,是基于“分解”和“模块化”原则来控制大型软件的复杂度的。将OS按其功能划分为若干个具有一定独立性和大小的模块。并规定好各模块间的接口, 各模块之间能通过该接口实现交互。模块化OS结构优缺点优点:优点:提高设计的正确性;增强可适应性;加速开发过程缺点:缺点:难保证模块完全正确;未区分独占与共享资源。3.分层式OS结构1)有序分层的 高层只能调用低层功能,应考虑:嵌套、运行频率、公用模块、用户接口。2) 层次的设置 a.程序嵌套 b.运行频率 c.公用模块 d.用户接口1.5.3 微内核OS结构客户/服务器模式面向对象程序设计技术微内核技术1.1.客户客户/ /服务器模式服务器模式 为了提高OS的灵活性和可扩充性而将OS划分为两部分, 一部分是用于提供各种服务的一组服务器(进程), 另一部分是内核,用来处理客户和服务器之间的通信。 在内核中还应具有其它一些机构,用于实现与硬件紧密相关的一些较基本的功能。 单机环境下的客户/服务器模式客户/服务器模式的优点(1)提高了系统的灵活性和可扩充性。 (2)提高了OS的可靠性。 (3)可运行于分布式系统中。2. 面向对象的程序设计技术(Object-Orientated Programming) 1) 1) 面向对象技术的基本概念面向对象技术的基本概念 面向对象技术是20世纪80年代初提出并很快流行起来的。该技术是基于“抽象”和“隐蔽”原则来控制大型软件的复杂度的。OS中的各类实体如进程、线程、消息、存储器等,都使用了对象这一概念,相应地,便有进程对象线程对象、 存储器对象等。 2) 面向对象技术的优点 可修改性和可扩充性 继承性 正确性和可靠性3 微内核技术微内核技术的引入微内核技术的引入 微内核技术,是指精心设计的、能实现现代OS核心功能的小型内核,它运行在核心态,且开机后常驻内存。微内核的基本功能微内核的基本功能 (1) 进程管理。 (2) 存储器管理。 (3) 进程通信管理。 (4) I/O设备管理。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号