计算机操作系统课程教案.pdf
《计算机操作系统课程教案.pdf》由会员分享,可在线阅读,更多相关《计算机操作系统课程教案.pdf(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统操作系统教案教案1第一部分:操作系统引论第一部分:操作系统引论(1)(1)一、操作系统基本常识一、操作系统基本常识1.计算机是由硬件和软件两部分组成的,而操作系统(Operating System)是配置在计算机硬件之上的第一层软件,是对计算机硬件的第一次扩充。操作系统是系统软件的基础,其他的系统软件,例如编译程序、汇编程序、数据库管理系统、诊断程序等,都是在操作系统的支持下工作的,都要依赖于操作系统,取得操作系统提供的各类服务。2.操作系统的目标是什么?1) 方便性:计算机硬件只能识别 0 或 1,即只能识别机器代码,因此没有配置操作系统的计算机是难以使用的;如果配置了操作系统,则可
2、以使用OS 提供的各种命令来使用计算机系统,从而方便了用户,也使计算机变得易学易用。2) 有效性:操作系统可以管理 CPU、I/O 设备等系统资源,从而避免各种资源使用无需而引起的资源浪费现象。 配置了 OS 的计算机可有效改善系统的资源利用率和提高系统吞吐量。3) 可扩充性:OS 采用模块化设计,可适应计算机硬件和体系结构的迅速发展,可方便增加新的功能模块和修改旧的功能模块。4) 开放性:为了适应不同的硬件系统和软件系统,实现硬件设备正确、有效地协同工作,以及实现应用程序地可移植性和互操作性,要求OS 具有开放性。说明:方便性和有效性是OS 最重要的两个目标。当前更重视OS 使用上的方便性。
3、3.操作系统的作用有哪些?1) 从一般用户的观点看,OS 是用户和计算机硬件系统之间的接口;用户可以通过命令方式或者系统调用方式来使用计算机。2) 从资源管理的观点看,OS 是计算机资源的管理者。计算机的资源分为四类:处理器、存储器、 I/O 设备和信息 (数据和程序) , 相应地, OS 系统的主要功能也是对这四类资源的管理,即:处理机管理、存储器管理、 I/O 设备的管理、文件管理。这也是本课程要介绍的主要内容。3) OS 可用作扩充机器。没有任何软件支持的计算机,称为裸机,覆盖了软件的机器称为虚拟机(Virtual machine) ;每多覆盖一层软件,则虚拟机的功能就越强。4.操作系统
4、可以用一种层次结构模型描述:底层是 OS 对象,中间层是对对象进行的操作和管理的软件的集合;最高层是OS 提供给用户的用户接口。二、操作系统发展历程二、操作系统发展历程1.无操作系统时代:21)人工操作方式:主要发生在第一代计算机到上世纪 50 年代中期,此时的程序员通过人工操作方式直接操作计算机硬件系统;用户独占全机和 CPU 等待人工操作是这种方式的主要缺点。人工操作方式严重影响了计算机资源的利用率,引起了所谓的“人机矛盾”。后来出现了“通道技术”和“缓冲技术” ,用于缓和此矛盾,但是效果不好,再后来引入了“脱机输入输出方式” ,获得了良好的效果。2) 脱机输入输出方式:该方式最突出的方式
5、是增加了外围机。外围机的作用在于脱机控制输入设备和输出设备。因为输入和输出都是在脱机状态下进行的, 因此可有效减少 CPU 的空闲时间,从而缓和了人机矛盾。该中方式的优点是:减少了CPU 的空闲时间;提高了 I/O的速度。2操作系统时代1)单道批处理系统(Simple Batch System) : 是为提高系统资源利用率和系统吞吐量而提出的,配有监督程序(Monitor)。 首先将一批作业以脱机输入输出方式 (Off-Line I/O) 输入道磁带上,然后在监督程序的监督之下顺序执行。 此种方式可保证系统对作业的处理是成批进行的, 且内存中总保持一道作业。其效果并不好,目前已经很少使用。其特
6、点是:自动性(无需人工干预) 、顺序性、单道性。可以认为SBS 是 OS 的前身。说明:系统吞吐量是指系统在单位时间内完成的总工作量。2) 多道批处理系统: 为进一步提高系统资源的利用率和系统吞吐量, 引入了多道程序设计技术,增加了作业调度程序。用户提交的作业都存放在外存上,排成一个队列(后备队列);然后,由专门的作业调度程序按照一定的算法(?)从后备队列中选择若干个作业调入内存,这些作业共享内存和处理机等资源,可并发运行。优点:提高 CPU 的利用率(有效避免 I/O 等待) ;提高内存和 I/O 设备的利用率;增加系统吞吐量。缺点:平均周转时间长;无交互能力。特征:多道性、无序性(作业完成
7、顺序同进入顺序无关) 、调度性(作业调度和进程调度) 。说明:作业调度是将作业从外存调入内存,但是不一定占有处理机;进程调度是从已在内存中的作业选择一个作业,将处理机分配给它,使其运行。平均周转时间:从作业进入系统开始,指导其完成并退出系统所经历的时间。3)分时系统(Time-Sharing System) :是一台主机 + 多个终端的系统。推动分时系统形成和发展的动力是用户的需要。用户使用计算机时,希望实现“人机交互”,以便能对错误进行修改,并且希望能独占主机;但是在 19 世纪 60 年底,计算机非常昂贵,又不可能每个用户独占一台主机,所以“共享主机”是一个不错的选择;同时,如果每个用户各
8、自占用一台终端设备,则可以方便地将自己的作业通过终端设备传输到计算机上处理。分时系统的定义:是指一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机的资源,每个用户都可以通过自己的终端以交互的方式使用计算机。分时系统需要解决的问题:a. 及时接收:指的是主机要及时接收用户输入的命令和数据3b. 及时处理:指用户通过终端键入命令后能及时控制自己的作业运行或修改自己的作业。在分时系统中,所有用户的作业都直接进入内存,且在较短短时间内(例如3秒之内)保证每个作业都运行一次(一个时间片) 。说明:时间片:指的是一段很短的时间,例如0.1 秒,用于进程调度时的时间段表示。分时系统的实现方
9、法:a. 单道分时系统:系统内存中只驻留一道程序(作业) ,其余作业都在外存上。当内存中的一个作业运行一个时间片后,便被调至致外存(称为调出) ,再从外存上选一个作业装入内存(称为调入)并运行一个时间片,如此往返。特点:每个用户的作业都可以轮流调入内存接受 CPU 的服务,但是由于每道作业都是频繁的调入调出多次,开销大,CPU 空闲较多,系统性能较差。b. 具有“前台”和“后台”的分时系统:为充分利用CPU,将内存分为前台区和后台区,前台区存放按时间片“调入”和“调出”的作业流,后台区存放批处理作业。只有前台在调入/调出过程中,或者前台已经无作业可运行时,方才可运行后台区的作业。该类型分时系统
10、能在一定程度提高了系统的性能。c. 多道分时系统:内存中可同时存放多道作业(程序) ,每道程序在内存中没有固定的位置。系统将具备运行条件的作业排成一个队列, 这些作业可以轮流获得时间片来运行。 该类系统的特点是: 切换作业是在内存中进行, 不要花费调入、 调出开销,具有较好的性能。现代的分时系统多属于多道分时系统。分时系统的特点:(1) 多路性:一台主机上连接多台终端,系统按照分时原则轮流为每个用户服务。多路性也称为同时性。(2)独立性:是从用户的角度考虑的,每个用户独占一个终端,各自独立操作,互补干扰,因此,用户感到是他一个人占用主机。(3)及时性:用户的请求能在很短短时间内获得响应。人所能
11、接受的等待时间是23秒,因此,分时系统中让用户等待的时间也限定在该范围内。(4)交互性:用户通过终端可以同主机进行广泛的对话,以实现人机交互。. 4) 实时系统(Real-Time System) :多道批处理系统和分时系统虽然已经获得了较好的资源利用率和响应时间,但是无法解决“实时控制”和“实时信息处理”两个领域的应用。计算机作为控制系统的中心设备,用于生产过程的控制,能保证实时采集现场数据,并对数据进行及时处理和自动控制,例如高炉温度控制、武器控制、自动驾驶系统等。 “实时”是“及时”或“即时”的意思,而“实时系统”是指能及时响应外部时间的请求,在规定的时间内完成对该时间的处理,并控制所有
12、实时任务协调一致地运行。实时任务:控制系统中要求在规定时间内完成的任务称为实时任务,它们都带有某种4程度的紧迫性。分类如下:(1)按照是否呈现周期性划分周期性实时任务:任务按照制定的周期循环执行;非周期性实时任务:任务的执行无明显得周期性, 但是都同一个截止时间相联系。截止时间(deadline)分为开始截止时间和完成截止时间。所谓开始截止时间,是指任务在某时间之前,必须开始执行;所谓完成截止时间,是指某任务必须在某时间之前完成。(2)按照对截止时间的要求严格程度划分硬实时任务:系统必须满足对截止时间的要求, 否则可能出现难以预料的后果;软实时任务:系统也有也一个截止时间,但是对截止时间的要求
13、不严格。若错过了截止时间,对系统产生的影响也不会很大。说明:实时系统和分时系统的比较(1)多路性:都具有多路性。分时系统的多路性指的是系统按照分时原则为多个用户服务, 实时系统的多路性是指系统经常对现场的多路信息进行采集及对多个对象进行控制。(2)独立性:都具有独立性。分时系统的独立性体现在每个终端用户向系统提出服务时是独立的操作,彼此不相干,实时系统的独立性体现在系统对多路信息采集和控制时,也是彼此独立的。(3)及时性:实时信息系统的实时性通分时系统类似,都是以人所能接受的时间来确定, 而实时控制系统是以控制对象所要求的开始截止时间和完成截止时间来确定的,时间要求比较严格。(4)交互性:实时
14、信息系统中的交互是为了访问系统内的特定资源,分时系统中是系统向终端用户提供各种数据处理服务、资源贡献服务等。(5)可靠性:分时系统要求系统较为可靠,但实时系统要求系统严格可靠。三、操作系统定义、特征、服务及功能三、操作系统定义、特征、服务及功能1操作系统的定义:是一组控制和管理计算机硬件和软件资源,合理对各类作业进行调度,以及方便用户的程序的集合。批处理系统、分时系统和实时系统是三种基本的操作系统类型。一个实际的操作系统,可能兼有三者或者其中两者的功能。2操作系统的四大基本特征1) 并发性(Concurrence)并发:两个或多个事件在同一个时间间隔内发生。并行:两个或多个时间在统一时刻发生。
15、程序是不能并发进行的,是静态实体;为使得程序能并发执行,系统必须为每个程序建5立进程。进程,也称任务,是系统中能独立运行且作为资源分配的基本单位,是一个活动实体。进程之间可以并发执行和交换信息。2) 共享性(Sharing) :系统中的资源可供内存中的多个并发执行的进程共同使用。有两种共享资源的方式:互斥共享方式和同时访问方式。互斥共享方式:有的资源可以供多个进程使用,但是在一个特定的时间段内只能由一个进程占用,这样的资源称为临界资源;其它希望使用该资源的进程必须等待当前进程释放该资源。同时访问方式:有的资源(如磁盘)可以允许多个进程同时访问。注意这里的“同时”是一个宏观的概念,在微观上往往是
16、这些进程交替对资源进行访问。3) 虚拟性(Virtual) :通过某种技术把一个物理实体变成若干个逻辑上的对应物。物理实体实实在存在的,而后者是虚拟的,是用户感觉到的东西。例如多道分时系统中中只有一个CPU,但是每个终端用户都认为有一个CPU 在专门为他服务, 此即为利用多道程序技术把一台物理上的 CPU 变成多台逻辑的CPU。4) 异步性(A synchronism):多道环境中,多个进程并发执行,但是由于资源有限,通常进程的执行并非“一气呵成” ,而是以“走走停停”的方式进行,即进程是以异步方式进行的。说明:并发和共享是操作系统的两个最基本的特征,且互为依存。3操作系统提供的服务:操作系统
17、提供了其他程序执行的环境,也为程序和用户提供了一些操作系统的服务。操作系统可以提供诸如程序执行、I/O 操作、文件系统操纵、通信以及差错检测等服务,还可以提供系统调用(System Call)服务。4操作系统的五大功能1) 存储器管理功能:为多道程序的运行提供良好的环境。这里的“存储器”指的是内存。主要有以下功能:内存分配(静态分配、动态分配) 、内存保护(每道程序在自己的内存范围内,不能越界) 、地址映射和内存扩充(借助虚拟存储技术)2) 处理机管理功能:实际是对进程的管理。在多道程序环境下,对处理机的管理是以进程为基本单位的,因此处理机的管理可以归结为对进程的管理。主要有以下功能:进程控制
18、、进程同步、进程通信和调度(作业调度和进程调度)等。3) 设备管理功能:主要任务是完成用户提出的各种 I/O 请求,为用户分配 I/O 设备,提高 CPU和 I/O 设备的利用率, 提高 I/O 速度, 以及方便用户使用 I/O 设备。 主要功能有: 缓冲管理 (CPU和 I/O 设备之间速度不匹配) 、设备分配(包括回收) 、设备处理(设备驱动) 、保证设备的独立性和虚拟性。4) 文件管理功能:主要是对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性。主要功能包括:文件存储空间的管理、目录管理、文件的读写管理以及文件的贡献与保护等。5) 用户接口功能:是操作系统为了方便用户使用
19、而向用户提供的“用户与操作系统的接口”,通常以命令和系统调用的形式呈现出来,有命令接口、程序接口(系统调用)和图形接口几种形式。65常见操作系统:有以下几类操作系统1) 微机操作系统:(1)单用户单任务操作系统:只允许一个用户使用计算机,且只允许用户程序作为一个任务运行,是一种最简单的操作系统。例如:CP/M 和 MS-DOS。(2)单用户多任务操作系统:只允许一个用户使用计算机,但允许将一个用户程序分为若干个任务,使它们并发执行,可有效改善系统的性能。例如OS/2 和 Windows系列。(3)多用户多任务操作系统:允许多个用户通过各自的终端,使用同一台主机,共享主机系统中的各类资源,而每个
20、用户程序又可进一步分为几个任务,使它们并发执行,从而进一步提高了资源利用率和增加系统吞吐量。例如UNIX OS 。2) 多处理机操作系统 MPS(MultiProcessor System) :多台处理机协调工作,可增加系统吞吐量、节省开支、提高系统的可靠性。3) 网络操作系统:主要有两种模式 C/S 模式和对等模式(peer-to-peer)4) 分布式操作系统:通集中式操作系统不同。处理和控制都集中在一台主机上,所有的任务都由主机来处理,这样的系统称为集中式操作系统。而分布式操作系统的处理和控制,都是分散在系统的各个处理单元上。第二部分:进程原理第二部分:进程原理(24)(24)程序是不能
21、独立运行的,而只有将程序调入进程,由系统为程序创建一个或多个进程,程序才可以运行。因此,进程才是资源分配和独立运行的基本单位。进程是操作系统中极为重要的概念,要深刻理解。一、程序执行一、程序执行1. 程序执行程序顺序执行的特征:1) 顺序性(保证前驱、后继关系) ;2) 封闭性(程序不间断执行,占有本机所有资源,资源状态只有本程序可改变,执行结果不受外界影响) ;3) 可再现性(只要条件相同,不管何时、何地执行,结果均相同) 。程序并发执行,其特征是为了提高系统运行效率,特征为:1) 间断性 (并发程序之间相互制约, 例如互为输入、 输出, 程序具有 “执行暂停执行再次执行”的活动规律) ;2
22、) 失去封闭性(系统资源由多个程序共享,其状态也受多个程序控制;某程序运行时,受到其他程序的影响) ;3) 不可再现性(失去了封闭性,也将导致失去可再现性)说明:当多个程序共享一个资源时,由于对资源的访问时刻不定,因此执行结果不定。例如:假设有一软件变量资源 N,设当前 N5,现有两个程序 A 和 B 共享该变量,程序 A 对 N7的操作为:N:= N +1 ; 程序 B 对 N 的操作为:先利用Print(N)打印 N,然后执行 N:0;由于 A 和 B 可以按照不同的速度执行,则语句N:= N +1 ; Print(N) ; N:=0 ; 有可能出现以下几种执行顺序:(1) N:=N+1;
23、Print(N) ;N=0 ;N 的取值分别是 6 , 6 , 0(2) Print(N) ;N:=N+1;N=0 ;N 的取值分别是 5 , 6 , 0(3) Print(N) ;N=0 ;N:=N+1;N 的取值分别是 5 , 0 , 1以上结果说明,程序 A 中变量 N 的值可能是 6,也可能是 1,结果是可变的;同样情况,程序 B中打印 N 时其值有可能是 6,也可能是 5,结果也是可变的。程序并发执行,虽然能显著提高系统效率,但是出现了“不可再现性”,这显然是不允许的。既要保证系统的效率,又要保证程序执行的“可再现性” ,必须采取适当的措施。这些措施的根本就是要保证并发执行的程序对临
24、界资源的独占性访问。2. 程序并发执行的条件Bernstein 条件设程序 Pi 可对多个变量进行操作(资源) ,操作分为“读操作”和“写操作”,亦即程序Pi 在执行过程中作为参考的所有变量的集合称为 “读集” , 在执行过程中需要修改的所有变量的集合称为 “写集” ,如下定义:R(Pi) =a1, a2 , ,am ; R(Pi)是 Pi 的读集W(Pi) =b1 , b2 ,bn ;W(Pi)是 Pi 的写集若两个程序 Pi 和 Pi 能满足如下条件,它们便能够并发执行,并具有可再现性:R(Pi)W(Pj)W(Pi) R(Pj)W(Pi) W(Pj)= 以上条件是由 Bernstein 提
25、出的,因此称为 Bernstein 条件。理解:只有保证程序 Pi 的读集和 Pj 的写集不相交、Pi 的写集和 Pj 的读集不相交、Pi 的写集和Pj 的写集不相交,才能保证Pi 和 Pj 并发执行,且保证程序的正确执行(可再现性) 。说明:两个程序可以同时对某变量执行“读操作” ,但只要有一个“写操作” ,则另一个程序就不能再执行“读操作” ,也不能再执行“写操作”了,即“写操作”是独占临界资源的。二、进程基本概念二、进程基本概念1进程:是可执行程序在一个数据集合上的运行过程,是系统资源分配和独立运行的基本单位。其基本特征为:1) 动态性:进程是进程实体的执行过程,它“由创建而产生,由调度
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 操作系统 课程 教案
限制150内