《操作系统课件 第一章.ppt》由会员分享,可在线阅读,更多相关《操作系统课件 第一章.ppt(32页珍藏版)》请在三一办公上搜索。
1、操 作 系 统 Operating System,参考书计算机操作系统教程 徐甲同 等编著 西安电子科技大学出版社计算机操作系统教程 张尧学 等编著 清华大学出版社现代操作系统Andrew S.Tanenbaum著陈向群 等译 机械工业出版社,第一章 操作系统概论,1.1 什么是操作系统 计算机系统的组成,控制器 由内存中取指、分析 CPU(中央处理机)运算器 完成指令的操作 寄存器 存储暂时的结果和其他控制信息,每个寄 存器有其特定的功能硬件 存储器 主存(内存)CPU直接访问,存取速度比外存快 辅存(外存)存储量大、存取速度慢。CPU不直接访问。(必须先 装入主存后,CPU才访问得到)I/
2、O设备 完成信息传输任务的设备 操作系统(部分常驻内存)软件 系统实用软件(语言编译、文本编辑、调试、连接等程序)(需要时才装入内存)应用软件,典型的计算机系统包括5个主要部分:硬件、操作系统、系统程序、应用程序和用户。,1.1.2 计算机硬件,1.计算机的基本硬件元素,CPU是计算机系统的核心。它包括一些专用寄存器、一个算术逻辑单元(ALU)以及解码与执行指令所必需的控制逻辑。存储器和I/O设备通过通信总线与CPU连接。CPU的操作由CPU从存储器中取出的指令进行控制,I/O设备由CPU控制。,2.与操作系统相关的几种主要寄存器,数据寄存器地址寄存器条件码寄存器程序计数器PC指令寄存器IR程
3、序状态字PSW中断现场保护寄存器过程调用用堆栈,3.存储器的访问速度,存储介质的访问速度,4.指令的执行与中断,指令的执行周期,指令执行:从程序计数器指定的内存地址中取一条指令。(所有将要执行的指令都从主存中取得。)指令放在指令寄存器中。程序计数器加1,指向将要执行的下一条指令。指令解码,以确定将要执行的动作。执行的动作由指令操作码位确定,计算机体系结构确定哪些二进制位包含操作码。根据执行的操作从内存中获得一个或多个操作数。执行由操作码指定的操作,有以下5类基本操作:移动:将一个值从一个位置移动到另一个位置。(位置可以是寄存器地址或内存地址。)计算:把一个或多个操作数值送入ALU并进行计算。条
4、件转移:如果转移条件为真,则重置程序计数器,使其指向转移地址。对于无条件转移,转移条件永远为真。过程调用:保存程序计数器的当前值,然后重置程序计数器,使其指向过程的起始位置。在过程的末尾,指定所保存程序计数器的转移指令,使程序可以回到先前的执行点。保存的程序计数器存储在寄存器、内存或堆栈中。输入输出:传送CPU和I/O设备之间有关输入输出操作的信息。如果需要,向主存中写回一个值。,中断执行过程,中断处理时的指令执行周期,陷阱和中断是干扰CPU执行指令正常顺序的事件。陷阱是CPU检测到的非正常状态,通常表示出错。中断是外部设备发给CPU的信号。中断是计算机系统结构的一个重要部分,中断机制包括硬件
5、的中断装置和操作系统的中断处理服务程序。中断装置由一些特定的寄存器和控制线路组成,CPU和外围设备等识别到的事件保存在特定寄存器中,CPU每执行完一条指令后,均由中断装置判别是否有事件发生。陷阱和中断的区别之一是,陷阱是同步的,中断是异步的。如果具有相同的计算机状态,输入相同的数据,那么每次程序运行时就会在程序的同一点上出现陷阱。中断的发生依赖于中断设备和CPU之间的相对时序。,为了使计算机系统能正常运行而必不可少的那些系统软件或软件集合叫做操作系统。,操作系统与硬件软件的关系,1.1.3 操作系统的地位,操作系统与用户和计算机的关系,操作系统位于计算机硬件与计算机用户之间。操作系统既控制和管
6、理所有计算机硬件,也控制和管理所有的软件,包括系统软件和应用软件。,1.1.4 操作系统的目标 方便性(高级语言 机器语言)OS(OPERATION SYSTEM)翻译 有效性(改善系统资源利用率、提高系统的吞吐量)可扩充性(OS采用模块化结构)开放性(适用于各种类型的计算机系统,可移植性和互操作性)1.1.5 对操作系统的看法 1.内部、微观的看法:操作系统是计算机资源的管理者:计算机系统中的资源包括:硬件资源、软件资源(程序、数据、文档)操作系统作为资源管理者的主要功能有:监视资源 分配资源,解决资源请求中的冲突 回收资源 保护资源,操作系统是任务的组织者:受理用户的各种请求 组织、协调任
7、务的执行 提高系统吞吐率 2.外部、宏观的看法:编程人员认为:扩充了的机器 虚拟的机器,在功能上和数量上扩充了原有的裸机。功能上:提供功能强大的系统调用,扩充了裸机的基本指令系统。数量上:多个用户同时使用一台计算机,使得每个用户都觉得有一 台属于自己的计算机。用户认为:用户与计算机系统打交道的界面。大大简化了计算机的操作。用户希望操作系统的界面友好、易于使用。字符界面菜单界面窗口界面图形界面、多媒体界面3D界面 系统操作的基本单位 进程(process)或任务(task)或活动(active),1.1.6 操作系统的具体功能 1.任务与进程管理 作业流程控制、充分有效地利用系统处理器;(进程控
8、制、进程调度、进程同步、进程通信)2.存储(内存)管理 有效利用系统的内存空间;(地址重定位、存储分配、存储保护、存储扩充)3.I/O操作与设备管理 有效利用I/O设备及接口;(缓冲管理、设备分配、设备处理)4.文件管理与信息的存储 有效利用系统信息与数据;(目录管理、文件读写管理、文件存取控制)5.作业管理与工作环境 建立良好的用户接口与交互界面;6.操作系统安全的维护 建立可靠的系统,保护资源。1.1.7 操作系统提供的服务 操作系统提供的服务一般可分为两类:1.方便用户及用户程序的开发与执行的服务 2.提高系统操作效率的服务,操作系统提供服务的基本方式有三种:系统命令 在用户一级使用的服
9、务,即用户使用的命令。系统调用 在程序一级使用的命令。系统调用主要有三类:进程和作业控制设备与文件管理系统自身维护 系统程序 操作系统提供的另一类服务,在操作系统核心之外的 一套程序。例如:语言编译程序链接程序装入程序系统维护程序,1.2 操作系统的形成和发展,器件的不断更新换代是推动OS发展的动力:1946年至20世纪50年代末 第一代,电子管时代 无操作系统20世纪50年代末至60年代中期 第二代,晶体管时代 批处理系统20世纪60年代中期至70年代中期 第三代,集成电路时代 多道程序设计20世纪70年代中期至20世纪末 第四代,大规模和超大规模集成电路 分时操作系统21世纪初开始,以移动
10、、分布和网络计算为代表,现代计算机正向着普适计算、网格计算以及巨型、微型、并行、分布、网络化、智能化和生物信息化几个方面发展。,无操作系统时的计算机系统 人工操作方式:,缺点:用户独占全机,CPU等待人工操作时空闲,1.2.2 单道批处理系统系统对作业的处理都是成批进行的、且在内存中始终只保持一道作业。,单道批处理系统的处理流程:,单道批处理系统中CPU的利用情况:,特点:自动性、顺序性、单道性,1.2.3 多道程序系统内存中保持若干道作业。,多道程序系统中CPU的利用情况:,特点:主存中有两道或两道以上的程序,它们在任一时刻必处于就绪、运行、阻塞三种状态之一。宏观上并行。微观上串行。优点:提
11、高系统资源的利用率、增加系统吞吐量。缺点:平均周转时间长、无交互能力。,多道程序系统需要计算机硬件的支持:中断系统和通道技术。通道又称I/O处理机,它能完成主存和外设之间的信息传输,并与中央处理器并行操作。,1.2.4 分时操作系统 所谓分时是指把系统主CPU的运行时间分成长短相等的时间片,并把它轮流地、机会均等地分配给每个用户进程。用户和进程之间可进行交互。分时操作系统也是一种多道程序系统,一般是多用户操作系统。现在常用的多用户操作系统和网络操作系统都是分时操作系统。1.2.4 实时操作系统 实时系统主要用于需要对外部事件进行及时响应、处理的场合,可分为实时控制系统和实时处理系统。实时控制系
12、统主要用于生产过程的自动监控,武器装备的制导等。实时处理系统主要用于航空订票系统、情报检索系统等。1.2.5 通用操作系统 通用操作系统可以同时兼有多道批处理、分时、实时处理的功能,或其中两种以上功能。,1.3 操作系统的分类随着计算机技术和软件技术长期发展,已形成了各种类型的操作系统,以满足不同的应用要求。根据其使用环境和对作业处理方式,操作系统的基本类型有:单用户(微机)操作系统 批处理系统 分时系统 实时系统 网络操作系统 分布式操作系统 多处理机操作系统,单用户(微机)操作系统 1.单用户单任务OS:只允许一个用户上机,只允许一个用户程序作为一个任务运行。如MS-DOS(16位)2.单
13、用户多任务OS:只允许一个用户上机,但允许一个用户程序分为若干个任务,使它们并发执行。如WINDOWS(32位)3.多用户多任务OS:允许多个用户通过各自的终端使用同一台主机,而每个用户程序又可进一步分为几个任务使它们并发执行。如:UNIX,它是唯一能在微机工作站、大、中、小型机上运行的OS。1.3.2 批处理系统 批处理系统把系统的处理能力即作业的吞吐量作为主要目标,同时兼顾作业的周转时间。批处理系统可分为单道批处理系统和多道批处理系统。实现批处理的主要输入输出手段是SPOOLing(Simultaneous Peripheral Operation On Line)技术。可译作外围设备同时
14、联机操作。,批处理系统中的作业状态及其转换,在批处理系统中,一个作业从进入系统到退出系统经历如下状态及其转换,在状态转换中使用了SPOOLing、作业调度、进程调度和交通控制系统程序。,分时操作系统 一台计算机连接多个终端,用户通过各自的终端把作业送入计算机,计算机又通过终端向用户报告作业的运行情况。这种计算机能分时轮流地为各终端用户服务并能及时地对用户服务请求予以响应。特点:同时性:若干用户可同时操作,共同使用同一系统资源。独立性:每个用户有独占感。及时性:用户的请求能得到及时响应。交互性:它是分时系统的主要属性,所以分时系统也称交互作用系统。分时系统的响应时间T=nq;n为用户数,q为时间
15、片的时间。,1.3.4 实时系统实时系统主要用于需要对外部事件进行及时响应、处理的场合,可分为实时控制系统和实时处理系统。实时控制系统主要用于生产过程的自动监控,武器装备的制导等。实时处理系统主要用于航空订票系统、情报检索系统等。实时系统的主要特点是:及时性:对事件或请求响应的及时性是对实时系统最关键的要求。实时控制系统要求最高,可能为毫秒或微秒级,也可能为秒级;实时处理系统的要求不高,与分时系统差不多,一般为秒级。安全可靠性:对于实时控制系统,尤其是一些重要项目,如航空航天、核工程、化学反应过程、武器控制等等,任何疏忽都会导致灾难性的后果。首先要保证安全可靠,要有容错机制。实时系统通常配置在
16、微机、小型机或工作站上。现在大量的嵌入式系统也常采用实时系统。,1.3.5 网络操作系统 计算机网络环境下具有网络功能的操作系统。网络操作系统(NOS)是使网上各计算机能方便而有效地进行数据通信和资源共享,为网络用户提供所需的各种网络服务的软件集合。网络操作系统提供的功能:实现网中各节点机之间的通信。实现网中软、硬件资源的共享。提供网络服务软件。(电子邮件服务、文件传输、共享硬盘服务、共享打印服务)提供网络用户的应用程序接口。,1.3.6 分布式操作系统分布式计算机系统把一个计算问题分成若干个可以并行执行的子计算,让每个子计算在系统中的各计算机上并行执行,充分利用各计算机的优势。集中式处理系统
17、:所有任务均由主机完成。分布式处理系统:系统的处理控制功能分布在各个节点单元上,所有任务也动态地分布在各个处理单元上。(处理、资源、功能、任务、控制均是分布的)建立在计算机网络系统之上。分布式系统的主要特点是:各节点的自治性;资源共享的透明性;各结点间的协同性;系统的健壮性;分布式操作系统 分布式操作系统和单机的集中式操作系统的主要区别表现在通信、资源管理和系统结构三个方面。系统状态的不精确性。控制机构的复杂性。通信开销引起性能的下降。,1.3.7 多处理机操作系统 多处理机系统是由多台处理器组成的计算机系统。多处理机系统可分为两大类:基于共享存储的多处理机系统。又称紧耦合多处理机系统。基于分
18、布存储的多处理机系统。又称松耦合多处理机系统。多处理机系统也称为并行计算机系统。并行机上使用的操作系统称为并行操作系统。操作系统的主要特征并发性:指两个或多个事件在同一时间间隔内发生。共享性:指系统中的资源可供内存中多个并发执行的进程共同使用。虚拟性:指通过某种技术把一个物理实体变成若干个逻辑上的对应物。异步性:即不确定性。,1.4 操作系统的结构,操作系统通常由内核和核外部分(实用软件)组成。1.4.1 操作系统的内核内核是在系统保护状态(核心态或管态)下运行的程序,为系统的基本工作单位(进程或线程)提供良好的运行环境。为提高操作系统的效率,内核常驻内存中。内核通常包含的功能模块:进程、线程
19、及其管理。存储管理。I/O管理。文件管理。操作系统的内核组织形式:强内核(Monolithic Kernel)和微内核(Micro Kernel),强内核:基于传统的集中式操作系统的内核结构,系统调用是通过陷入内核实现的,在内核完成所需的服务,最后返回结果给用户程序。(Unix)微内核:体现操作系统结构设计的新思想。微内核的设计目标是使操作系统的内核尽可能小,其它所有操作系统服务都放在核外用户级完成,微内核仅提供进程间通信机制;存储管理;有限的低级进程管理和调度;低级I/O;四种服务。,微内核与强内核相比的优点:灵活性。不用重启系统就能激活新的服务。开放性。(系统服务运行在核外用户级上,以服务
20、器的形式建立在内核之上。)可扩充性。(通过增加或改变服务扩充系统功能)微内核技术与客户/服务器模式的结合是网络操作系统、分布式操作系统结构的新形式,Windows NT是这种结合的一个良好范例。,1.4.2 传统的操作系统结构设计模式1.整体式结构设计模式整体式模式是把操作系统组织成一个过程(模块)集合,任一过程可以调用其它过程。系统中每个过程都有一个定义完好的接口,包括入口参数和返回值,过程之间的调用不受任何约束。缺点:扩充这类系统困难,因为修改一个过程可能导致系统若干过程的修改,会产生看起来与系统无关的错误,操作系统的正确性难以保正。2.层次式结构设计模式层次式方法把操作系统划分为若干层,
21、每一层有若干模块。每个模块提供一组可被其它模块调用的功能。在任一特定层次上的代码只能调用较低层次上的代码。层次式结构设计的优点是把模块间的复杂依赖关系转化为单向依赖关系,即高层软件依赖低层软件,而低层软件不依赖高层软件。,1.4.3 现代的操作系统结构设计模式1.客户/服务器模式基本思想:把操作系统划分为若干进程,每个进程实现单独的一套服务(功能)。每一种服务对应一个服务器,每个服务器都运行在用户态,并执行循环,在循环过程中检测是否有客户请求该服务器提供的某种服务。客户可以是一个应用程序,也可以是另一操作系统成分。它通过发送一条消息给服务器请求一项服务。运行在核心态下的操作系统内核把消息传给服
22、务器,由服务器执行具体操作,其结果经由内核用一消息返回给用户。优点:简化了基本操作系统;提高了可靠性;适合分布式计算环境。2.对象模式面向对象的程序设计方法就是把系统中的所有资源如进程、文件、内存块等看成是对象。对象是基本的运行时的实体,包括数据(属性)和作用于数据的操作(行为)。3.对称多处理模式多处理模式支持多处理机操作系统的结构设计。多处理机操作系统的多处理方式可采用对称多处理(SMP)和非对称多处理(ASMP)两种模式。非对称多处理操作系统:一台处理机执行操作系统代码,其它处理机只执行作业。此法也称主从模式。对称多处理操作系统:操作系统在所有处理机上运行,并且共享同一内存。,1.5 术
23、语,作业:用户一次请求计算机系统完成任务所进行的工作总和。作业步:作业步是处理作业的各个独立的子任务,系统可以创建若干进程完成各作业步的计算,所以作业是由若干作业步组成的。作业流:由若干作业组成。在批量处理系统中通常把若干作业依次放在输入设备上,在操作系统控制下将其送入辅存,这样形成了一个作业流,也称输入流。脱机作业:用户不能直接与计算机系统交互,中间通过操作员干预的作业。联机作业:用户与计算机系统直接交互,用户通过终端或控制台键盘上的操作命令或菜单图标等方式控制其作业的运行,这种作业也称为交互型作业或终端型作业。管态:也称核心态,是CPU支持的一种运行状态,系统程序运行在此状态,在此状态下支持专用的机器指令,即特权指令。算态:也称用户态,用户程序运行在此状态,在算态下通过访管指令进入管态。系统调用:通过访管指令或软中断方式中断现行程序,转去执行相应的子程序,完成特定的系统功能。过程调用:调用过程和被调过程都运行在同一系统状态下,可以直接由调用过程转向被调用过程。,