操作系统教案_第1页
操作系统教案_第2页
操作系统教案_第3页
操作系统教案_第4页
操作系统教案_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精品文档计算机操作系统教案备课教师: 晁妍 职称:助教教学班级计科专业09级本科2班时 间:2011年9月已教轮数:1计算机与信息学院2011-2012学年度第一学期课程教学目的及教学要求:本课程是计算机科学与技术专业的主要专业基础课和主干课。本课程的学习 目的在于使学生掌握操作系统的基本概念、基本原理、设计方法和实现技术, 具有初步分析实际操作系统的能力,为其今后在相关领域开展工作打下坚实的基 础。教学时数与学时分配:共51学时,周学时:17,(分单双周,每次2个学时)章次标题教学手段学时数第一章操作系统引论4弟早进程管理12第三章处理机调度与死锁4第四章存储管理10弟五早设备管理6第八章文

2、件系统8第七章操作系统接口4第八章网络操作系统1第九章系统安全性1第十章UNIX系统内核结构1教计算机操作系统(第三版)汤小丹等推荐参考书:1计算机操作系统(第二版)汤子瀛等西安电子科技大学出版社2计算机操作系统教程张尧学史美林清华大学出版社3UNIX 教程(第 2 版)(美)Syed Mansoor Sarwar Robert Koretsky 张玉洁 孟祥武译机械工业出版社4计算机操作系统.学习指导与题解梁红兵、汤小丹西安电子科技大学出版社5操作系统实验指导一基于linux内核徐虹编清华大学出版社第1、2讲(周次:第2周)(注:线右侧写教学方法、实验演示、新增补内容、重要标注、时间分配等)

3、教学章节:11 一高系统的目标和作用(简略)1.2 操作系统的发展过程(每种OS的不足与各自特点)教学目的及要求:目的:是使学生建立起 OS的基本概念。要求:了解OS的引入和发展;理解多道程序设计技术;重点、难点:(注:重点和难点如果一致,则写在一起,若不同则应分开写):OS引入和发展、OS的基本特征和功能。教学内容:板书设计见PPT。(注:内容每节课1-2页为宜)复习引入:首先说明对课程的成绩如何评定,提出学习要求,以及教材的使用并推荐参考教 材。然后介绍本课程的特点、性质和目的,以及如何学习,最后对本课程内容以及课 时分配做简单的介绍。新课讲授:操作系统在计算机系统中的地位:(结合课件中图

4、加以说明,由此引出目标和作用)计算机系统由硬件和软件组成;操作系统在硬件基础上的第一层软件;是其他软件和 硬件之间的接口。操作系统在计算机系统中占据着特别重要的地位,是计算机中最重要的系统软件,是 其他系统软件和应用软件运行的基础。1.1 操作系统的目标和作用1.1.1 操作系统的目标方便性(用户的观点):提供良好的、一致的用户接口。无需了解许多有关硬件和系统软件的细节。有效性(系统管理人员的观点):合理地组织计算机的工作流程,管理和分配硬件、软 件资源,提高资源的利用率;提高系统的吞吐量。可扩充性(开放的观点):操作系统必须能方便地开发、测试和引进新的系统功能,以适应计算机硬件和体系结构的迅

5、速发展以及应用不断扩大的要求。给计算机系统的功能的扩展提供开放式的支撑平台。开放性:可移植性和互操作性其中有效性和方便性是设计 OS时最重要的两个目标,设计现代OS的主要目标也是对提高资源利用率和方便用户。1.1.2 操作系统的作用1 .从一般用户的观点来看,OS作为用户与计算机硬件系统之间的接口(桥梁)用户并不直接与计算机硬件打交道,而是通过操作系统提供的命令、系统功能调 用以及图形化接口来使用计算机。2 .从资源管理的观点来看,OS作为计算机系统资源的管理者(管家)处理机的分配和控制,内存的分配和回收,I/O设备的分配和处理,文件的存取、共享和保护工作都是由操作系统完成的。主要功能有: 处

6、理机管理、存储管理、设备管理、 文件管理3 .从虚拟机的观点来看,OS用作扩充机器(实现了对计算机资源的抽象)(虚拟机或扩充机)硬件处在最底层,不附加任何软件的物理计算机裸机”.操作系统是附加在裸机上的第一层,是对裸机的首次扩充,构成了一个比裸机更强, 使用更方便的虚拟计算机所有系统软件以及更上层的用户应用软件在操作系统虚拟机上运行,它们受操作系统的统一管理和控制,通过操作系统使用各种资源来完成特定的任务。引出OS的定义(以提问的方式)操作系统的定义:是一组控制和管理计算机硬件和软件资源、合理地对各类作业进行 调度,以及方便用户使用计算机的程序的集合。1.1.3推动操作系统发展主要动力(稍后补

7、充)1.2 操作系统的发展过程(介绍 OS的引入与发展,以及推动发展的主要动力)1.2.1无操作系统的计算机系统1 .人工操作方式1946-50年代中:电子管时代(第一代计算机),计算机速度慢,无操作系统,计算机 资源昂贵;工作方式:用户:既是程序员又是操作员;用户是计算机专业人员; 编程语言:机器语言;输入输出:纸带或卡片;计算机的工作特点:用户独占全机,资源利用率极低;CPU等待用户,计算前,手工装入纸带或卡片;计算完成后,手工卸取纸带或卡片; CPU利用率低;主要矛盾:人机矛盾-人工操作严重降低了计算机资源的利用率 提高效率的途径:脱机输入 /输出技术。2 .脱机车入/输出(Of-Lin

8、e I/O)方式:脱机输入方式是指在一台 外围机(它是一台专门用来管理 I/O的、功能较简单的计 算机)的控制下,预先将程序和数据从低速输入设备到磁带,当 CPU需要这些程序 和数据时,再从磁带高速地读入内存。类似地,脱机输出方式是指当CPU需要输出时,先高速地将数据写入磁带,然后在一台外围机的控制下,通过低速输出设备进行 输出。相反,在主机的直接控制下进行的I/O方式被称为联机I/O方式。脱机I/O方式的主要优点:减少了 CPU的空闲时间、提高I/O速度(缓和了人机矛盾)1.2.2 单道批处理系统(Simple Batch Processing System)1 .单道批处理系统处理过程晶体

