操作系统第1章-第4章(华中科技大学版).ppt
《操作系统第1章-第4章(华中科技大学版).ppt》由会员分享,可在线阅读,更多相关《操作系统第1章-第4章(华中科技大学版).ppt(227页珍藏版)》请在三一办公上搜索。
1、操作系统原理,操作系统是如何工作的?,为什么要学习操作系统?,2,操作系统的重要性,地位:操作系统是现代计算机、软件的基础收获:通过学习操作系统的,我们可以:掌握底层、大型软件的构造,及实现方法,3,掌握并行处理的思想 只有一个CPU在工作 如何使计算机同时完成多项任务呢?,程序间合作的方法 如:多个独立的程序,合作完成一项复杂任务 如何正确地保证它们有序地执行呢?,死锁的处理 一些复杂的系统常常会死机。死机的原因有那些,和程序间的合作有关吗?,为以后进行软件系统的开发,打好基础,4,了解操作系统的基本原理、概念 掌握操作系统的实现技术 通过实例的分析,培养解决问题的能力,如何学习操作系统,提
2、问:没有操作系统,计算机能否运行?计算机中为什么要配备操作系统?,配备操作系统的目的,管理各种软、硬件资源,提高资源的利用率方便用户使用计算机,(2)原理 并发处理:让一个CPU与所有的设备同时工作,二、操作系统,1.早期的操作系统(1)目标 提高CPU的利用率,将一个物理上的单处理机 改造成逻辑上的多处理机。为多个用户服务,(3)采用的软件技术 多道程序设计技术:多个程序在内存执行,2.当今的操作系统及发展(1)多样化(2)注重用户操作界面的友好(3)多处理机的并行处理(4)嵌入式操作系统(5)微软的观点,制定资源的分配策略及实施技术 解决程序之间的相互制约、及合作 引入虚拟机的概念,1.2
3、 操作系统的形成和发展,(1)受应用 需求 的推动(2)受硬件结构、软件技术的制约和推动,从时间上,可分为三个阶段:形成、完善、发展,从硬件载体上,可分为三个主要的分支:多用户操作系统(大、中、小型计算机、服务器,研究的主体)单用户操作系统(个人计算机)嵌入式操作系统(无完整的计算机),9,手工操 作阶段(无管理软件),多处理机、多核 系统,单用户操作系统网络操作系统分布式操作系统,嵌入式操作系统,操作系统形成和发展的各个阶段,三.多道程序设计技术,10,1、一个程序在内存的运行(单道程序设计),中央处理机外部设备,原因?,空闲,解决方法:在内存中,存放多个可运行的用户程序,11,2、多个程序
4、在内存的运行(多道程序设计),空闲?,12,(1)什么是多道程序设计技术 在主存中同时存放几道相互独立的程序;在管理程序控制之下,相互穿插地运行;当某道程序不能继续运行时(如等待外部设备传输数据):便将另一道程序投入运行。,13,(2)多道运行的特征 多道 宏观上并行 微观上串行执行系统采用多道程序设计技术后,就形成了操作系统。,14,操作系统形成,批处理,手工操 作阶段,联机批处理,脱机批处理,执行 系统,实时系统,问题:只有一个CPU,在内存中运行的每一个程序 如何才能得到CPU、并保持对其的占有的呢?,15,1.什么是多道成批处理 所有的作业输入外存;根据资源条件、及调度原则 选择一批作
5、业进入内存 进入内存的作业按某种次序交替运行 当前运行的程序,只要不自动放弃CPU 就一直运行下去。即:CPU不能被强行剥夺,第一种:系统不干涉程序的执行四.多道成批处理、及批量操作系统,16,2.批量操作系统 采用多道、成批处理的操作系统,称为批量操作系统。也称为批处理系统。它是操作系统的一种基本类型。,作业运行的方式 系统把用户提交的作业送入计算机外存;在适当的时机,由系统的作业调度程序在外存选择一批作业,装入内存进行多道运行。,特点:脱机操作(即:用户只需将程序提交给系统)合理搭配作业 多道运行,17,优点:资源利用率高、系统吞吐量大 缺点:(1)用户作业的周转时间长,或对用户的响应时间
6、慢;(2)用户无法与程序交互,使用不方便,解决?第二种:由系统控制内存中各个程序的执行,18,五.分时技术与分时操作系统 1.分时技术 产生的原因:用户希望 能与程序交互、有较快的响应时间快、甚至独占计算机,分时技术:把处理机的时间划分成很短的时间片(如几百毫秒),轮流分配给各个联机的作业使用,如果某个作业在分配的时间片用完后,计算仍未完成,就暂时中断执行,等待下一轮,19,作业i 作业i+1 作业n 作业i,提问:与批处理相比,CPU的效率有没有降低?,即:CPU的占用是可剥夺的。,20,3.分时操作系统的特点 多路调制性(一台主机与多个用户终端设备相连接)独占性 交互性,作业运行的方式 一
7、台计算机与多个终端设备连接 用户以联机的方式使用计算机 因此,也称为交互式系统。,21,六实时操作系统 什么是实时?,说明:实时处理,也可由分时操作系统 提供的实时处理功能来实现。(实时用户优先使用CPU),1.实时操作系统的定义 对外部输入的信息 能够在很短的、规定时间内处理完毕 并作出反应的一种专用操作系统,22,2.实时处理的类型(1)实时控制(必须物理实时)如生产过程控制、作战指挥等。(2)实时信息处理(可以逻辑实时)如订票系统、情报检索等。,3.实时操作系统的特点 及时响应 高可靠性和安全性 系统的整体性强,23,批处理,手工操 作阶段,联机批处理,脱机批处理,执行 系统,操作系统形
8、成,实时系统,多处理机、多核 系统,单用户操作系统网络操作系统分布式操作系统,嵌入式操作系统,操作系统的进一步发展,24,并行的方式:流水线(一条指令分解为多个步骤)向量机(一条指令同时在多个运算器上执行),七 多运算器的单处理机系统,CPU,特点:一条指令在多个运算器上执行目的:提高计算速度,适用性:适应面较窄,主要为专用,25,特点:CPU可分可合 分开:相当于多台主机 合作:提高计算速度(执行并行程序)多核?,八多处理机系统,26,网络操作系统除具备一般操作系统的功能外,还要增加一个网络通信模块。该模块由以下内容组成:通信接口中断处理程序;通信控制程序;各级网络协议软件,十网络操作系统,
9、5.网络OS扩充的功能(1)节点间文件的复制、远程打印、电子邮件(2)联合文件系统(3)程序的远程执行(如通过Telnet进行远程登),6.不足之处(1)节点间相互独立(2)节点对用户不透明(CORBA有改进)(3)要有一个集中管理的控制节点,28,操作系统是一个大型的程序系统 负责计算机的全部软、硬件资源的管理 即:资源的调度和分配 控制和协调并发的活动 实现信息的存取和保护,问题:操作系统是如何对资源进行管理的呢?,为用户使用计算机提供接口 使用户获得一个良好的工作环境,1.3 操作系统的概念,29,三、操作系统的资源管理功能,1.4 OS的特性及应解决的问题,一、特性并发 共享 不确定性
10、,二、应解决的基本问题、提出资源分配的策略要考虑:利用率、公平、资源的特性,、协调并发活动的关系 原因:并发活动也存在直接、间接的制约 多个独立的程序,进行合作的要求,、保证数据的一致性保证系统及用户的程序、数据不被破坏 避免与时间有关的错误,、实现数据的存取控制,操作系统的组织结构可从三个方面来描述(1)系统的结构:系统功能的分组、及如何交互(2)接口:是用户、及用户程序使用系统的手段(3)运行时的结构:定义了系统运行过程中 存在的实体类型、及调用方式,2.2 操作系统的组织结构,一、系统的结构化组织 操作系统是一组软件模块的集合。为了满足系统的正确性、可维护性和性能的要求 其功能模块,通常
11、可采用多种方法来进行组织,缺点:结构不清晰,难于理解 难以维护、及验证正确性(因数据的交叉引用),1.一体化结构 操作系统的所有功能模块和数据结构,放在一个逻辑模块中,任何子模块都不提供外部接口,优点:通信开销小,系统效率高;安全性好,应用:OS问世后被许多系统采用 典型的代表是 UNIX系统,如:AT&T system、BSD UNIX,UNIX核心的结构,优点:系统能作为抽象数据类型 或 对象的方法来实现,2.模块结构(采用面向对象技术)操作系统的功能,通过逻辑独立的模块来划分 而且相关模块间,具有良好定义的接口,缺点:存在潜在的性能退化,应用:还没有主要的商用操作系统采用此结构,特例:一
12、种试验性质的操作系统:Choices 通过快速原型法,进行操作系统的设计实验,优点:便于 系统的扩充、移植,形成不同策略的操作系统,3.可扩展内核结构 以一个公共的基本功能集合(核心)为基础 可实现各特定操作系统的一种模块化组织结构,缺点:模块间的通信开销大,降低了系统效率,应用:Mach 操作系统(卡内基-梅隆大学开发)Windows NT,主要支持:微内核操作系统,操作系统由内核和核外的多个服务(器)进程组成 内核提供最基本的功能 其他功能由服务器进程完成(采用面向对象的原则),Windows NT 的客户机服务器结构,.层次结构 操作系统由若干逻辑层组成。每一层都依赖于该层以下各层提供的
13、功能。,优点:易于扩充、可靠性增强、相当于多层虚拟机,问题:难于确定功能的划分、各层的内容和调用顺序问题:系统过于庞大,存在大量冗余,应用:在一些操作系统中只是作为设计的一种指导性原则(尽可能),经典案例:Dijkstr的THE系统,意义:通过它探索了怎样 构造一个能证明其正确性的,操作系统的方法,结论:由于分层结构的限制过于严格还没有一个现代操作系统完全按此方法构造,.3 基本的硬件结构,U 指 令 流 水,V 指 令 流 水,一、微机CPU的结构及指令的执行,关键问题:预取指令的命中率,二、微机存储器的结构,速度快成本高容量小,CASH与内存的分组数据交换,CPU,0,1,31,块号,CA
14、CHE,内 存,0,31,1,m,m+1,m+31,块号,问题:在CPU上执行的有各种程序,它们执行时的权利是相等的吗?,三、处理机状态及特权指令 1.为什么要设置处理机的状态,原因:系统中有两类程序:管理程序 用户程序 管理系统资源提出使用资源的申请 控制程序运行 被控制,实现:区分处理机的当前工作状态。,目的:为操作系统建立一个保护环境 对用户程序的执行加以限制,2.什么是处理机的状态 是用来表明处理机,当前正在执行哪一类程序的一种标志。,3.处理机状态的分类(1)管态(Supervisor mode,或系统态)操作系统的程序执行时,处理机所处的状态 在此状态下运行的程序:可执行全部指令(
15、包括一组所谓的特权指令)可使用系统的全部资源(包括整个存储区),说明:有的系统又将系统态进一步细分为:核态:操作系统的内核执行时,处理机所处 的状态。在此状态下:可执行全部的指令(包括特权指令)使用全部的系统资源。,管态:操作系统的管理程序执行时所处的状态。在此状态下:仅可使用系统的部分资源 不能执行特权指令。,(2)用户态(User mode)用户程序执行时,机器所处的状态。在此态下:禁止使用特权指令、及修改机器状态 不能直接使用资源 只允许访问程序自己的存储区,某个事件 发生时:(如I/O结束、电源掉电、定点加溢出等)系统中止现行程序的运行;引出处理该事件的程序,对该事件进行处理;处理完毕
16、后返回断点继续执行。,一、中断的概念,1.4 中断技术,所谓中断是指:,可以认为:现代操作系统的一切机制,都是由中断来激活的,二、中断的类型 按中断信号的来源可分为(1)外中断(中断)由处理机外部事件引起的中断称为外中断,简称为中断。包括输入输出中断、外中断。,(2)内中断(俘获)由处理机内部事件引起的中断称为内中断,又称为俘获(或陷阱、陷入:Trap)。包括:访管中断、程序性中断、机器故障中断等,三、中断进入,要解决的问题:(1)如何判别中断是否发生,及是哪一种中断?(2)如何保证中断处理完后返回断点继续执行?(3)如何得到该中断处理程序的地址?,另一种方式:外部设备也可通过总线来传递中断码
17、,7 6 5 4 3 2 1 0,中断码:,00010000,外部设备,.外中断触发器,问题2:如何保证中断处理完后,返回断点继续执行?,.保护现场和恢复现场(1)现场 指在中断的那一时刻,能确保当前运行程序继续运行的有关信息。主要包括三类:后继指令的主存地址 程序运行时所处的状态 当前指令的执行情况 各种通用寄存器中的内容,(2)保护现场 当中断发生时,必须立即把当前运行程序的现场信息保存在主存中,称之为保护现场。,问题:除通用寄存器外,其余的现场信息又是放在什么地方呢?,(3)恢复现场 被中断的程序重新运行之前,把该程序的现场信息,从主存送至原有的现场环境中。称为恢复现场。,.程序状态字(
18、PSW)(1)什么是程序状态字程序状态字是反映程序执行时,当前机器状态(在指令一级)的一组代码。,主要内容包括:后继指令的内存地址 当前指令执行情况 机器处于何种状态 程序执行时应屏蔽的中断(为什么?)寻址方法、编址、保护键,(2)程序状态字的实例 IBM 370 机 运行程序的PSW放在程序状态字寄存器中,PC 机(DOS)CS及IP 指令地址 lag 标志寄存器,PDP 11系列机 PC 指令计数器 PS 处理器状态寄存器(见P38图2.10),问题3:如何得到中断处理程序的地址?,.中断向量 中断向量:存放在内存中的,某类中断处理程序的入口地址、及处理器状态字的内容 中断向量表:用于存放
19、各类中断向量的一组连续的主存单元。通常在内存的低地址端。为什么?,(1)什么是中断响应 中断响应是指:当中央处理机发现已有中断请求时,中止现行程序的执行,并自动引出中断处理程序的过程。,.中断响应,(2)中断响应过程的图示,(1),(2),(3)中断响应的实质 交换指令地址及处理机的状态信息,达到:保留程序断点及处理机有关信息 自动转入相应的中断处理程序执行 思考:中断响应的功能,能否由由软件来完成?,6.中断进入及处理的全过程,*,k,k+1,当前执行程序,*L,L,PS,PC,*k+1,中 断 处 理 程 序,3级中断,k+1,1,L,k+1,中 断 触 发 器,四.软件完成的中断处理功能
20、 当硬件完成了中断进入过程后,由相应的中断处理程序得到CPU的控制权,进入了由软件实现的中断处理过程。,例:UNIX的时钟中断处理时钟中断处理,是UNIX中最具代表性的中断处理程序。其完成的功能如下:1、重新启动时钟 当时钟中断发生后,有些处理机要求由软件指令重新启动时钟(重新计时)。从而在适当的时间间隔后,能再次中断处理机。,2、系统内部定时(内部闹钟)有些系统操作,如设备驱动,要求延时调用核心的一些函数,则可用到系统内部定时。如用户敲回车键会产生一个键盘中断。但也可以使终端处于原始方式:核心在固定的时间间隔后,自动读键盘输入的内容,而不必等待用户敲回车键。(如从键盘输入大量的数据),3、统
21、计程序执行的频度 用程序统计直方图来描述:某个程序执行时,该程序的各个部分在内存中被访问的频度 4、计算进程的优先数 用于调整进程优先数的有关参数 计算某些进程的优先数(每秒钟),UNIX的中断处理过程 1、中断的总控程序 当出现中断后,系统转到中断的总控程序统一进行处理。完成的工作是:保护现场为中断处理程序,产生并传递参数通过中断向量,调用相应的中断处理程序,2、中断处理程序 进行中断服务,完成后返回到总控程序,3、总控程序:对中断前的处理机状态进行判别。(1)若中断(或陷入)前在核态下运行:恢复现场,返回断点,(2)若中断(或陷入)前在用户态下运行,且 重调度标志未设:恢复现场,返回断点
22、重调度标志已设:转进程调度程序,66,3.1 用户工作环境,一、用户环境 有了操作系统后,用户是通过操作系统来使用计算机。即:操作系统必须为每个用户提供一个使用计算机的工作环境(称为用户环境)。,问题:不同的用户环境,是如何产生的呢?,67,二、系统生成 系统生成现在也称为安装。通常是指:为了满足物理设备的约束和对系统功能的需求,通过组装一批模块,产生一个清晰的、使用方便的操作系统的过程。,根据自己的经验思考:通过安装可完成什么工作?哪些软件要安装?,68,三、系统初启 系统初启又称为系统引导。其任务是:将操作系统的必要部分,装入内存并执行 系统引导的过程:可分为三个阶段来实现,69,(1)初
23、始引导 也称为自举。即:操作系统把自己装入内存(DOS如何实现的?),(2)核心初始化 建立系统的数据结构,执行系统的常驻程序等,(3)系统初始化 执行命令处理程序,使系统处于命令接受状态,70,.操作系统的用户界面,一、操作系统的用户界面 1.什么是操作系统的用户界面 操作系统的用户界面(或称接口),是操作系统提供的,用户与计算机打交道的外部机制。即:可实现的功能,及使用的方式。用户借助这种机制,来控制计算机系统。,71,2.用户界面的形式(1)操作命令(命令接口)用户使用操作命令,来组织上机的工作流程、控制程序的运行,(2)系统功能调用(程序接口)用户程序在其运行过程中,使用系统功能调用,
24、来请求操作系统的服务,72,用户界面的实例 DOS:键盘命令(命令接口)、系统功能调用,Windows:图形用户界面(命令接口)、系统功能调用,unix(及linux):键盘命令、图形用户界面(命令接口)系统功能调用,73,二、操作命令 根据上机方式的不同,操作命令可分为二种类型(目前有三种方式):作业控制语言:用于脱机操作。如:批处理操作系统,键盘命令:用于交互式操作。如:分时操作系统、个人计算机操作系统 图形用户界面:是键盘命令的另一种表现形式,74,1.作业控制语言 在批处理或脱机操作的方式下 由于用户不能使用终端 故不能直接参与上机的过程。系统提供作业控制语言(JCL)让用户 预先制定
25、自己上机操作的完整过程。,75,(1)什么是作业控制语言 是一种命令语言。其内容包括:对作业进行处理的操作命令 对资源的请求命令 对上机过程进行组织、控制的语句,76,(2)批处理系统中作业的组成 作业申请,内容包括:作业名 需用CPU时间 最迟完成时间 资源请求(如:主存、外设)等 操作说明书 用作业控制语言编写的命令程序。内容包括:,77,操作命令 如:编译、连接、运行等 干预控制语句 如:判别、选择、循环等 执行程序与数据,(3)上机的环境 批处理系统 分时系统的后台操作,78,2.键盘命令 在交互式系统中,为联机用户(交互用户)提供的操作命令。由用户自己,通过键盘输入这些命令,组织上机
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 华中科技大学
链接地址:https://www.31ppt.com/p-6049817.html