收藏 分销(赏)

四级操作系统原理.doc

上传人:w****g 文档编号:2222885 上传时间:2024-05-23 格式:DOC 页数:8 大小:58.04KB
下载 相关 举报
四级操作系统原理.doc_第1页
第1页 / 共8页
四级操作系统原理.doc_第2页
第2页 / 共8页
四级操作系统原理.doc_第3页
第3页 / 共8页
四级操作系统原理.doc_第4页
第4页 / 共8页
四级操作系统原理.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、(完整版)四级操作系统原理一、 操作系统的概念1、 操作系统功能:进程管理(处理器管理)、存储管理、文件管理、设备管理。2、 操作系统从计算机系统发展角度看,主要作用是提供虚拟机和扩展机;从软件开发角度看,主要作用是提供软件开发平台;从计算机应用角度看,主要作用是提供人机交互接口;从计算机安全保护角度看,主要作用是提供第一道安全防线。3、 典型操作系统:(1)UNIX操作系统:贝尔实验室的Ken和Dennis设计的,可移植、多用户、多任务、分时操作系统。(2)MS DOS系统:微软公司设计的单用户、单任务操作系统。(3)Windows、苹果操作系统都是交互式图形界面操作系统。(4)Linux操

2、作系统:遵从UNIX标准POSIX,开源。(5)Android:面向移动设备,基于Linux内核的开源系统.3、操作系统分类:批处理、分时、实时。(1)批处理操作系统:单道批处理、多道批处理A。基本工作方式:系统操作员在收到一定数量的用户作业后,组成一批作业,再输入到计算机中,这批作业在系统中形成连续、自动转接的作业流。B。特点:成批处理。C.优点:作业流程自动化高,资源利用率高,作业吞吐量大,提高了系统效率。D.缺点:用户不能直接与计算机交互,不适合调试程序。E.作业控制说明书:作业的运行步骤由作业控制说明书传递给监控程序,说明书是由作业控制语言编写的一段程序.F.运行模式:分为用户模式和特

3、权模式,特权模式为系统专用。相应的,机器指令被分为一般指令和特权指令,用户程序只能执行一般指令,运行在用户模式,只有监控程序才能执行特权指令,运行在特权模式。G。多道批处理系统:关键技术是多道程序运行和SPOOLing(假脱机)技术.多道程序运行的基本思想是内存中同时保存多个作业,主机以交替方式同时处理多个作业。SPOOLing技术的基本思想是主机直接从磁盘选取作业运行,通道负责将作业写入磁盘,与主机并行。(2)分时系统A.设计思想:将CPU时间划分成若干时间片,以时间片为单位轮流为每个终端用户服务。B.特点:交互性、及时性。C。通用操作系统结合了分时和批处理的特点,采取分时优先(前台),批处

4、理在后(后台)。(3) 实时操作系统:目标是在严格时间范围内对外部请求作出反应。分为硬实时、软实时。4、 嵌入式系统:高可靠性、实时性、占用资源少、成本低,功能可针对需求进行裁剪。5、 个人计算机操作系统:单用户、多任务、交互式图形界面6、 分布式操作系统:将大量计算机通过网络连在一起,获得极高运算能力和广泛数据分享。系统中所有主机使用同一操作系统,各主机间没有主从关系。优点是以较低成本获得较高运算性能,且可靠性更高.7、 操作系统结构:整体式、层次式、微内核式(客户机/服务器结构,分成内核和进程层)。二、 操作系统运行机制1、 处理器CPU(1) 处理器中的寄存器:分为用户可见寄存器、控制和

5、状态寄存器。用户可见寄存器对所有程序可用,包括数据寄存器、地址寄存器、条件码寄存器.条件码可以被隐式访问,不能显示修改。控制和状态寄存器用于控制处理器的操作,大部分对用户不可见,部分可在特权模式下访问.PC和PSW都是控制和状态寄存器。(2) 特权指令、非特权指令:特权指令是只能由操作系统使用的指令.多道程序设计技术的指令系统必须区分为特权指令和非特权指令.用户程序使用特权指令一般将引起处理器状态切换(切换到管态),并将处理权移交操作系统,这一过程称为陷入.(3) 处理器的状态:分为管态和目态。目态到管态,通过中断或异常;管态到目态,通过设置PSW。(4) 程序状态字PSW:指示处理器状态,属