9、管时代(第二代计算机)批处理技术是在系统中配置一个监督程序,并在该监督程序的控制下,能够对一批作 业自动进行处理的一种技术。把一批作业以脱机方式输入到磁带或磁盘上,并在系统中配上监督程序(Monitor),在它的控制下使这批作业能一个接一个的连续处理。2 .单道批处理系统的特征: 自动性:无需人工干预。顺序性:作业完成的顺序与它们进入内存的顺序以及作业在磁带上的顺序一致。单道性:内存中仅能存放一道作业。不足:无法充分利用系统中的所有的资源1 .2.3多道批处理系统2 .多道程序设计技术是指在内存中同时存放若干个作业,使它们共享系统资源并同时运行的技术。在单处 理机环境下,这些作业仅在宏观上同时

10、运行,而在微观上交替执行。3 .多道批处理系统采用多道程序设计技术的批处理系统被称作多道批处理系统。多道批处理系统中必须配置一组软件(调度程序),来解决多道程序对系统资源的共享和争用问题,并对 作业进行合理的组织和调度。外存(后备队列)一一 >作业调度一一 > 内存 (共享CPU和系统中的各种资源)就形成了现代意义上的 OS4 .具有的主要特征:(与单道批处理的特征对比)多道性:内存中可同时存放多个作业调度性:(作业调度、进程调度)需通过作业调度从外存中选取若干个作业装入内存,还需通过进程调度在内存的多个作业中分配CPU。无序性:作业调度的次序与作业在外存中次序无关,作业完成的次序

11、与作业进入内存 的次序也无关。5 .多道批处理系统需解决的问题(1)多道程序对 OS的基本要求存储管理-系统必须为若干作业分派空间CPU调度-系统必须在就绪作业中选择准备运行.设备分配一既方便用户使用,又能提高设备利用率.(2)多道批处理系统需解决的问题:处理机管理问题、内存管理问题、设备管理问题、文件管理问题、作业管理问题6 .优缺点:优点:资源利用率高 CPU和内存利用率较高;系统吞吐量大一一(单位时间内所完成的总工作量)缺点:平均周转时间长一一(从作业进入系统开始,直至其完成并退出系统为止所经历的时间),短作业的周转时间显著增长无交互能力一一整个作业完成后或中间出错时,才与用户交互,不利

12、于调试和修改;1.2.4分时系统1 .分时系统的产生引入:为了解决批处理系统无法进行人机交互的问题,并使多个用户(包括远程用户)能同时使用昂贵的主机资源,又引入了分时系统。分时系统:是指在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用 户通过自己的终端,以交互方式使用计算机,共享主机中的资源。2 .分时系统的设计思想(1)采用了分时技术:既把处理机的时间划分成很短的时间片(eg,几百毫秒),轮流地分配给各个终端作业使用。(若在分配给它的时间片内,作业仍没执行完,它也必须将CPU交给下一个作业使用,并等下一轮得到CPU时再继续执行)(2)设计目标:系统能及时响应用户的终端命令(3)实

13、现中的最关键问题:使用户能与自己的作业进行交互。 (及时接收、及时处理) 响应时间 RT(response time):从键盘命令进入(按下回车键为准)到开始在终端上显示 应答的时间间隔-在分时系统中,响应时间时间片x用户数.改变批处理系统的运行方式:作业直接进入内存系统采用时间片轮转方式处理服务请求4.分时系统的特征多路性:多个用户同时使用一台计算机,共享CPU和其他资源,充分利用系统资源。宏观上:是多个人同时使用一个CPU微观上:多个人在不同时刻轮流使用CPU独立性:用户感觉不到计算机为其他人服务,各用户独立操作,互不干扰。及时性:通过时间片技术和轮转调度算法保证及时响应。(指用户能在很短

14、的时间内获得系统的响应,是以人们所能接受的等待时间决定的,一般为 23秒)交互性:能进行广泛的人机交分时系统的关键问题是使用户能与自己的作业进行交互,或者说它追求的主要目标是系统能及时响应用户的终端命令。1.2.5实时系统(实时:及时响应并快速处理!)引入:由于前几种操作系统都不能很好的满足在实时控制和实时信息处理领域的需要1 .实时系统及其类型(1)实时系统是指系统能及时(或即时)响应外部事件的请求, 在规定的时间内完成对 该事件的处理,并控制所有实时任务协调一致地运行。(2)可分成两大类:实时控制系统:通常使指以计算机为中心的生产过程控制系统和武器控制系统。这类系统要求实时采集现场数据,并

