《操作系统原理-操作系统概述.ppt》由会员分享,可在线阅读,更多相关《操作系统原理-操作系统概述.ppt(68页珍藏版)》请在三一办公上搜索。
1、第一章 绪论,1.1 什么是操作系统1.2 操作系统的发展历史1.3 操作系统的分类1.4 操作系统的特征1.5 操作系统的功能1.6 研究操作系统的几种观点,1.1.1 操作系统的地位和目标,计算机系统的组成,操作系统在计算机系统中的地位,操作系统的地位:紧贴系统硬件之上,所有其他软件之下(是其他软件的共同环境),操作系统的目标,有效性(系统管理人员的观点):管理和分配硬件、软件资源,合理地组织计算机的工作流程方便性(用户的观点):提供良好的、一致的用户接口,弥补硬件系统的类型和数量差别可扩充性(开放的观点):硬件的类型和规模、操作系统本身的功能和管理策略、多个系统之间的资源共享和互操作,返
2、回,1.1.2 操作系统的定义,它们能以尽量有效、合理的方式组织和管理计算机的软硬件资源,合理的组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能,使得用户能够灵活、方便、有效的使用计算机,使整个计算机系统能高效地运行。是计算机与用户之间的接口。,操作系统是计算机系统中的一个系统软件,是一些程序模块的集合,返回,1.1.3 操作系统举例,MS OS:MS DOS,MS Windows 3.x,Windows 9x,Windows NT,Windows 2000/XPUNIX:BSD,SRV4,OSF1,SCO UNIX,AIX,Solaris,LinuxNOS:Novell Netw
3、areRTOS:VxWorks,pSoS,Nucleus,返回,1.2 操作系统的发展历史,1.2.1 推动操作系统发展的主要动力1.2.2 手工操作1.2.3 单道批处理系统(simple batch processing)1.2.4 多道批处理系统(multiprogramming system)1.2.5 分时系统(time-sharing system)1.2.6 实时系统(real-time system),返回,从无到有,从弱到强,与硬件技术和软件技术的发展而发展,OS与计算机的组成及体系结构密切有关,1.2.1 推动操作系统发展的主要动力,提高资源的利用率和系统性能:计算机发展的
4、初期,计算机系统昂贵,用作集中计算方便用户:用户上机、调试程序,分散计算时的事务处理和非专业用户(商业和办公、家庭)器件的发展:CPU的位宽度(指令和数据)、快速外存,“需求推动发展”,返回,1.2.2 手工操作阶段无操作系统,工作方式用户:用户既是程序员,又是操作员;用户是计算机专业人员;编程语言:为机器语言;输入输出:纸带或卡片;计算机的工作特点用户独占全机:不出现资源被其他用户占用,资源利用率低;CPU等待用户:计算前,手工装入纸带或卡片;计算完成后,手工卸取纸带或卡片;CPU利用率低;,1946 50年代,电子管时代,集中计算(计算中心),计算机资源昂贵;,手工操作阶段,主要矛盾计算机
5、处理能力的提高与手工操作的低效率(造成浪费);用户独占全机的所有资源;任何一个作业步出现故障强将导致该作业需从头开始执行。提高效率的途径专门的操作员批处理:操作员将用户提交的作业分类,每一批作业由监督程序(monitor)自动依次处理。,返回,1.2.3 单道批处理系统,批处理中的作业的组成:用户程序、数据、作业说明书批:供一次加载的磁带或磁盘,通常由若干个作业组装成,在处理中使用一组相同的系统软件(系统带),目的:解决CPU的利用率问题措施:1.设立专门的计算机操作员,用户不直接参与,操作员 将作业分批 2.开发监督程序(Monitor),自动依次处理每批作业,两种批处理方式:联机批处理和脱
6、机批处理,两种批处理方式(1)-联机批处理,特点:慢速的I/O设备是与主机直接相连。作业的执行过程:a.用户提交作业:程序,数据,作业说明书b.然后穿孔成卡片:c.操作员有选择的把若干作业合成一批,输入到磁带中d.监督程度读入一个作业(若系统资源能满足要求),e.从磁带调入汇编程序和编译程序,源程序目标代码,连接装配成可执行程序f.启动执行g.执行完毕,输出计算结果h.再输入一个作业,重复e-h.i.一批作业完成,返回到c,处理下一批作业。,联机批处理,特点:解决了作业的自动转接,从而减少了作业建立和人工操作时间。CPU与I/O串行执行:在作业的输入和执行结果的输出过程中,主机CPU仍处于停止
7、等待状态,两种批处理方式(2)-脱机批处理,卫星机:专门用于与I/O设备打交道,完成面向用户的输入输出(纸带或卡片),中间结果暂存在磁带或磁盘上。作业控制命令由监督程序(monitor)来执行,完成如装入程序、编译、运行等操作,完成作业的自动转接。优点:同一批内各作业的自动依次更替,改善了主机CPU和I/O设备的使用效率,提高了吞吐量。缺点:磁带或磁盘需要人工装卸,作业需要人工分类,监督程序易遭到用户程序的破坏(由人工干预才可恢复)。,特征:利用卫星机完成输入输出功能。主机与卫星机可并行工作。主机是与速度相对较快的磁带机打交道。,卫星机,主机,卫星机,通道:用于控制I/O设备与内存间的数据传输
8、。启动后可独立于CPU运行,实现CPU与I/O的并行。通道有专用的I/O处理器,可与CPU并行工作可实现 I/O联机处理中断是指CPU在收到外部中断信号后,停止原来工作,转去处理该中断事件,完毕后回到原来断点继续工作。中断处理过程:中断请求,中断响应,中断点(暂停当前任务并保存现场),中断处理例程,中断返回(恢复中断点的现场并继续原有任务可处理算术溢出和非法操作码,死循环(利用时钟中断进行超时限定)监督程序发展为执行系统(executive system),常驻内存执行系统=监督系统+I/O控制+中断处理,执行系统的特征,不仅要负责作业运行的自动调度,而且还要提供输入输出(I/O)控制功能。I
9、/O是由在主机控制下的通道完成的,主机和通道,主机和I/O设备都可以并行操作(通道取代了卫星机)。用户程序的I/O工作都是由系统执行而没有 人工干预(不需要人工装卸磁带等),由系统检查其命令的合法性。,单道批处理的主要问题,只有一道作业在运行。CPU和I/O设备使用忙闲不均(取决于当前作业的特性)。对计算为主的作业,外设空闲;对I/O为主的作业,CPU空闲;,返回,1.2.4 多道批处理系统(多道程序系统)(multiprogramming system),用户程序监督程序磁盘设备磁带设备用户程序A用户程序B监督程序磁盘设备磁带设备,60年代中 70年代中(集成电路),利用多道批处理提高资源的
10、利用率。.,时间t,CPU,外设,CPU,外设,请求带输入,启动带,磁带输入,结束中断,中断处理,请求磁盘输入,启动盘,结束中断,中断处理,请求盘输入,启动盘,调度B,请求带输入,启动带,结束中断,中断处理调度A,结束中断,中断处理调度B,多道批处理的运行特征,多道:内存中同时存放几个作业;宏观上并行运行:都处于运行状态,但都未运行完;微观上串行运行:各作业交替使用CPU;,在当前运行的作业需作I/O处理时,CPU转而执行另一个作业。,多道批处理系统的特点,优点:资源利用率高:CPU和内存利用率较高;作业吞吐量大:单位时间内完成的工作总量大;缺点:用户交互性差:整个作业完成后或中间出错时,才与
11、用户交互,不利于调试和修改;作业平均周转时间长:短作业的周转时间显著增长;,多道程序系统要解决的技术问题,资源的竞争问题:共享资源,同步、互斥处理机调度问题:内存管理问题:内存的使用效率内存保护:多道程序互不影响,操作系统渐趋成熟,出现了作业管理、CPU管理、内存管理、设备管理、文件管理,返回,1.2.5 分时系统(time-sharing system),分时是指将处理机的运行时间分成很短的时间片,按时间片轮流将处理机分配给各联机作业使用,多个用户分享使用同一台计算机。多个程序分时共享硬件和软件资源。多个用户分时:单个用户使用计算机的效率低,因而允许多个应用程序同时在内存中,分别服务于不同的
12、用户。有用户输入时由CPU执行,处理完一次用户输入后程序暂停,等待下一次用户输入时走时停前台和后台程序(foreground&background)分时:后台程序不占用终端输入输出,不与用户交互现在的图形用户界面(GUI),除当前交互的程序(输入焦点)之外,其他程序均作为后台通常按时间片(time slice)分配:各个程序在CPU上执行的轮换时间。,分时系统的特点,人机交互性好:在调试和运行程序时由用户自己操作。共享主机:多个用户同时使用。用户独立性:由于计算机速度很快,作业轮转的很快对每个用户而言好象独占主机。,现在的许多操作系统都具有分时处理的功能,在分时系统的基础上,操作系统的发展开始
13、分化,如实时系统、通用系统、个人系统等。,返回,1.2.6 实时系统(real-time system),要求:响应时间短,在一定范围之内必须作出响应;系统可靠性高,用于工业过程控制、军事实时控制、金融等领域,包括实时控制、实时信息处理,返回,1.3 操作系统的分类,1.根据OS同时支持的用户数量分:单用户:一个用户独占全机资源 多用户:多个用户共享整个系统的资源2.根据使用环境和对作业的处理方式分:批处理操作系统 分时操作系统 实时操作系统 多处理操作系统 网络操作系统 分布式操作系统 个人计算机操作系统,返回,操作系统的分类主要内容,1.3.1 批处理操作系统1.3.2 分时操作系统1.3
14、.3 实时操作系统1.3.4 多处理操作系统1.3.5 网络操作系统1.3.6 分布式操作系统1.3.7 个人计算机操作系统,1.3.1 批处理操作系统(Batch Processing Operation System),作业的处理流程作业提交:作业的输入;作业执行;作业完成:作业的输出;,批处理系统的主要特征,用户脱机使用计算机:作业提交后直到获得结果之前,用户无法与作业交互。作业成批处理,吞吐量大多道程序并行:充分利用系统资源。,多道程序系统和多处理系统(multiprocessor system)的区别:前者指多个程序同时在内存中交替运行,要想有效的使用多处理系统,必须采用多道程序设计
15、技术 后者指多个处理器。,1.3.2 分时操作系统,分时的定义:,把计算机的系统资源(尤其是CPU时间)进行时间上的分割,每个时间段称为一个时间片(time slice),每个用户依次轮流使用时间片,使一台计算机为多个终端用户服务。如果任务在一个时间片内未完成,须等待下一个时间片的到来。,分时系统的追求目标,及时响应:(依据指标:响应时间)响应时间:从终端发出命令到系统给予回答所经历的时间,t8,t7,t6,t5,t4,t3,t2,t1,t10,t9,用户2,用户1,分时系统的特征,多路性:多个用户同时工作。共享系统资源,提高了资源利用率。节省维护开支,可靠性高:促进了计算机的普遍应用,提高了
16、资源利用率:远地用户通过终端(较便宜)联机使用。独立性:各用户独立操作,互不干扰。交互性:系统能及时对用户的操作进行响应,显著提高调试和修改程序的效率:加快调试过程,缩短了周转时间。分时系统的实例UNIXLinux,1.3.3 实时操作系统(Real Time Operating System),实时操作系统主要用于过程控制、事务处理等有实时要求的领域,其主要特征是实时性和可靠性。,分类:第一类:实时过程控制 工业控制,军事控制,.第二类:实时通信(信息)处理 电讯(自动交换),银行,飞机订票 股市行情,设计实时操作系统要考虑的问题,实时时钟管理:提供系统日期和时间、定时和延时等时钟管理功能;
17、过载保护:缓冲区排队,丢弃某些任务,动态调整任务周期;过载是指进入系统的任务数目超出系统的处理能力,因为进入系统的实时任务的时间和数目有很大的随意性。高度可靠性和安全性:容错能力(如故障自动复位)和冗余备份(双机,关键部件);,实时系统与批处理系统和分时系统的区别,专用系统:许多实时系统是专用系统,而批处理与分时系统通常是通用系统。实时控制:实时系统用于控制实时过程,要求对外部事件的迅速响应,具有较强的中断处理机构。高可靠性:实时系统用于控制重要过程,要求高度可靠,具有较高冗余。如双机系统。事件驱动和队列驱动:实时系统的工作方式:接受外部消息,分析消息,调用相应处理程序进行处理。可与通用系统结
18、合成通用实时系统:实时处理前台作业,批处理为后台作业。,1.3.4 多处理操作系统(Multi-processor Operating System),多处理机系统的特点增加系统的吞吐量:N个处理器加速比达不到N倍(额外的调度开销,算法的并行化)提高系统可靠性:故障时系统降级运行,多处理操作系统的出现是为了提高计算机系统性能和可靠性。提高性能有两条途径:提高各个组成部分的速度、增大处理的并行程度。1975年前后,出现多处理机系统(multi-processor)。,多处理机系统的类型,紧密耦合(tightly-coupled):各处理机之间通过快速总线或开关阵列相连,共享内存,整体系统由一个统
19、一的OS管理(一个OS核心)。松散耦合(loosely-coupled):各处理机带有各自的存储器、I/O设备和操作系统,通过通道或通信线路相连。每个处理机上独立运行OS。,多处理机系统的类型(1),紧密耦合(tightly-coupled):各处理机之间通过快速总线或开关阵列相连,共享内存,整体系统由一个统一的OS管理(一个OS核心)。,紧密耦合和松散耦合,多处理机系统的类型(2),松散耦合(loosely-coupled):各处理机带有各自的存储器、I/O设备和操作系统,通过通道或通信线路相连。每个处理机上独立运行OS。,多处理操作系统的类型(续),非对称式多处理(Asymmetric M
20、ultiprocessing,ASMP):又称主从模式(Master-slave mode)。主处理器:只有一个,运行OS。管理整个系统的资源,为从处理器分配任务;从处理器:可有多个,执行应用程序或I/O处理。特点:不同性质任务的负载不均,可靠性不够高,不易移植(通常要求硬件也是非对称)。对称式多处理(Symmetric Multiprocessing,SMP):OS交替在各个处理器上执行。任务负载较为平均,性能调节容易傻瓜式,要运行OS本身、I/O处理(如中断响应)、应用程序,1.3.5 网络操作系统(NOS,Network Operating System),网络操作系统是在通常操作系统功
21、能的基础上提供网络通信和网络服务功能的操作系统。网络操作系统为网上计算机进行方便而有效的网络资源共享,提供网络用户所需各种服务的软件和相关规程的集合。网络功能与操作系统的结合程度是网络操作系统的重要性能指标。早期的作法是通常操作系统附加网络软件,过渡到网络功能成为操作系统的有机组成部分。它们的区别在于:网络功能的强弱、使用是否方便等。,网络操作系统的功能,通常操作系统的功能:处理机管理、存储器管理、设备管理、文件管理等;网络通信功能:通过网络协议进行高效、可靠的数据传输;网络资源管理:协调各用户使用;网络服务:文件和设备共享,信息发布;网络管理:安全管理、故障管理、性能管理等;例:UNIX,W
22、indows NT,Linux等,1.3.6 分布式操作系统,分布式系统:处理和控制的分散(相对于集中式系统)其定义为“运行在不具共享内存的多台计算机上,但在用户眼里却像一台计算机”分布式系统是以计算机网络为基础的,它的基本特征是处理上的分布,即功能和任务的分布。运行基础是一群联网的计算机,其行为像是一台虚拟的单处理机,用户不必关心计算机的资源在什么地方、什么时间工作以及资源如何调配工作。所有CPU上运行同样的内核,统一的管理和控制机制。分布式操作系统的所有系统任务可在系统中任何处理机上运行,自动实现全系统范围内的任务分配并自动调度各处理机的工作负载。,分布式操作系统与网络操作系统的比较,耦合
23、程度:分布式系统是紧密耦合系统:分布式OS是在各机上统一建立的OS同质,直接管理CPU、存储器和外设;统一进行全系统的管理;网络通常容许异种OS互连,各机上各种服务程序需按不同网络协议协议同质。并行性:分布式OS可以将一个进程分散在各机上并行执行进程迁移;网络则各机上的进程独立。透明性:用户是否知道或指定资源在哪个机器上(如CPU、内存或外设)。分布式系统的网络资源调度对用户透明,用户不了解所占有资源的位置;网络操作系统中对网络资源的使用要由用户明确指定;健壮性:分布式系统要求更强的容错能力(工作时系统重构),1.3.7 个人计算机操作系统(Personal Computer Operatin
24、g System),个人计算机操作系统的特征应用领域:事务处理、个人娱乐,系统要求:使用方便、支持多种硬件和外部设备(多媒体设备、网络、远程通信)、效率不必很高。常用的个人计算机操作系统单用户单任务:MS DOS单用户多任务:OS/2,MS Windows 3.x,Windows 95,Windows NT,Windows 2000 Professional多用户多任务:UNIX(SCO UNIX,Solaris x86,Linux,FreeBSD),针对单用户使用的个人计算机进行优化的操作系统。,1.4 操作系统的特征,返回,操作系统的定义:。,并发(concurrency)共享(shari
25、ng)虚拟(virtual)异步性(asynchronism),并发(concurrency),在多道程序处理时,宏观上并发,微观上交替执行(在单处理器情况下)。程序的静态实体是可执行文件,而动态实体是进程(或称作任务),并发指的是进程间的并发。,并发指:多个事件在同一时间段内发生。操作系统是一个并发系统,各进程间的并发,系统与应用间的并发。操作系统要完成这些并发过程的管理。并行(parallel)是指在同一时刻发生。,共享(sharing),互斥共享(如音频设备):资源分配后到释放前,不能被其他进程所用。同时访问(如可重入代码,磁盘文件)资源分配难以达到最优化,多个进程共享有限的计算机系统资
26、源。操作系统要对系统资源进行合理分配和使用。资源在一个时间段内交替被多个进程所用。,虚拟(virtual),CPU每个用户(进程)的虚处理机存储器每个进程都占有的地址空间(指令数据堆栈)显示设备多窗口或虚拟终端(virtual terminal),一个物理实体映射为若干个对应的逻辑实体分时或分空间。虚拟是操作系统管理系统资源的重要手段,可提高资源利用率。,异步性(asynchronism),进程的运行速度不可预知:分时系统中,多个进程并发执行,时走时停,不可预知每个进程的运行推进快慢判据:无论快慢,应该结果相同通过进程互斥和同步手段来保证难以重现系统在某个时刻的状态(包括重现运行中的错误)性能
27、保证:实时系统与分时系统相似,但通过资源预留以保证性能,也称不确定性,指进程的执行顺序和执行时间的不确定性;,返回,1.5 操作系统的功能,1.5.1 处理机管理1.5.2 存储管理1.5.3 设备管理1.5.4 信息管理(文件管理)1.5.5 用户接口管理(作业管理),返回,1.5.1 处理机管理,完成处理机资源的分配、调度等功能。处理机调度的单位可为进程或线程。进程控制:创建、撤销、挂起、改变运行优先级等主动改变进程的状态进程同步:协调并发进程之间的推进步骤,以协调资源共享;交换信息能力弱进程通信:进程之间传送数据,以协调进程间的协作;交换信息能力强,也可以用来协调进程之间的推进进程调度:
28、作业和进程间的运行切换,以充分利用处理机资源和提高系统性能;未必是进程控制操作所引起(可能是时间片轮转、I/O操作)同一类型内的公平性、高效率(吞吐量大)、作业周转时间等,1.5.2 存储管理,存储分配与回收存储保护:保证进程间互不干扰、相互保密;如:访问合法性检查、甚至要防止从垃圾中窃取其他进程的信息;地址映射(变换):进程逻辑地址到内存物理地址的映射;内存扩充(覆盖、交换和虚拟存储):提高内存利用率、扩大进程的内存空间;,管理目标:提高利用率、方便用户使用、提供足够的存储空间、方便进程并发运行。,1.5.3 设备管理,设备操作:利用设备驱动程序(通常在内核中)完成对设备的操作。还需处理外设
29、的IRQ。设备独立性(device independence):提供统一的I/O设备接口,使应用程序独立于物理设备,提高可适应性;在同样的接口和操作下完成不同的内容(如FAX Modem作为Windows上的打印机设备)。设备分配与回收:在多用户间共享I/O设备资源。虚拟设备(virtual device):设备由多个进程共享,每个进程如同独占。缓冲区管理:匹配CPU和外设的速度,提高两者的利用率(单缓冲区、双缓冲区和公用缓冲区),设备管理的目标是:方便的设备使用、提高CPU与I/O设备利用率;,1.5.4 信息管理(文件管理),文件存储空间管理:解决如何存放信息,以提高空间利用率和读写性能。
30、目录管理:解决信息检索问题。文件的属性(如文件名)、单一副本赋予多文件名文件的读写管理和存取控制:解决信息安全问题。系统设口令哪个用户、用户分类哪个用户组、文件权限针对用户或用户组的读写权软件管理:软件的版本、相互依赖关系、安装和拆除等,解决软件资源的存储、共享、保密和保护。,用户接口(作业管理),系统命令:供用户用于组织和控制自己的作业运行。命令行、菜单式或GUI联机;命令脚本脱机编程接口:供用户程序和系统程序调用操作系统功能。如:系统调用和高级语言库函数;,目标:提供一个友好的用户访问操作系统的接口。操作系统向上提供两种接口:,返回,1.6 研究操作系统的几种观点,作为软件来看的观点,资源
31、管理的观点,进程的观点,虚机器观点,服务提供者观点,返回,1.作为软件来看的观点,软件的特性:外在特性:软件是种语言,是界面界面:使用方式(命令,系统调用等)内在特性:软件的结构a.由几部分组成 b.每个部分的功能 c.部分之间的关系,2.资源管理的观点,操作系统-资源管理者硬件资源:CPU,内存,外部设备(I/O设备,外存,时钟,网络接口等)软件资源:硬盘上的文件,信息,管理资源,记录资源使用状况 如 哪些资源空闲,好坏与否,被谁使用,使用多长时间等合理的分配资源静态分配策略(在程序运行前分配,但效率不高)动态分配策略(在程序运行过程中何时用资源,何时分配。其缺点是会出现死锁)具体完成分配回
32、收资源,资源管理的目的,实现资源共享提高资源利用率,操作系统功能,CPU(进程)管理,存储管理,文件管理,设备管理,作业管理,3.进程的观点,是从操作系统运行的角度动态地观察操作系统从这个观点来看:操作系统是由一些可同时独立运行的进程,和一个对这些进程进行协调的核心组成.,进程:完成某一特定功能的程序是程序的一次执行过程是动态有生命的,当它执行时存在,否则消亡,4.虚机器观点,从操作系统内部结构来看:把操作系统分成若干层每一层完成其特定功能从而构成一个虚机器,并对上一层提供支持通过逐层功能扩充,最终完成整个操作系统虚机器而操作系统虚机器向用户提供各种功能,完成用户请求,5.服务提供者的观点,在操作系统之外从用户角度来看:操作系统为用户提供一组功能强大的、方便易用的命令或系统调用,返回,小结,OS地位、目的、作用和组成OS发展:主要动力、发展过程OS分类:批处理、分时、实时、(通用)、多处理、网络和分布式、PC,各自的特点OS的结构:模块层次Client-Server/微内核OS的特征和服务OS功能研究操作系统的几种观点,返回,作业,本章课本1,2,3,4题简述操作系统的定义和目标从资源管理的角度,简述操作系统的几大功能?分时系统如何使各终端用户感到好像自己独占一台计算机?简述各类操作系统的特点?分时系统和实时系统有何不同?,更多资料请访问:,