6、于控制和状态寄存器。标准条件位:进位标志、结果为零标志、符号标志、溢出标志。几乎所有计算机的PSW都有这四位。2、 存储体系(1) 层次结构:存储器速度与容量、成本的矛盾,解决方案是使用层次化存储结构。(2) 提高存储系统性能的关键技术:存储访问局部性原理。(3) 存储保护:要实现存储保护必须要有硬件的支持。常见存储保护技术有:界地址寄存器(界限寄存器)、存储键。界地址寄存器:在CPU中设置一对界限寄存器存放该作业在主存中的下限和上限地址,每当CPU访问主存时,硬件自动将被访问地址与界限寄存器内容进行比较,判断是否越界,当越界时产生程序中断.存储键:一个作业被允许进入主存时,操作系统分给它一个

7、唯一的存储键号,并将分配给该作业的各存储块的存储键设置同样的存储键号。当CPU选择该作业运行时,将作业的存储键存放到PSW中,每当CPU访问主存时都将对主存块的存储键与PSW中的存储键进行比较,若匹配则允许访问。3、 中断与异常机制:中断由外部事件引发,异常由正在执行的指令引发(如被零除、缺页中断、算术溢出).中断系统由硬件中断装置和软件中断处理程序组成。硬件中断装置负责捕获中断源发出的中断请求,并响应中断源.中断服务程序不能作为进程管理。用户态下使用特权指令会引起访管中断。4、 中断过程:(1) 中断请求的接收:中断逻辑线路用于接收中断信号,并将接收到的中断信号寄存在中断寄存器中。(2) 中

8、断响应:处理器的控制部件在每条指令执行周期的最后时刻扫描中断寄存器,查看是否有中断信号到来,若有则接收中断信号,保护现场,将PSW和PC入栈,由中断向量取得中断处理程序入口地址,将PC置为入口地址值。(3) 中断处理、恢复现场。4、 中断屏蔽:PSW中有中断屏蔽位,但是机器故障中断信号不可屏蔽.5、 系统调用:用户在程序中调用操作系统所提供的一些子功能,是操作系统提供给编程人员的唯一接口,属于低级过程,只能由汇编语言直接访问。与一般过程调用的区别是:一般过程调用,其调用程序和被调用程序运行在相同的状态,而系统调用,调用程序运行在用户态,被调用程序工作在系统态。一般过程调用不涉及系统状态的转换,

9、可直接由调用过程转向被动调用过程,而系统调用通常通过软中断机制先由用户态转换为核心态。系统调用也允许嵌套调用。6、 I/O技术:(1) I/O结构:中央处理器定期轮询各个I/O设备控制器的状态。(2) 通道:独立于中央处理器的,专门负责数据I/O传输工作的处理单元,使CPU和外设并行工作。(3) 直接存储器访问DMA:通过系统总线中的一个独立控制单元即DMA控制器,自动控制成块数据在内存和I/O单元间的传送,当传输完成后,会给处理器发一个中断。处理器只需在传输启动和结束关注该部分。但处理器和DMA存在总线竞争.(4) 缓冲技术:解决CPU处理数据速度和设备传输数据速度不匹配的问题.在外设中设置