15、对数据进行及时处理,进而自动地控制相应的执行机构。如工业自动控制、火炮自动控制、飞机自动驾驶、导弹制导等。实时信息处理系统:通常使指对信息进行实时处理的系统。这类系统要求及时接受从 终端(包括远程终端)发来的服务请求,按请求的内容对信息进行检索和处理,并在 很短的时间内为用户做出正确的回答。如飞机订票、情报检索等。2 .实时任务的类型(1)按任务执行时是否呈现周期性来划分周期性实时任务非周期性实时任务一一截止时间开始截止时间:某任务在某时间以前必须开始执行完成截止时间:某任务在某时间以前必须完成(2)根据对截止时间的要求来划分(与截止时间联系的是否严格)硬实时任务软实时任务3 .三种基本操作系

16、统的比较:多路性独立性及时性交互性 1可靠性批处理系统无无差差f J分时系统多终端服务有好好可靠实时系统多路采集、多路控制有最好一般高度可靠补充:推动批处理系统的形成与发展的主要动力:提高系统资源利用率;推动分时系统形成与发展的动力室方便是用户;推动OS发展的主要动力:计算机硬件的不断更新换代1.2.6微机OS的发展1 .单用户单任务 OS:只允许用户程序作为一个任务运行eg. CP/M、MS-DOS2 .单用户多任务OS:允许用户把程序分为若干个任务,使它们并发执行eg.MS-W indows3 .多用户多任务OS :允许多个用户通过各自的终端使用一台机器。eg. UNIX、LINUX教课小

17、结:1、了解操作系统的目标,理解操作系统的作用,了解推动操作系统发展的主要动力 2、了解无操作系统的计算机系统和单道批处理系统。理解多道批处理系统、分时系 统和实时系统的特征和优缺点。预习要求:作业布置:1、作业:2、补充习题:(若没有可以删去)推荐参考书目、网站及阅读材料:(若没有可以删去)实验一:LINUX入门第3讲(第3周)(注:线右侧写教学方法、实验演示、新增补内容、重要标注、时间分配等)教学章节:1.3 操作系统的特征1.4 操作系统的主要功能1.5 操作系统的结构设计教学目的及要求:1 .掌握操作系统的功能和特征。2 . 了解分层式结构和微内核结构。重点、难点:(注:重点和难点如果

18、一致,则写在一起,若不同则应分开写)OS的基本特征和功能。教学内容:板书设计见PPT。(注:内容每节课1-2页为宜) 复习引入:上节课学习了 OS的引论,介绍了 OS的发展过程,其中主要功能小节也是对本书的 简要的概括,需要同学们掌握。OS是系统软件,对于这种大型的软件,在开发的过程中,其软件的结构设计是怎么样的发展过程,下面就来学习:新课讲授:3 .3操作系统的特征采用多道程序设计技术的现代操作系统具有如下四个基本特征:并发、共享、虚拟、 异步。其中并发和共享是 OS的两个最基本的特征。1 .并发并行性:两个或多个事件在同一时刻发生并发性:两个或多个事件在同一时间间隔内发生在多道程序系统(单

19、处理器)中,宏观上并行,微观上串行(交替执行) 程序(静态实体)不能并发执行,为使多个程序并发执行,引入进程。进程一一在系统中能独立运行并作为资源分配的基本单位,(是活动实体)。现代OS中还引入一个比进程更小的单位一一线程,此时,一个进程中可包含若干个线程,资 源分配的基本单位虽仍然是进程,但独立运行、独立调度和分配处理机的基本单位却 是线程。2 日章在操作系统环境下,所谓共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用共享方式:互斥共享方式:资源分配后到释放前,不能被其他进程所用,如打印机、变量、队列 等。临界资源(独占资源):一段时间内只允许一个进程访问的资源同时访问方式:

20、在同一段时间内可以被多个作业同时访问。如可重入代码,磁盘文件。宏观并行微观串行。并发和共享是OS的两个最基本的特征,又互为存在的条件 。3 .虚拟(是以并发和资源共享为前提)虚拟一一通过某种技术把一个物理实体变为若干个逻辑上的对应物。虚拟是操作系统管理系统资源的重要手段,可提高资源利用率。用于实现虚拟的技术,称为虚拟技术时分复用技术:虚拟处理机、虚拟设备技术(分时使用方式)空分复用技术:虚拟内存、虚拟磁盘技术4 .异步性(是并发与共享的必然结果)指进程的执行顺序和执行时间的不确定性;指进程以人们不可预知的速度向前推进。进程的运行速度不可预知:多个进程并发执行,时走时停”,不可预知每个进程的运行

21、推进快慢;无论快慢,结果应该相同。通过进程互斥和同步手段来保证;1.4操作系统的主要功能包括:处理机管理功能、存储器管理功能、设备管理功能、文件管理功能、用户接口1.4.1 处理机管理功能主要是对处理机的分配和运行进行管理。(创建和撤销进程(线程),对诸进程(线程)的运行进行协调,实现进程 (线程)之间的信息交换,以及按照一定的算法把处理机分配 给进程(线程)。)主要功能包括:进程控制:为作业创建进程、撤销已结束的进程,以及控制进程在运行过程中的状态转换进程同步:为多个进程(含线程)的运行进行协调(协调方式:互斥和同步)进程通信:用来实现在相互合作的进程之间的信息交换;调度:作业和进程的状态切

