《操作系统概述》PPT课件.ppt
新年快乐,学业有成,祝大家:,操作系统,理论课:60节实验课:12节张楚才()E-,418周=72节,教材与参考书目,王志刚主编,计算机操作系统,武汉大学出版社(第一版),2005年 邹鹏等编著,操作系统原理,国防科技大学出版社(第二版),2000年汤子瀛等编,计算机操作系统,西安电子科技大学出版社(第一版),1996年孙钟秀等编,操作系统教程,高等教育出版社(第二版),1995年屠祁、屠立德等编著,操作系统基础,清华大学出版社(第三版),2000年,学习建议,课前预习,课后复习,事半功倍。多看教材,辅以资料,重在理解。善抓重点,狠攻难点,自学成才。,操作系统,第一章 绪论,本章教学目标,了解操作系统的形成过程,建立起操作系统的整体概念;熟悉操作系统的基本类型和服务方式;掌握操作系统的定义、特征和功能。,本章教学内容,1.1 操作系统概述1.2 操作系统的发展过程1.3 操作系统的功能1.4 操作系统的结构1.5 操作系统的特征1.6 操作系统的分类1.7 操作系统的启动和工作过程1.8 Windows2000的模型,1.1 操作系统概述,定义:操作系统是控制和管理计算机系统的硬件和软件资源,合理地组织计算机工作流程以及方便用户的程序集合。目标(两个):1.使计算机能更加高效的工作(资源高效管理);2.使我们使用计算机更加方便(方便用户)。,操作系统在计算机系统中的地位,从资源管理的观点看:存储管理、CPU调度、设备管理、文件管理。从服务用户的观点看:1.程序执行2.输入/输出操作3.信息保存4.错误检测和处理,1.2 操作系统的发展过程,1.2.1 人工操作阶段1.2.2 单道批处理阶段1.2.3 执行系统阶段1.2.4 多道程序系统阶段,1.2.1 人工操作阶段,20世纪50年代以前,无操作系统,每个程序员都必须亲自动手操作计算机:装入卡片或纸带,按电钮,查看存储单元等。缺点:资源独占、串行工作、人工干预。,1.2.2 单道批处理阶段,1.早期批量处理:出现了监督程序,解决了人工操作阶段所存在的人工干预问题和人工操作与计算机之间的串行工作问题,提高了系统处理能力。作业的输入/输出和CPU的计算仍然是串行的。,2.脱机批处理:增加了卫星机,专门负责输入/输出工作。解决了CPU与I/O设备之间的串行工作问题,提高了系统的处理能力。用户程序可以破坏监督程序,保护问题必须解决。,1.2.3 执行系统阶段,通道的引入和中断的出现执行系统程序:I/O控制程序、中断处理程序和管理程序。执行程序(常驻内存的程序)控制其它程序,保证了系统的安全。较好地解决了CPU和I/O操作的并行问题,但是仍然是单道程序系统。,1.2.4 多道程序系统阶段,多道程序系统:内存中同时有多道程序交替执行的系统。宏观上并行,微观上串行。多道程序系统必须解决的问题:1.内存的分配与保护2.处理机的管理和分配3.I/O设备的管理和分配4.文件存储空间的组织和管理,1.3 操作系统的功能,1.3.1 用户接口1.3.2 处理机管理1.3.3 存储管理1.3.4 设备管理1.3.5 文件管理,1.3.1 用户接口,操作系统与用户的接口也简称为用户接口。在以往的操作系统中,用户接口通常仅有命令和系统调用两种形式,前者供用户在终端键盘上使用,后者供用户在编写程序时使用。而在现代操作系统中,除上述两种接口外,又向用户提供了一种图形接口。,1.命令接口,在命令接口方式下,用户可以通过该接口向作业发出命令,以控制作业的运行。(1)联机用户接口 该接口是为联机用户提供的,它由一组建盘命令和命令解释程序所组成。每当用户在终端或控制台上键入一条命令后,系统便立即转入相应的命令解释程序,对该命令进行解释并执行。命令完成后,控制又返回到终端或控制台上,等待用户键入下一条命令。(2)脱机用户接口 该接口是为批处理作业的用户提供的,故也称为批处理用户接口。它由一组作业控制语言JCL组成。批处理作业的用户不能直接与自己的作业打交道,只能委托系统代替用户对作业进行控制和干预。用户可以使用JCL语言,把需要对作业进行的控制和干预事先写在作业说明书上,然后,将作业连同说明书一起提供给系统。,2.程序接口,该接口是为用户程序在执行过程中访问系统资源而设定的,是用户程序取得操作系统服务的唯一途径。程序接口由一组系统调用组成,每个系统调用都是一个能完成特定功能的子程序。系统调用是操作系统提供给用户程序调用的一组“特殊”接口。用户程序可以通过这组“特殊”接口来获得操作系统内核提供的服务,比如用户可以通过文件系统相关的调用请求系统打开文件、关闭文件或读写文件,可以通过时钟相关的系统调用获得系统时间或设置定时器等。,3.图形接口,图形用户接口采用图形化的操作界面,用非常容易识别的图标将系统的各种命令直观、逼真的表示出来。用户可通过鼠标、菜单和对话框来完成对应用程序和文件的操作。这样,用户就不需要去记忆那些操作系统命令以及它们的格式。并且,图形用户接口可以方便地将文字、图形和图像集成在一个文件中。可在文字型文件中加入一幅或多幅彩色图画,也可在图画中写入必要的文字,甚至可以把图画、文字和声音集成在一起。注意效率!,1.3.2 处理机管理,处理机管理的主要任务是对处理机的分配和运行实施有效管理。在多道程序环境下,处理机的分配和运行都是以进程为单位的,因此对处理机的管理可归结为对进程的管理。进程管理的主要功能包括:1.进程控制 2.进程同步 3.进程通信 4.进程调度,1.进程控制 进程控制的基本功能是创建进程和撤销进程,以及控制进程的状态转换。即当一个作业装入运行时为其创建进程;当一个进程完成时撤销该进程;当一个进程需要I/O时让该进程等待;当一个进程等待的事件发生后再被唤醒。2.进程同步 进程同步是指系统对并发执行的进程的协调。最基本的进程同步方式有两种:一种是协调共享临界资源的诸进程实现互斥访问;另一种是协调为完成共同任务而相互合作的进程实现同步推进。3.进程通信 进程通信是指相关进程之间所进行的信息交换。通常,相互合作进程在运行时需要交换一定的信息,这种信息交换由进程通信来实现。4.进程调度 进程调度是指按照一定算法在等待执行的进程中选出其中一个,给它分配处理机、设置运行环境,并使其投入执行。当一个执行中的进程完成,或因某事件无法执行需要重新分配处理机时,将引起进程调度。,1.3.3 存储管理,存储管理的主要任务包括:为多道程序的并发运行提供良好环境;为用户使用存储器提供方便;提高存储器的利用率;为尽量多的用户提供足够大的存储空间。为实现上述任务,存储管理应具备以下功能:1.内存分配 2.内存保护 3.地址映射 4.内存扩充,1.内存分配 内存分配的功能是为每道程序分配必要的内存空间。内存分配可分为静态和动态两种方式。在静态分配方式下,每个作业所占的内存空间是在其装入时确定的,作业一旦被装入内存,其整个运行期间不允许再重新申请内存,也不允许从内存的一个位置移到另一个位置。在动态分配方式下,每个作业需要的基本内存空间也是在装入时确定的,但允许作业在其运行过程中另外申请附加内存,也允许作业从内存的一个位置移到另外一个位置。2.内存保护 内存保护的功能是为了防止因一道程序错误而干扰其它程序,或因用户程序错误而侵犯操作系统的内存区。一般的内存保护方法是以硬件保护设施为基础,再加上软件的配合来实现的。内存的分配和保护功能为多道程序的运行提供了良好的环境。,3.地址映射 地址映射的功能是把目标程序中的地址转换为内存中所对应的实际地址。在多道程序系统中,目标程序所限定的地址范围和它被装入内存后的位置是很难一致的,因此操作系统必须提供地址映射功能。该功能可使用户或编译程序不必过问物理存储空间的分配细节,从而为用户编程提供了方便。4.内存扩充 内存扩充的功能是在不增加物理内存空间的前提下,使系统能够运行内存要求量比实际物理内存大得多的作业,或让更多的作业并发执行。内存扩充是借助于虚拟存储管理技术来实现的。,1.3.4 设备管理,设备管理的主要任务有:为用户分配I/O设备,完成用户程序请求的I/O操作,提高CPU和输入输出设备的利用率,改善人机界面。为实现上述任务,设备管理应具备以下功能:1.缓冲管理 2.设备分配 3.设备处理 4.虚拟设备管理,1.缓冲管理 缓冲是指在内存中划出来的用来存放暂时信息的一片区域。为了缓解CPU与I/O设备间速度不匹配的矛盾,增加CPU与设备、设备与设备间操作的并行程度,提高CPU和I/O设备的利用率,通常在系统中设置了各种不同类型的缓冲区。操作系统应能对这些缓冲进行有效管理。2.设备分配 设备分配是指根据用户所请求的设备类型、数量,按照一定的分配算法对设备进行分配。同时也涉及到对设备请求未能满足的进程的管理问题。,3.设备处理 设备处理是指启动指定的I/O设备,完成用户规定的I/O操作,并对设备发来的中断请求进行及时的响应和处理。4.虚拟设备管理 虚拟设备也称为逻辑设备,是指用户意识中的、而实际上并不存在的设备。为提高设备的利用率和加快程序的执行速度,操作系统可通过虚拟设备技术,把每次仅供一个进程使用的独享设备改造成能被多个用户使用的虚拟设备。这样,每个用户都觉得自己得到了一台设备,但这台设备并不是真正的物理设备,而是由操作系统虚构出来的逻辑设备。,1.3.5 文件管理,现代计算机系统的外存中,都以文件形式存放着大量的信息。操作系统必须配置相应的文件管理机构来管理这些信息。文件管理机构的主要功能包括:1.文件存储空间的管理2.目录管理3.文件读写管理4.文件保护5.文件系统的安全性6.文件接口,1.文件存储空间的管理文件存储空间是存放文件信息的载体,为实现对它的管理,文件管理机构必须能够记住整个文件管理存储空间的使用情况,并且能够根据文件需要对其进行分配和回收。至于文件空间的分配和回收,都是以盘块为单位进行的。2.目录管理 目录或称文件目录,是用来描述系统中所有文件基本情况的一个表。最简单的文件目录由若干个目录项所组成,每个目录项包括一个文件的名字、物理位置及其它大量管理信息。系统对文件的管理实际上是通过文件目录进行的。在不同系统中,文件目录有着不同的组织方式。文件管理机构应能够有效地管理所有文件目录。3.文件读写管理 对文件进行读写是文件管理必须具备的最基本操作。以读为例,应该能够从外存指定区域把指定数量的信息读入到内存指定的用户区或系统区。,4.文件保护 文件保护是为了防止文件被盗窃或被破坏。文件保护应能够防止未经核准的或冒名顶替的用户存取文件,防止被核准的用户以不正当的方式使用文件。5.文件系统的安全性 文件系统的安全性是指文件系统避免因软件或硬件故障而造成信息破坏的能力。为尽量减少在系统发生故障时对文件系统的破坏,最简便的措施是为重要的文件保存多个副本,即“定期转储”,当系统出现故障时,可以装入转储的文件来恢复文件系统。6.文件接口 文件管理机构应向用户提供一个使用文件的接口,使用户能通过该接口,很方便地对文件进行建立、打开、关闭、撤销、读、写等操作。,1.4 操作系统的结构,1.4.1 系统结构1.4.2 两种机器状态1.4.3 两种系统界面,1.4.1 系统结构,前面所讨论的内容主要是操作系统的一些外部特性,如果从操作系统的内部结构来看,可分为以下三种主要类型:1.整体式系统2.层次式系统3.客户/服务器系统,1.整体式系统,整体式系统是早期操作系统和一些较小的操作系统所采用的一种结构模型。它实际上是没有结构的,整个系统是一堆过程的集合,每个过程都可以随便调用任意其它过程。采用这种技术时,为了构造操作系统的最终目标程序,需要先对那些单个过程进行编译,然后再把它们链接成一个统一的目标程序。因此,它没有提供任何程度的信息隐蔽能力,各过程之间是彼此可见的。整体式系统提供了两种处理机运行模式:用户态(运行用户程序)和核心态(运行操作系统)。这种操作系统也存在一些很低的结构化,一般来说,其所有过程可大致分为三层:最高层是主程序,它引用所需的服务过程;中间层是一组服务过程,它执行系统调用;最底层是一组公共过程,用来支持各服务过程。,2.层次式系统,层次式系统是按照操作系统中模块的功能和相互依存关系把它们划分为若干个层次,除最底层模块外,任一层模块都建立在它下面一层模块的基础上,即任一层模块都只能调用它的下层模块来得到服务,而不能调用其上层模块。层次式系统的典型结构如图所示。实际上,一个操作系统应划分为多少层,各层处于什么位置是无固定模式的。,3.客户/服务器系统,在客户/服务器结构中,需要把操作系统的服务功能划分为若干个服务进程,并让这些进程在用户态下来运行。其中的每一个服务进程称为一个服务器,如内存服务器、进程服务器、终端服务器、文件服务器等。而用户进程则称为客户进程。客户/服务器系统的工作方式可大致描述为:当客户进程需要请求某个服务时,有客户进程向所需的服务器进程发送一个请求,运行在核心态的操作系统内核会把客户进程的这一请求传递给相应的服务器进程,服务器进程接到请求后进行工作,工作完成后再把结果经内核返回给客户进程。客户/服务器系统的结构如图所示。,客户/服务器系统的主要优点有以下两个方面:第一,提高了系统的可靠性。由于每个服务器都以独立的用户态进程方式运行,因此,当单个服务器出现故障(或重新启动)时,不会引起操作系统其它部分的崩溃。第二,适合于分布式系统中的应用。如果一个客户与一个服务器通信,当客户把请求发送给服务器后,就不必知道该请求是在自身机器上处理,还是通过网络被发送到别的机器上进行处理。,1.4.2 两种机器状态,计算机系统都有两种运行状态(又叫处理机运行模式)一种是用户态(运行用户程序),另一种是核心态(运行操作系统)。当用户在程序中使用系统调用请求系统提供服务时,需要先将控制切换到核心态,然后由操作系统检查该调用的参数,调用并执行相应的系统调用,系统调用结束后,控制又返回给用户程序。,1.4.3 两种系统界面,1.人机界面面向一般用户,人与计算机之间的接口。对于批处理系统,这个界面就是作业控制语言。对于会话式机器系统,这个界面由键盘命令及其图形图标组成。2.程序界面面向程序员,由系统调用指令或者中断、访管指令组成。系统调用指令是操作系统内核与用户态程序之间的惟一接口。,1.5 操作系统的特征,1.5.1 操作系统的基本特征1.5.2 现代操作系统的某些新特征,1.并发所谓并发,是指两个或两个以上事件在同一时间间隔内发生。与并发对应的另外一个概念是并行。所谓并行,是指两个或两个事件在同一时刻发生。在单处理机系统中采用多道程序设计技术后,可以实现硬件之间的并行操作和程序之间的并发执行。硬件之间的并行操作是一个微观概念,例如,当I/O设备在进行I/O操作时,CPU可以进行计算工作。而程序之间的并行执行则是一个宏观上的概念。从宏观上看,一段时间内有多道程序在同时运行,但从微观上看,任意时刻却最多只能有一道程序真正在处理机上执行。即宏观上多道程序在并发运行,而微观上这些程序却是在交替执行的。,1.5.1 操作系统的基本特征,通常把能够并发执行的程序称为并发程序,相应的系统称为并发系统。现代计算机系统是一种并发系统,操作系统作为这种并发系统的管理者,其本身也应该是并发执行的。应当指出,通常意义上的程序只是一个静态实体,他们是不能并发执行的。为使程序能够并发执行,系统必须为每个程序建立进程。所谓进程,可简单地理解为程序的执行,它是一个活动实体,并作为系统运行和资源分配的基本单位。操作系统的并发性有效地提高了系统资源的利用率和系统的吞吐量,但也导致了操作系统的复杂化,使得操作系统必须具有控制和管理各种并发活动的能力。,2.共享 所谓共享是指系统中的硬件和软件资源可为多个用户同时使用。操作系统的主要职能之一就是组织好对资源的共享,使系统资源得到高效利用。根据资源属性的不同,可以有以下两种资源共享方式:(1)互斥共享 互斥共享也称为顺序共享,是指多个进程互斥使用某个资源。系统中的很多资源都是要求按互斥方式共享的。这些资源虽然可供多个进程共同使用,但在一段时间内却仅允许一个进程使用。当一个进程正在访问某一资源时,其它欲访问该资源的进程必须等待,仅当这个进程访问完毕,并释放该资源后,才允许另一进程对这个资源进行访问。我们把在一段时间内仅允许一个进程访问的资源称为临界资源。诸如字符设备、磁带机等物理设备以及某些变量、表格、队列等都属于临界资源,他们都要求按互斥方式共享。(2)同时访问 同时访问也称为并发共享,是指在一段时间内允许多个进程同时对它进行访问。这里所谓的“同时”仍然是宏观上的概念。而微观上,这多个进程却是在交替使用该资源,即任意时刻真正使用该资源的进程都只能有一个。典型的可同时访问的资源是磁盘。此外,一些用重入码编写的程序,也可实现同时访问。,并发和共享是操作系统的两个最基本特征,它们之间是相辅相成、互为依存条件的。一方面,资源共享以程序并发执行为条件,若程序不能并发执行,自然就不存在资源的共享问题;另一方面,程序并发执行以资源共享为基础,若系统不能对资源共享实施有效管理,也必然会影响到程序的并发执行,甚至根本无法并发执行。只有系统能够高度并发,资源才能充分共享;也只有资源能够被充分共享,系统才能够更好地并发。,3.虚拟所谓虚拟是指把物理上的一个实体变成逻辑上的多个对应物。前者是实的,即实际存在的;后者是虚的,即逻辑上的。例如,在多道程序系统中,虽然只有一个CPU,微观上只能执行一道程序,但通过对CPU的分时使用,宏观上在一段时间间隔内能同时运行多道用户程序。即把一台物理上的CPU虚拟成了多台逻辑上的CPU。虚拟的另外一种观点是指虚拟出来的对应物只不过是用户主观上的一种错觉,并不是客观上存在的东西。例如,在分时系统中,每个终端用户都以为自己单独使用了一台计算机,这实际上只是用户的一种错觉,原因是物理计算机只有一台。,4.异步性 所谓异步性是指内存中的多个进程均按照各自独立的、不可预知的速度向前推进。在多道程序环境下,尽管允许多个进程并发执行,但由于资源等因素的限制,进程通常不能一直不停地执行,而是以走走停停的方式运行的。内存中的每个进程何时执行,何时暂停,以怎样的速度向前推进,每道程序总共需要多少时间才能完成等,都是不可预知的。很可能是先进入内存的作业后完成;而后进入内存的作业先完成。或者说,进程是以异步方式运行的。尽管如此,但只要运行环境相同,作业经多次运行,都会获得完全相同的结果,因此,异步运行方式是允许的。,1.5.2 现代操作系统的某些新特征,1.微内核结构2.多线程3.对称多处理4.分布式操作系统5.面向对象技术,1.微内核结构,只给内核分配一些最基本的功能,包括地址空间、进程通信和最基本的调度。而其他的操作系统的功能都由运行在用户模式下的进程(客户进程,服务程序)实现。把内核和服务程序的开发分离开,可以为特定的应用程序或环境要求定制服务程序。优点:可以简化实现,提供灵活性,很适合于分布式环境。,基于微内核结构的操作系统和传统操作系统相比,具有以下特点:内核精巧通常内核只由任务管理、虚存管理和进程间通信3个部分组成传统操作系统内核中的许多部分都被移出内核采取服务器方式实现;面向多处理机和分布式系统基于微内核的操作系统,在内核中引入了多处理机调度和管理机制,并引入了细粒度并发机制 线程,使得多个处理机可以在同一个任务中并行地执行;基于客户服务器体系结构在微内核结构的操作系统中,任务间通信机制 消息机制是系统的基础,操作系统的各种功能都以服务器方式实现,向用户提供服务用户对服务器的请求是以消息传递的方式传给服务器的,2.多线程,把执行一个应用程序的进程划分成可以同时运行的线程,提高了执行效率。在同一个进程中运行多个线程,在线程间来回切换所涉及的处理机开销要比在不同进程间进行切换的开销少。,3.对称多处理,对称多处理不仅指计算机硬件结构,而且指反映硬件结构的操作系统行为。对称多处理是具有以下特征的独立计算机系统:1.由多个处理器组成;2.多个处理器共享同一个主存和I/O设备。3.所有处理器都可以执行相同的功能与单处理器结构相比,SMP在性能、可用性和增量扩展上具有优势。,4.分布式操作系统,是由网络中的所有计算机共享的操作系统。是个一体化的系统,是为分布式计算机系统配置的操作系统。除了最低级的输入/输出设备资源外,所有的任务都可以在系统中任何别的处理机上运行,并为用户提供一个统一的界面和标准接口。,5.面向对象技术,用于给小内核增加模块化的扩展上,简化了进程间资源和数据的共享,便于保护资源免受未经授权的访问。基于对象的结构使程序员可以定制操作系统,而不会破坏系统的完整性。使系统开发变得容易。,1.6 操作系统的分类,多道批处理系统1.6.2 分时系统1.6.3 实时系统1.6.4 网络操作系统1.6.5 分布式操作系统,操作系统的类型,可以有多种不同的分类方法。例如,按照操作系统所依赖的硬件的规模,可将其分为大型机、中型机、小型机和微型机操作系统。不过,其中最常用的方法是按照操作系统的用户服务方式,将其分为多道批处理系统、分时系统和实时系统三种基本类型。,1.多道批处理系统的运行方式,多道批处理系统的运行方式如图1-3所示。操作员把用户提交的作业卡片放到读卡机上,系统通过SPOOLing(含意是外围设备同时联机操作,将在第6章讨论)输入程序及时地把这些作业送入外存的磁盘输入井,形成后备作业队列。作业调度程序根据系统的当前情况和后备作业的特点,按照一定的调度原则选择一个或几个搭配合理的一批作业,装入内存准备运行。所谓搭配合理,主要是指作业的选择应既有利于提高资源利用率,又能满足不同作业用户在等待时间方面的要求。内存中的多个作业交替执行。当某个作业完成时,系统把该作业的计算结果交给SPOOLing输出程序准备输出,并回收该作业的全部资源。重复上述过程,使得诸作业一个接一个地流入系统,经过处理后又一个接一个地退出系统,形成一个源源不断的作业流。,2.多道批处理系统的特征,多道批处理系统具有如下特征:(1)多道性 在内存中可以同时驻留多道程序,并允许它们同时执行,从而有效地提高了系统的资源利用率和系统吞吐量。(2)无序性 多个作业完成的先后顺序与它们进入内存的先后顺序之间,并无对应的先后关系,即先进入内存的作业可能较后甚至最后完成,而后进入内存的作业则有可能先完成。(3)调度性 作业从提交给系统开始直至完成,需要经过以下两次调度:作业调度 这是指按一定的作业调度算法,从外存的后备作业队列中选择若干个作业调入内存。至于作业调度的详细讨论,将放在第4章。进程调度 这时指按一定的进程调度算法,从已在内存的作业中选择一个,将处理机分给它,使之执行。,3.多道批处理系统的优缺点,多道批处理系统的主要优点如下:资源利用率高 由于在内存中装入了多道程序,它们共享资源,使得系统中的各种资源得到了更充分的利用。系统吞吐量大 系统吞吐量是指系统在单位时间内完成的总工作量。能提高系统吞吐量的原因主要有以下两个方面:第一,CPU和其它资源保持忙碌状态;第二,仅当作业完成或无法运行时才进行切换,系统开销小。多道批处理系统的主要缺点如下:平均周转时间长 作业周转时间是指从作业进入系统开始,直至完成并推出系统为止所经历的时间。而平均周转时间是指一批作业中所有作业周转时间的平均值。在多道批处理系统中,由于作业要排队,依次进行处理,因而作业的周转时间较长。无交互能力 用户一旦把作业提交给系统后,系统只能根据用户提供的作业说明书对作业进行控制,这对程序的修改和调试是非常不方便的。,1.6.2 分时系统,分时系统既是操作系统的一种类型,又是对配置了分时操作系统的计算机系统的一种称呼。在分时环境下,一个计算机系统连接有若干个本地或远程终端,每个用户都可以在自己的终端上以交互方式使用计算机,对系统资源进行时间上的分享。,1.分时系统的实现方法,分时是计算机系统中的一个普遍概念,它可以理解为:两个或两个以上事件按时间划分轮流使用计算机系统中的某一资源。例如,CPU和通道同时使用内存;多台设备同时使用通道等。而分时系统中的分时概念则侧重于对CPU的分时使用问题,它是通过操作系统软件来实现的。,实现分时的基本方法是设立一个时间分享单位-时间片。时间片的长短视具体系统而定,可长可短。另外,在硬件方面设立一个中断时钟,它每经过一个时间片,便向CPU发一次中断。于是,CPU在一个用户程序执行了一个时间片时,便被中断,然后CPU转向操作系统程序。操作系统在对被中断的用户程序现场作必要的保护之后,转去执行另一个用户程序。这样,操作系统可以把CPU按时间片依次分配给系统中的每一个用户程序。,2.分时系统的特性,(1)多路性(2)独立性(3)及时性(4)交互性,3.分时系统的响应时间,响应时间是指从终端用户发出一条命令开始,到系统处理完这条命令并做出回答为止所需的最大时间间隔。分时系统的响应时间是衡量分时系统性能的一个重要指标,也是设计分时系统时应注意的一个重要问题。,(1)影响响应时间的主要因素 系统开销 分时系统中的系统开销主要是指进程的调度和对换时间。进程的对换时间可表示为:对换时间=外存的访问时间+信息的传输时间其中,信息的传输时间等于信息的对换量除以信息的对换速度,即 信息的传输时间=信息对换量/信息对换速度可见,同样一批信息,内外存之间的信息对换速度越高,其传输时间就越短。从而会减少响应时间。因此,应选择速度高的磁盘作为外部存储器。用户数目 若系统中有n个同时性用户,时间片为q,则每个用户轮转一次所需的时间nq可近似第看作响应时间。可见,当q一定时,响应时间与用户数目成正比,这就限制了分时系统中的同时性用户的数目。,时间片 当n一定时,响应时间正比于q,从这种意义上说,减少时间片的长度便可改善系统对用户的响应时间。但从另一方面来看,同样一个作业,时间片越小,完成它所需的时间片个数和对换次数就会越多,这无疑会增加系统开销,降低系统效率。信息对换量 根据前面的分析,信息对换时间与信息对换量成正比,在同样的对换速度下,信息对换量越少,信息的传输时间就越短。反之,对换时间就会越长。,(2)改善响应时间的办法在上述影响响应时间的四个因素中,增加对换速度会受到硬件的限制;减少用户数目将影响系统性能;缩短时间片会降低系统效率;可行的办法是减少信息对换量。减少信息对换量可采用以下两种方法:重入码技术 所谓重入码是指被对多个作业共享的代码。用重入码技术编制的文件可供多个终端用户共享,而不必让每个用户都自带副本,这样可减少信息对换量。虚拟存储技术 虚拟存储技术是一种能自动是现在较小内存中运行较大用户作业的内存管理技术。实现这种技术的主要方法是在外存保留作业的全部副本,而每次调入主存的仅是当前时间片所用到的部分。这样就可大大减少信息对换量。,1.6.3 实时系统,实时系统是为了满足实时问题对计算机应用所提出的特殊要求而出现的一种操作系统。所谓实时,是指“立即”、“马上”的意思。而实时系统则是指系统对特定输入做出反应的速度足以控制发出实时信号的对象。或者说计算机能够及时响应外部事件的请求,在规定的短时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地运行。,1.实时系统的类型,实时控制系统 实时控制系统通常是指以计算机为中心的生产过程控制和活动目标控制。对生产过程控制的例子有钢铁冶炼、电力生产、化工生产、机械加工、炼油等;对活动目标控制的例子有飞机飞行、导弹发射、火炮射击等。在实时控制系统中,控制计算机通过特定的外围设备从被控制过程实时采集现场信息,如温度、压力、流量、空间位置等参数,并对他们进行及时处理,从而自动地控制响应机构,使这些参数能按预定规律变化或保持不变,以达到保证质量、提高产量、密切跟踪和及时操纵等目的。,实时信息处理系统 实时信息处理系统通常是指以计算机为中心的实时信息查询系统和实时事务处理系统。实时查询系统的主要特点是配置有大型文件系统或数据库,并具有向用户提供简单、方便、快速查询的能力,其典型的应用例子有仓库管理系统和医护信息系统等。实时事务处理系统的主要特点是数据库中的数据可随时更新,用户和系统之间频繁地进行交互作用,其典型的应用例子有飞机订票系统、电子商务系统、股票系统等。,实时系统的特征,(1)多路性 实时系统也会遇到多个用户同时访问的问题。例如,实时控制系统往往需要同时采集多个现场信息和控制多个执行机构;实时信息处理系统往往需要同时处理多个用户的信息查询或服务请求。(2)独立性 实时系统与分时系统一样具有独立性。在实时控制系统中,信息的采集和对象的控制都是被此互不干扰的;在实时信息处理系统中,每个终端用户在向系统提出信息查询和服务请求时也都是彼此独立,互不干扰的。(3)及时性 实时系统对及时性的要求比分时系统要高。分时系统的及时性通常是以人所能接受的等待时间来确定的,一般为秒级;而实时系统的及时性则是以控制对象所能接受的延迟时间来确定的,可能是秒级,也可能是毫秒级,甚至是微秒级。,(4)交互性 实时系统大都是具有特殊用途的专用系统,它仅允许操作人员访问系统中某些特定的专用服务程序,但一般不能写入程序或修改现有程序。因此,实时系统的交互能力比分时系统要差。(5)高可靠性实时系统和分时系统相比,对可靠性的要求会更高,原因是实时系统中的任何差错都可能带来巨大的经济损失、甚至无法预料的灾难性后果。因此,在实时系统中,往往都采取了多级容错措施,以保证系统的安全和数据的安全。,1.6.4 网络操作系统,随着计算机网络的发展,又产生了网络操作系统。在网络系统中,各个计算机的硬件特性可能不同、数据表示格式及其它方面的要求也可能不同,为能进行有效通信,它们之间必须建立相应的约定,这些约定被称之为协议或规程。从这种意义上讲,网络操作系统可定义为:网络操作系统是使网络上各计算机能方便而有效地共享网络资源,为网络用户提供所需的各种服务的软件和有关规程的集合。,网络操作系统的功能,(1)网络通信(2)资源管理(3)网络服务(4)网络管理(5)互操作能力,网络操作系统的工作模式,客户-服务器(Client-Server,C-S)模式对等模式,1.6.5 分布式操作系统,分布式系统指由多个分散的处理单元,经互联网络连接而成的计算机系统。最基本的特征是处理上的分布。分布式操作系统是由网络中的所有计算机共享的操作系统。它是个一体化的系统,是为分布式计算机系统配置的操作系统。除了最低级的输入/输出设备资源外,所有的任务都可以在系统中任何别的处理机上运行,并为用户提供一个统一的界面和标准接口。,分布式操作系统的主要特点,(1)进程通信采用信息传递方式,不能借助公共存储区;(2)进程调度、资源分配和系统管理等必须满足分布处理要求,并保证一致性的分散式管理方式和具有强健性的分布式算法;(3)协调系统中各处理机的负载基本平衡;(4)具有检测任一处理机停机或发生故障的能力,并能做出适当处理。,分布式操作系统与网络操作系统的比较,(1)分布性(2)并行性(3)透明性(4)共享性(5)健壮性,1.7 操作系统的启动和工作过程,(1)装入阶段:由引导程序和输入部件相互配合把操作系统代码从磁盘上读入内存后,系统的控制转给操作系统中的初启程序。(2)操作系统的初启工作:确定系统配置并给系统本身的全局变量和各种数据结构置初值。为操作系统中的某些程序建立进程。将控制转低级调度(即CPU调度)或命令解释程序。,1.8 Windows2000的模型,Windows2000通过硬件机制实现了核心态和用户态两个特权级别。Windows2000的核心态组件使用了面向对象设计原则。基于可移植以及效率因素的考虑,大部分代码使用了基于C语言的对象实现。Windows2000将很多系统服务运行在核心态,更高效更稳定。,Windows2000的软件体系结构,系统支持进程,服务进程,图形引擎,子系统动态链接库,环境子进程,应用进程,用户态,核心态,Thank you very much!,