10、缓冲区,为了提高设备利用率,通常要使用两个以上的缓冲区.7、 时钟:分为硬件时钟(晶振产生脉冲,时钟寄存器根据脉冲计数)和软件时钟(利用内存单元模拟时钟寄存器,采用一段程序来计算脉冲数)。三、 进程线程1、 进程与程序:进程是程序的运行过程,由程序、数据和进程控制块PCB组成。一个进程可以执行一个或多个程序,一个程序也可以构成多个进程.2、 进程的状态:(1) 三状态进程模型:运行状态(已获得CPU,且正在执行。一个处理器同时只能有一个进程处于运行状态)、就绪状态(已具备运行条件,但未获得CPU而不能运行)、阻塞状态(因等待某种事情发生而暂时无法运行)。(2) 五状态进程模型:增加了创建状态(

11、进程在创建过程中,还不能运行)、结束状态(进程已结束)。(3) 七状态进程模型:由于引入进程优先级,所以增加激活(进程从外存转到内存)和挂起(进程从内存转到外存)两种状态切换。从而将就绪状态和阻塞状态分为就绪、就绪挂起(进程在外存,但只要进入内存并获得CPU即可运行)、阻塞、阻塞挂起。3、 进程控制块PCB:系统利用PCB来描述进程的基本情况和进程的运行变化过程,PCB是进程存在的标志.PCB内容分为调度信息(进程名、进程号、优先级等,进程调度时使用)和现场信息(刻画进程的运行情况)。4、 PCB组织方式:线性方式(不分状态组织在一个连续表中)、索引方式(相同状态的进程设置在同一索引表中)、链

12、接方式(具有相同状态的PCB通过PCB中的链接字组成一个队列,链接字指出本队列下一个PCB在PCB表中的编号或地址)。5、 进程控制:通过原语实现,原语通常由若干条指令组成,其执行必须是连续的,不可间断。UNIX操作系统中父进程通过调用fork()函数创建子进程。fork函数执行特点是:调用一次,返回两次。父进程中返回子进程的PID,子进程中返回0,因为子进程的PID总是非零的,可通过返回值区分程序在父进程中还是子进程中。fork进程数计算:1个fork乘1次2。6、 线程:引入线程是为了将进程的两个基本属性(拥有资源的独立单元;可独立调度和分派的基本单元)分开,减少程序并发执行时所付出的时间

13、和空间开销。线程是进程中的一个实体,是CPU调度和分派的基本单位,线程除了一点运行所必须的资源外基本不拥有系统资源,但它可与同一进程的其他线程共享进程所拥有的全部资源。进程间可以并发执行,一个进程的多个线程间也可并发执行。同一进程的多个线程间通信的实现也非常容易。7、 线程实现机制:(1) 用户级线程:不依赖于内核,只存在于用户态中,每个进程有其专用线程表。优点是线程包可以在不支持线程的操作系统上实现.支持该机制的有Linux系统。(2) 内核级线程:依赖内核,每个进程中没有线程表,但内核中保存有线程表和进程表,系统根据它控制线程、进程.支持该机制的有Windows。(3) 混合实现方式:so

14、laris系统。8、 Pthread线程包:pthread_create:创建新线程pthread_exit:结束调用的线程pthread_join:等待特定线程退出pthread_yield:释放CPU以运行另外一个线程pthread_attr_init:创建并初始化一个线程的属性结构pthread_attr_destroy:删除一个线程的属性结构pthread_mutex_init:创建一个互斥变量。9、 进程(线程)调用:(1) 通常分为三类环境:批处理、交互式、实时系统。(2) 调度算法设计目标:批处理:大吞吐量、短周转时间、高CPU利用率。交互式:最小响应时间、性能均衡。实时:满足截

15、止时间要求和可靠性要求。(3) 进程调度算法:先来先服务(非抢占式)、最短作业时间优先(非抢占式)、最短剩余时间优先(抢占式)、时间片轮转法、最高优先级优先(分为可抢占式和不可抢占式)、多级反馈队列算法(综合了先来先服务、轮转法、可抢占式最高优先级算法)、最短进程优先(最短进程意味着最短的响应时间)、高响应比优先。A. 批处理系统可采用:先来先服务、高响应比优先、高优先级优先。B. 交互式系统可采用:多级反馈队列、时间片轮转、高优先级优先、最短进程优先.四、 并发与同步1、 进程同步是指多个进程中发生的事件存在某种时序关系,相互配合以完成一个任务。进程互斥是指由于共享资源所要求的排他性,进程间