22、换,包括作业调度和进程调度1.4.2 存储器管理功能存储器管理为多道程序的运行提供良好的环境,方便用户使用存储器,提高存储器的利用率以及能从逻辑上扩充内存存储器管理功能有:内存分配:为每道程序分配内存空间,提高存储器的利用率,允许正在运行的程序申请附加的内存空间;存储保护:确保每道用户程序都只在自己的内存空间中运行,彼此互不干扰;地址映射(变换):进程的逻辑地址到内存物理地址的映射。内存扩充:用虚拟存储技术解决内存容量不足的问题;请求调入功能页面置换功能1.4.3 设备管理功能设备管理的主要任务:完成用户进程提出的I/O请求,为用户进程分配其所需的 I/O设 备,提高CPU和I/O设备的利用率

23、,提高I/O速度,方便用户使用I/O设备。设备管理的功能有:缓冲管理:匹配 CPU和外设的速度,提高两者的利用率和并行操作程度;设备分配:根据用户进程的I/O请求、系统的现有资源情况以及按照某种设备分配策略,为之分配其所需的设备 ;设备处理:设备驱动程序用于实现CPU和设备控制器之间的通信。设备独立性和虚拟设备:1.4.4 文件管理功能文件系统管理的主要任务:对用户文件和系统文件进行管理,以方便用户使用,并保 证文件的安全性。文件管理的功能有:文件存储空间的管理:为每个文件分配必要的外存空间,提高外存的利用率,并能有助于提高文件系统的运行速度 ;一一解决如何存放信息的问题目录管理:为每个文件建

24、立其目录项,并对众多的目录项加以有效组织,实现方便的按名存取,能实现文件共享,提供快速的目录查询手段。(通过目录方式来组织文件,以实现文件的按名存取)一一解决信息检索问题文件的读/写管理和保护:实现文件的读写操作, 并提供有效的存取控制功能,保护文件的安全性。一一 解决信息安全问题。1.4.5 OS与用户之间的接口1 .用户接口 (提供给用户使用)(1)命令接口:用户可通过该接口向作业发出命令以控制作业的运行。联机用户接口:由一组键盘操作命令和命令解释程序组成脱机用户接口:由一组作业控制语言 JCL组成(2)图形接口:2 .程序接口 (提供给程序员在编程时使用)为用户程序在执行中访问系统资源而

25、设置,由一组系统调用组成。1.5操作系统的结构设计操作系统的结构:整体式(无)结构、模块化结构、层次式结构、微内核结构1、整体式OS吉构整体式系统是早期操作系统和一些较小的操作系统所采用的一种结构模型。整个系统是一堆过程的集合,每个过程都可以随便调用任意其它过程。采用这种结构的操作系 统不仅调试和维护不方便,而且其可读性和可扩充性都较差。2、模块化OS吉构(关键问题:模块的划分和规定好模块之间的接口)模块化程序设计技术, 是基于“分解”和“模块化”原则来控制大型软件的复杂度的。将OS按其功能划分为若干个具有一定独立性和大小的模块。并规定好各模块间的接口,各模块之间能通过该接口实现交互。衡量模块

26、独立性的两个标准:内聚性和耦合度。模块化。面构优缺点优点:提高设计的正确性、可理解性和可维护性增强可适应性;加速开发过程缺点:模块的划分和接口的规定较困难模块间还存在着复杂的依赖关系,是os结构变得不够清晰。(在模块化结构设计中,各模块的设计齐头并进,无法寻找到一个可靠的决定顺序,造成各种决定的“无序性”)3、层次式结构为了将模块化中的“决定顺序”无序性变为有序性,引入了有序分层法,常采用自底 向上法来铺设这些中间层。层次式结构是对模块化结构的一种改进。将一个操作系统分为若干个层次,每层又由若干个模块组成,各层之间只存在着单向的依赖关系,即高层仅依赖于紧邻它的底层。层次结构的优点:正确性有保证

27、、便于系统维护、扩充层次结构的缺点:模块间需要通信机制、系统开销大、效率低在OS结构中,分层式结构是最为成熟的一种OS结构,而20世纪90年代兴起的微内核结构是最具有发展前途的OS结构。补充:分层式结构与模块式结构的主要区别在于:分层结构中各模块之间有序的。分层式结构将各个功能模块按它们的功能流图的调用次序安排成若干层, 各层之间的模块不能像模块式结构那样通过接口毫无规则地相互依赖、相互调用,而只能是单向调用,即每层中的模块只能使用较低层模块提供的功 能和服务。因此在分层结构中,模块间的组织结构和依赖关系更加清晰,这不仅增加 系统的可读性,同时还使每一层建立在可靠的基础上,从而提高系统的可靠性