16、要相互竞争,以使用互斥资源.2、 进程互斥的实现:A.竞争各方平等协商;B.引入进程管理者。3、 临界资源:需要互斥使用的硬件或软件资源.临界资源的访问过程分为:进入区(检查可否进入临界区,如果可以则需设置相应标志以阻止其他进程同时进入临界区),临界区(进程中访问临界资源的一段代码),退出区(清除进入临界区时设置的标志),剩余区(代码中的其他部分).4、 基于进程间平等协商的互斥算法:(1) 软件方法:peterson算法(2) 硬件方法:TS(Test&Set)指令,每个临界资源设置一个公共布尔变量lock,真表示被占用,假表示空闲。在进入区检查lock,有其他进程在临界区时重复检查,直到其

17、他进程退出时检查通过。Swap指令(或exchange指令),每个临界资源设置一个公共布尔变量lock,每个进程设置一个私有布尔变量key。在进入区利用swap指令交换lock和key的内容,然后检查key的状态。(3) 硬件方法的优点:适用范围广,简单,支持多个临界区.缺点:不支持让权等待,可能导致饥饿。5、 引入进程管理者方法:信号量。信号量代表可用资源实体的数量,只能通过初始化和P、V两个原句来访问。每个信号量有一个计数值和一个进程等待队列。若信号量为非负数值时(初始化会指定一个非负数),表示当前空闲资源数,若为负数,其绝对值表示当前等待临界区的进程数。P原句相当于进入区操作,V原句相当

18、于退出区操作。P原句:wait(s) s。count;/表示申请一个资源if(s。count 破坏请求和保持;设置单行道破坏环路等待。6、 避免死锁:(1) 安全状态:如果系统能保证所有的进程在有限时间内得到所需的全部资源,即存在一个由所有进程构成的安全序列,则称系统处于安全状态,此时一定不会发生死锁。若不存在任何一个安全系列,则处于不安全状态,一定会导致死锁。(2) 银行家算法:进程首先提出对资源的最大需求量,当进程每次申请资源时,系统检测进程已有的资源和申请资源之和是否超过最大需求量,若超过则拒绝分配,若没有则再检测系统现存资源能否满足进程尚需的最大资源,若能则分配,若不能则推迟分配。7、

19、 死锁检测:设置资源分配状态表、进程等待分配表.当任一进程申请一个已被其他进程占用的资源时,进行死锁检测,通过查找两表确定是否形成请求环路.死锁检测的实质是确定是否存在环路等待,若是则说明出现死锁。8、 死锁解除:需要防止出现饥饿。(1) 剥夺资源:使用挂起/激活机制,挂起一些进程,剥夺其资源给死锁进程,之后再激活挂起的进程.(2) 撤销进程:采取逐个撤销或全部撤销的方式,撤销死锁进程,释放资源给其他死锁进程,直到死锁解除。(3) 重启系统。9、 资源分配图:进程用圆圈表示,某类资源用方框表示,方框中的圆点表示各个资源实例。进程指向资源的箭头是申请边,表示进程申请一个资源,但该进程正在等待资源

20、.资源指向进程的箭头是分配边,表示一个资源实例分配给该进程。申请边仅指向资源方框,表示申请时不指定该类中的哪一个资源实例。而分配边必须由方框中的圆点引出,表示该类中的哪一个资源实例已被占用。如果申请请求可以满足,则申请边会立即变为分配边。如果进程释放了某个资源实例,则删除该分配边。10、 资源分配图的化简:若一个进程的所有资源请求都能被满足,则可设想该进程得到所需全部资源,完成任务,释放所占有的全部资源。如果一个资源分配图完全不可化简,则说明处于死锁状态。11、 死锁定理:判定死锁的法则。如果资源分配图没有出现环路,那么没有死锁。如果资源分配图出现环路,那么有可能出现死锁,这种情况下,若环路中每个资源类均只含一个资源实例,则出现死锁;若环路中每个资源类不全为1,则不一定产生死锁(注意不是不产生)。

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 考试专区 > 中考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服