28、。4、微内核OS结构微内核结构是指将 C/S技术、面向对象技术用于基于微内核技术的OS中所形成的结构。微内核的主要思想是:在操作系统内核中只留下一些最基本的功能,而将其他服务尽 可能地从内核中分离出去。内核的基本组成:中断处理、进程调度、同步机制用若干个运行在用户态下的进程(即服务器进程)来实现,形成所谓的“客户/服务器”模式。普通用户进程(即客户进程)可通过内核向服务器进程发送请求,以取得 操作系统的服务。C/S技术把OS分为两个部分:一部分是用于提供各种服务的服务器另一部分是用于实现 os最基本功能的内核,其全部工作是处理C与S之间通信。优点:易于扩充,易于移植、提高系统的可靠性、提供多种

29、操作环境、适宜于分布计算模式、有助于多处理器系统的实现、支持实时任务缺点:消息传递方式增加开销,使响应变慢几个商品化系统:Windows NT,NextStep XINU,OSF/1 1.3,Workspace OS,Chorus/MixV.4 , ac G3, QNX,CTOS举例:微内核的开放式系统环境、一个分布式系统中的客户服务器模型在现代OS的设计中,常常还融入面向对象的程序设计技术。面向对象技术,该技术是基于“抽象”和“隐蔽”原则来控制OS的复杂度。它利用被封装的数据结构和一组对数据结构进行操作的过程来表示系统中的某个资源,这样,可使资源的管理因一致而简化。当前广泛使用的Window

30、s2000操作系统,就采用了微内核的结构,同时还融入了面向对象的程序设计技术。具有面向对象的特点 :封装性、继承性、多态性微内核的基本功能:通常都是一些最基本的功能,如进程管理、存储器管理、进程间 通信、低级I/O功能。教课小结:预习要求:作业布置:第4讲(第4周)(注:线右侧写教学方法、实验演示、新增补内容、重要标注、时间分配等)教学章节:第2章进程管理2.1 进程的基本概念2.1.1 程序的顺序执行及其特征2.1.2 前趋图2.1.3 程序的并发执行及其特征2.1.4 进程的特征与状态2.1.5 进程控制块教学目的及要求:学习目的是使学生建立起进程的概念。进程是OS中最重要的基本概念,本章

31、是全书中最重要的一章。要求掌握进程的基本概念,重点、难点:(注:重点和难点如果一致,则写在一起,若不同则应分开写)进程的引入、特征、基本状态、进程控制块教学内容:板书设计见PPT。(注:内容每节课1-2页为宜)复习引入:通过第一章的学习,对操作系统有了整体上的认识,以后的章节就是对各个部分的功能加以详细的论述。新课讲授:第2章 进程管理思考问题:为什么要引入进程进程具有哪些基本特征进程具有哪些基本状态进程控制块的作用和内容2.1 进程的基本概念引入进程的目的是为了使多个程序能并发执行。2.1.1 程序的顺序执行及其特征1 .程序的顺序执行程序的顺序执行是指若干个程序或程序段之间必须严格按照某种

32、先后次序来执行,仅当前一程序或程序段执行完后,才能执行后面的程序或程序段。例:每个程序有三个顺序执行的操作一一I :输入操作、C:计算操作、P:输出操作2 .程序顺序执行时的特征顺序性处理机的操作严格按照程序所规定的顺序执行。(2)封闭性程序一旦开始执行,其计算结果不受外界因素的影响。即程序运行时独占全机资 源,资源的状态(除初始)只有本程序才能改变它。可再现性程序执行的结果与它的执行速度无关(即与时间无关),而只与初始条件有关。2.1.2 前趋图为了描述一个程序的各部分(程序段、语句)间的依赖关系,或是一个大的计算 的各子任务间的因果关系,采用前驱图方式。前趋图是一个有向无循环图(DAG),

33、用于描述程序段或进程之间执行的先后次序关系。结 点:描述一个程序段或进程,或一条语句。有 向边:结点之间的偏序或前趋关系“ T”t = ( P i,Pj)|在P开始前P必须完成,若(Pi,P) Ct ,可写成Pt PjPiT P : Pi必须在Pj开始之前完成则P i是R的直接前趋,Pj是P的直接后继初始结点:没有前趋的结点终止结点:没有后继的结点例:具有九个结点的前驱图:前趋关系:P1P2, P1.P3, P1.P4, P2. P5, P3-. P5, P4-. P6, P4. P7, P5. P8, P6-. P8,P7P9, P8.P9注意:前趋图中绝对不能出现循环2.1.3 程序的并发

34、执行及其特征1 .程序的并发执行例: 在系统中有n个作业,每个作业都有三个处理步骤,输入数据、处理、输出,即 Ii,Ci,Pi (i=1,2,3,n)。这些作业在系统中执行时是对时间的偏序,有些操作必须在其它操作之前执行,这是有序的,但有些操作是可以同时执行的。2 .程序并发执行时的特征 间断性在多道程序设计的环境下,程序是并发执行的,它们为完成一项任务而相互合作,这些程序之间要共享系统的资源,形成了相互制约的关系。相互制约导致并发程序具有“执行一一暂停一一执行”这种间断性的活动规 律。3 2) 失去封闭性程序在并发执行时,多道程序共享系统的资源,因而这些资源的状态由多道程序来改变,程序运行失

35、去封闭性。一程序的运行受到其他程序的影响。4 3) 不可再现性程序在并发执行时,失去封闭性导致其失去可再现性。重复执行时,虽执行环境和初始条件相同,但结果却不同。(加入实例)2.1.4进程的特征与状态在计算机中,程序的并发执行具有不可再现性。那么,如何使程序既能并发执行,又 具有可再现性呢?这就必须引入进程的概念,也就是说,引入进程的目的是为了使程 序能够正确地并发执行。(为什么进程实体却能与其他进程并发执行?)1进程的特征与定义(1)进程的特征结构性、动态性、并发性、独立性、异步性结构性进程控制块(PCB)+程序段+相关的数据段=进程实体。动态性一一进程是程序在处理机上的一次执行过程。具有生

36、命期,它必须由创建而产生,由调度而执行,由撤销而消亡。是进程的一个最基本的特征。并发性一一多个进程实体同存于内存中,在一段时间内同时运行。以提高资源利用 率。只有为程序创建进程后,多个程序才能正确地并发运行。并发是引入进程的目的,也是进程的另一个最基本的特征。独立性一一进程实体是一个能独立运行、独立分配资源和独立接受调度的基本单 位,而程序则不是。异步性一一进程按各自独立的、不可预知的速度向前推进。(2)进程(Process )的定义进程是程序的一次执行。进程是一个程序及其数据在处理机上顺序执行时所发生的活动。进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。进程

37、的定义:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。(3)进程与程序的区别进程是动态的,程序是静态的进程是暂时的,程序是永久的进程与程序的组成不同:进程包括程序、数据和进程控制块(即进程状态信息)进程与程序的对应关系:不是一一对应。通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。2 .进程的三种基本状态就绪状态(Ready):进程已获得了除 CPU之外的所有资源,处于就绪态的进程有多 个,它们存放在就绪队列中。执行状态(Running):已获得CPU的进程进入执行状态。阻塞状态(Blocked):进程因发生某个事件(如请求 I/O、申请缓冲空间

38、)而暂停执 行的状态。即进程的执行受到阻塞进程的三种基本状态以及各状态之间的转换关系对单个进程而言,任何时刻,它只能处于三种基 本状态之一,而随着进程自身的推进和外界环境条件的 变化,它的状态可以动态地转换:处于就绪状态地进程,通过进程调度获得CPU后,便从就绪状态转换成执行状 态;分时系统中,正在执行地进程由于时间片用完而暂 停执行时,便从执行状态转换成就绪状态;正在执行地 程序,由于等待某种事件地完成而无法继续执行时,便从执行状态转换成阻塞状态;阻塞地进程所等待的事件完成后,便转为就绪状态。对整个系统而言,每个时刻允许同时有多个处于就绪和阻塞的进程,但对执行状态的进程,每个处理机最多只允许

39、有一个。3 .挂起状态“挂起”的实质是使进程不能继续执行,即使挂起后的进程处于就绪状态,它也不能 参与对CPU的竞争。因此,被挂起的进程处于静止状态,相反,没被挂起的进程则处 于活动状态。而且,处于静止状态的进程只有通过“激活”动作,才能转换成活动状 态。引起挂起状态的原因:终端用户的请求、父进程请求、负荷调节的需要、操作系统的需要“挂起”常被用在进程对换中,此时,挂起(即换出)进程可以腾出内存空间给就绪 进程使用;“挂起”还可用在其他场合,如用来调节系统的负荷、方便用户考查自己 的运行进程或父进程考查子进程、方便操作系统检查运行中的资源使用情况或进行记帐等。4 2) 进程状态的转换活动就绪一

40、静止就绪(挂起、激活)活动阻塞一静止阻塞(挂起、激活)执行T静止就绪(挂起)4.创建和终止状态(1)创建状态创建PCB填写必要的管理信息转入就绪状态并插入就绪队列中一般而言,此时的进程已拥有了自己的PCR但进程自身还未进入主存,即创建工作尚未完成,进程还不能被调度运行,其所处的状态就是创建状态。(2)终止状态等待OS进行善后处理 将其PC时零,并将PCB空间返还系统。进入终止态的进程以后不能再执行,但在OS中依然保留一个记录供其他进程收集,一旦其他进程完成了对终止状态进程的信息的提取后,osa删除该进程。思考问题:问题:PCB的作用,为什么说是进程存在的唯一标志?1 .1.5 进程控制块为了描

41、述和控制进程的运行,系统为每个进程定义了一个数据结构一一进程控制 块(PCB。进程控制块的作用存放进程的管理和控制信息的数据结构称为进程控制块。它是进程管理和控制的最重要的数据结构。PCB是进程实体的一个组成部分,在其中记录了 OS所需的、用于描述进程的当前状态以及控制进程的全部信息。其作用是将程序变成可并发执行的进程。系统根据进程的 PCB感知到一进程的存在,并对它进行控制,因此,进程控制 块是进程存在的唯一标志。由于PCB要被系统频繁访问,它必须常驻内存。在创建时,建立 PCB并伴随进程运行的全过程,直到进程撤消而撤消。PCB就象我们的户口。系统的所有 PCBfi织成链表或队列, 常驻内存

42、的PCB区。2 .进程控制块中的信息1)进程标识符信息每个进程都必须有一个唯一的标识符。另外,还可以用父进程的标识符、子进程的标识符来描述进程的家族关系。内部标识符:便于系统使用外部标识符:便于用户使用2)处理机状态信息处理机状态信息主要由处理机的各种寄存器中的内容组成。处理机运行时的信息存放在寄存器中,当被中断时这些信息要存放在PCB中。通用寄存器、指令计数器、程序状态字PSW用户栈指针3)进程调度和控制信息一一用于进程调度和控制。主要包括进程状态、优先级、等待和使用CPU的时间总和、程序和数据的地址、进程同步和通信信息、资源清单和进程队列指针等。3 .进程控制块的组织方式在一个系统中通常有

43、许多PCB称为PCB集合。为了便于管理,系统必须用适当的方式将PCB组织起来,常用的方式有链接和索引方式。1)链接方式把具有同一状态的 PCB用其中的链接字链接成一个队列。就绪队列;若干个阻塞队列;空白队列2)索引方式系统根据所有进程的状态建立几张索引表,把各表的内存首地址记录在内存的专用单元中。索引表的表目中记录了相应状态的某个PCB在PCB表中的地址。其他方式:线性表或链表教课小结:预习要求: 作业布置:第5讲(第4周)(注:线右侧写教学方法、实验演示、新增补内容、重要标注、时间分配等)教学章节:2.2 进程控制2.2.1 进程的创建2.2.2 进程的终止2.2.3 进程的阻塞与唤醒2.2

44、.4 进程的挂起与激活2.3 进程同步2.3.1 进程同步的基本概念2.3.2 信号量机制教学目的及要求:1 . 了解进程控制的过程2 .掌握进程间的相互关系,以及进程同步的有效机制信号量机制。重点、难点:信号量的物理意义教学内容:板书设计见PPT。复习引入:上次课提及到进程的几种状态以及之间如何转换,本次课将详细介绍引起进程各种状态的原因,以及相应原语的创建过程。新课讲授:2.2 进程控制进程控制是进程管理中最基本的功能,它用于创建和撤销进程,并对进程在整个生命周期中各种状态之间的转换进行有效控制。进程控制是OS的内核通过原语来实现的。原语的作用是为了实现进程通信和控制,是由若干条指令组成的

45、,用于完成一定 功能的一个过程;原语的执行具有原子性,即原语在执行过程中不可分割,在执行过 程中不允许被中断。许多系统调用就是原语。处理机运行时的两种状态:核心态和用户态,(1)系统状态:也叫管态或核心态,它具有较高的特权,能执行一切指令,访问所 有寄存器和存储区。通常,OS内核就运行在系统态下。(2)用户态:也叫目态,是一种具有较低特权的执行状态。它只能执行规定的指令、 访问规定的寄存器和存储区。通常用户程序都运行在用户态。用户态时不可直接访问受保护的OS代码;核心态时执行OS代码,可以访问全部进程空间通过这两个状态的划分,可防止用户程序破坏OS内核代码和数据。2.2.1 进程的创建1 .

46、进程图描述进程的家族关系的有向树(结点:代表进程,根结点为该家族的祖先;有向边:父子关系;树:表示一个家族)进程P创建了进程 R,则P是Pj的父进程,Pj是P的子进程,用一条由进程 R指向进程P的有向边来描述。创建父进程的进程为祖先进程,由此形成进程树,树根为进程家族的祖先。 提问:进程图与前趋图比较(1)前趋图:描述的是任务之间的前趋关系,只有在前趋进程完成后,其后继进程 才能运行(2)进程图:创建者和被创建者可以并发执行,也可以父进程等待其所有子进程结 束后再执行,这完全取决于创建原语和创建者的需要。2 .引起创建进程的事件在多道程序环境中,只有进程才能在系统中运行。导致创建进程的典型事件

47、有: (分时系统的)用户登录、(批处理系统中的)作业调度、提供服务这三种情况是由系统内核为其创建一个新进程。应用请求一一应用程序本身也可以根据需要去创建新的进程(自己创建一个新进程) 3. 进程的创建操作系统发现要求创建新进程的事件后,调用进程创建原语Creat()创建新进程。 创建过程: (1)申请空白PCBB申请进程标识符,并从PCBI!合中索取一个空白 PCB(2)为新进程分配资源:为新进程的程序和数据以及用户栈分配必要的内存空间。 (3)初始化进程控制块:初始化标识信息、处理机状态信息、进程调度和控制信息。 (4)将新进程插入就绪队列 2.2.2 进程的终止当进程完成任务或遇到异常情况

48、和外界干预需要结束时,应通过进程终止原语来终止进程。终止进程的实质是收回PCB1.引起进程终止的事件 1) 正常结束一一用于表示进程已经运行完成的指示 2) 异常结束一一运行间,某些错误和故障而迫使进程终止 越界错误、保护错、非法指令、特权指令错、运行超时等 3) 外界干预一一并非异常事件,而应外界的请求而终止运行 操作员或操作系统干预、父进程请求、父进程中止 2. 进程的终止过程 (1)找到要终止进程的 PCB-根据被终止进程的标识符,从PCB集合中检索出该进程的PCB,从中读出该进程的状态。 (2)若被终止进程正处于执行状态,应立即终止该进程的执行,置调度标志为真,用 于指示该进程被终止后

49、应重新进行调度。(3)终止属于该进程的所有子孙进程一一若该进程有子孙进程,应将其所有子孙进程予以终止,以防他们成为不可控的进程。(4)释放终止进程所拥有的全部资源一一将被终止进程所拥有的全部资源,或归还其父进程,或归还系统。(5)将终止进程移出它所在的队列并收回PCB-将被终止进程的 PCB从所在队列或链表中移出,等待其他程序搜索信息 2.2.3 进程的阻塞与唤醒1 .引起进程阻塞和唤醒的事件 1)新数据尚未到达 2)无新工作可做 3)请求系统服务4)启动某种操作当正在执行的进程需要等待某种事件的完成或本身无新工作可做时,应调用阻塞原语将自己从执行状态转换为阻塞状态2 .进程阻塞过程一一是进程

50、本身的一种主动行为调用阻塞原语阻塞自己,中止该进程的执行,将PCB中的状态改为阻塞,并加入到阻塞队列中;然后转进程调度,将处理机分配给另一进程,并进行进程切换以及处 理机状态的保护与重新设置。3 . 进程唤醒过程阻塞进程等待的事件发生,有关进程调用唤醒原语把等待该事件的进程唤醒。唤醒原语的执行:把阻塞进程从等待该事件的阻塞队列中移出,将其PCB中的现行状态改为就绪,将 PCB插入到就绪队列中。阻塞原语与唤醒原语作用相反,成对使用。注意:阻塞是进程自己阻塞自己的,而进程唤醒不是自己唤醒自己,它需要另一进程 来实现。4 .2.4 进程的挂起与激活1 .进程的挂起当出现引起进程挂起的事件时,系统利用

51、挂起原语将指定进程或处于阻塞的进程挂起。挂起原语的执行:检查被挂起进程的状态,若处于活动就绪,则改为静止就绪,若处于活动阻塞,则改为静止阻塞,将该进程PCBM制到内存指定区域,若挂起的进程正在执行,则重新进行进程调度。如果挂起是为了对换,则在挂起进程时还必须将它换出到外存中。2 .进程的激活过程当发生激活进程的事件时,系统利用激活原语将指定进程激活。激活原语先将进程从外存调入内存,检查该进程的状态,若处于静止就绪,则改 为活动就绪,若处于静止阻塞,则改为活动阻塞。若进程转换成活动就绪状态,而系 统又采用抢占调度策略,则应检查该进程是否有权抢占 CPU若有则应进行进程调度。同样,若挂起是为了对换

52、,则在激活被挂起的进程时还必须将它调入内存。2.3进程同步思考问题:1)引入进程同步的目的2) 临界资源和临界区引入进程同步:OS引入进程提高了资源利用率和系统吞吐量,但由于进程的异步性导致了系统混乱,尤其争用临界资源时,(引用实例:当多个进程去争用一台打印机时,有可能使多个进程的输出结果交织在一起难于区分)。为此,OS必须引入某种机制,即进程的同步机制(进程同步)。进程同步是指对多个相关进程在执行次序上进行协调,它的目的是使系统中诸进程之间能有效地共享资源和相互合作,从而使程序的执行具有可再现性。用来实现同 步的机制被称作同步机制。2.3.1进程同步的基本概念在多道程序的环境下:所有进程都是

53、相互独立的、进程以异步方式并发执行,致使进程在活动中会相互制约1 .两种制约关系直接: 相互制约关系源于进程合作,表现为:进程一进程(同步)间接: 相互制约关系源于资源共享 ,表现为:进程-资源一进程(互斥)(1)同步同步是进程间共同完成一项任务时直接发生相互作用的关系同步举例:输入进程和计算进程通过单缓冲区来协调工作同步进程间具有合作关系在执行时间上必须按一定的顺序协调进行(2)互斥互斥是并发执行的多个进程由于竞争同一资源而产生的相互排斥的关系互斥进程彼此在逻辑上是完全无关的它们的运行不具有时间次序的特征2 .临界资源一次仅允许一个进程使用的共享资源,如果多个进程同时使用这些资源,则有可 能

54、造成系统的混乱,如:打印机,多个进程同时使用一台打印机,将使其输出结果交 织在一起,难于区分;又如共享变量,多个进程同时使用一个共享变量,会使结果具 有不可再现性。3 .临界区(如何保证诸进程互斥地访问临界资源)每个进程中访问临界资源的那段代码叫临界区。对欲访问的临界资源进行检查,进入区若此刻未被访问,设正在访问的标志访问临界资源临界区将正在访问的标志恢复为未被访问的标志退出区其余部分剩余区为了使多个进程能有效地共享临界资源,并使程序的执行具有可再现性,系统必须保 证它们互斥地使用临界资源,即保证它们互斥地进入自己地临界区。如果一进程已进 入临界区使用临界资源,另一企图进入临界区使用同一临界资源的进程便必须等待, 直到前一进程退出临界区为止。不难看出,互斥的实质就是同步,互斥是同步的一种 特殊形式。4 .同步机制应遵循的规则为实现进程互斥地进入自己地临界区,采用同步机制来协调各进程间地运行。空闲让进 一临界资源空闲时, 应允许一个请求进入临界区的进程立即进入自己的临 界区,以便有效地利用资源。忙则等待一一当临界资源正被访问时,其他要求进入临界区地进程必须等待,以保证 对临界资源地互斥使用。有限等待一一任何要求访问临界资源的进程应能在有限的时间内进入自己的临界区

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论