收藏 分销(赏)

四级操作系统原理.doc

上传人:w****g 文档编号:2222885 上传时间:2024-05-23 格式:DOC 页数:8 大小:58.04KB 下载积分:6 金币
下载 相关
四级操作系统原理.doc_第1页
第1页 / 共8页
四级操作系统原理.doc_第2页
第2页 / 共8页


点击查看更多>>
资源描述
(完整版)四级操作系统原理 一、 操作系统的概念 1、 操作系统功能:进程管理(处理器管理)、存储管理、文件管理、设备管理。 2、 操作系统从计算机系统发展角度看,主要作用是提供虚拟机和扩展机;从软件开发角度看,主要作用是提供软件开发平台;从计算机应用角度看,主要作用是提供人机交互接口;从计算机安全保护角度看,主要作用是提供第一道安全防线。 3、 典型操作系统: (1)UNIX操作系统:贝尔实验室的Ken和Dennis设计的,可移植、多用户、多任务、分时操作系统。 (2)MS DOS系统:微软公司设计的单用户、单任务操作系统。 (3)Windows、苹果操作系统都是交互式图形界面操作系统。 (4)Linux操作系统:遵从UNIX标准POSIX,开源。 (5)Android:面向移动设备,基于Linux内核的开源系统. 3、操作系统分类:批处理、分时、实时。 (1)批处理操作系统:单道批处理、多道批处理 A。基本工作方式:系统操作员在收到一定数量的用户作业后,组成一批作业,再输入到计算机中,这批作业在系统中形成连续、自动转接的作业流。 B。特点:成批处理。 C.优点:作业流程自动化高,资源利用率高,作业吞吐量大,提高了系统效率。 D.缺点:用户不能直接与计算机交互,不适合调试程序。 E.作业控制说明书:作业的运行步骤由作业控制说明书传递给监控程序,说明书是由作业控制语言编写的一段程序. F.运行模式:分为用户模式和特权模式,特权模式为系统专用。相应的,机器指令被分为一般指令和特权指令,用户程序只能执行一般指令,运行在用户模式,只有监控程序才能执行特权指令,运行在特权模式。 G。多道批处理系统:关键技术是多道程序运行和SPOOLing(假脱机)技术.多道程序运行的基本思想是内存中同时保存多个作业,主机以交替方式同时处理多个作业。SPOOLing技术的基本思想是主机直接从磁盘选取作业运行,通道负责将作业写入磁盘,与主机并行。 (2)分时系统 A.设计思想:将CPU时间划分成若干时间片,以时间片为单位轮流为每个终端用户服务。 B.特点:交互性、及时性。 C。通用操作系统结合了分时和批处理的特点,采取分时优先(前台),批处理在后(后台)。 (3) 实时操作系统:目标是在严格时间范围内对外部请求作出反应。分为硬实时、软实时。 4、 嵌入式系统:高可靠性、实时性、占用资源少、成本低,功能可针对需求进行裁剪。 5、 个人计算机操作系统:单用户、多任务、交互式图形界面 6、 分布式操作系统:将大量计算机通过网络连在一起,获得极高运算能力和广泛数据分享。系统中所有主机使用同一操作系统,各主机间没有主从关系。优点是以较低成本获得较高运算性能,且可靠性更高. 7、 操作系统结构:整体式、层次式、微内核式(客户机/服务器结构,分成内核和进程层)。 二、 操作系统运行机制 1、 处理器CPU (1) 处理器中的寄存器:分为用户可见寄存器、控制和状态寄存器。用户可见寄存器对所有程序可用,包括数据寄存器、地址寄存器、条件码寄存器.条件码可以被隐式访问,不能显示修改。控制和状态寄存器用于控制处理器的操作,大部分对用户不可见,部分可在特权模式下访问.PC和PSW都是控制和状态寄存器。 (2) 特权指令、非特权指令:特权指令是只能由操作系统使用的指令.多道程序设计技术的指令系统必须区分为特权指令和非特权指令.用户程序使用特权指令一般将引起处理器状态切换(切换到管态),并将处理权移交操作系统,这一过程称为陷入. (3) 处理器的状态:分为管态和目态。目态到管态,通过中断或异常;管态到目态,通过设置PSW。 (4) 程序状态字PSW:指示处理器状态,属于控制和状态寄存器。标准条件位:进位标志、结果为零标志、符号标志、溢出标志。几乎所有计算机的PSW都有这四位。 2、 存储体系 (1) 层次结构:存储器速度与容量、成本的矛盾,解决方案是使用层次化存储结构。 (2) 提高存储系统性能的关键技术:存储访问局部性原理。 (3) 存储保护:要实现存储保护必须要有硬件的支持。常见存储保护技术有:界地址寄存器(界限寄存器)、存储键。界地址寄存器:在CPU中设置一对界限寄存器存放该作业在主存中的下限和上限地址,每当CPU访问主存时,硬件自动将被访问地址与界限寄存器内容进行比较,判断是否越界,当越界时产生程序中断.存储键:一个作业被允许进入主存时,操作系统分给它一个唯一的存储键号,并将分配给该作业的各存储块的存储键设置同样的存储键号。当CPU选择该作业运行时,将作业的存储键存放到PSW中,每当CPU访问主存时都将对主存块的存储键与PSW中的存储键进行比较,若匹配则允许访问。 3、 中断与异常机制:中断由外部事件引发,异常由正在执行的指令引发(如被零除、缺页中断、算术溢出).中断系统由硬件中断装置和软件中断处理程序组成。硬件中断装置负责捕获中断源发出的中断请求,并响应中断源.中断服务程序不能作为进程管理。用户态下使用特权指令会引起访管中断。 4、 中断过程: (1) 中断请求的接收:中断逻辑线路用于接收中断信号,并将接收到的中断信号寄存在中断寄存器中。 (2) 中断响应:处理器的控制部件在每条指令执行周期的最后时刻扫描中断寄存器,查看是否有中断信号到来,若有则接收中断信号,保护现场,将PSW和PC入栈,由中断向量取得中断处理程序入口地址,将PC置为入口地址值。 (3) 中断处理、恢复现场。 4、 中断屏蔽:PSW中有中断屏蔽位,但是机器故障中断信号不可屏蔽. 5、 系统调用:用户在程序中调用操作系统所提供的一些子功能,是操作系统提供给编程人员的唯一接口,属于低级过程,只能由汇编语言直接访问。与一般过程调用的区别是:一般过程调用,其调用程序和被调用程序运行在相同的状态,而系统调用,调用程序运行在用户态,被调用程序工作在系统态。一般过程调用不涉及系统状态的转换,可直接由调用过程转向被动调用过程,而系统调用通常通过软中断机制先由用户态转换为核心态。系统调用也允许嵌套调用。 6、 I/O技术: (1) I/O结构:中央处理器定期轮询各个I/O设备控制器的状态。 (2) 通道:独立于中央处理器的,专门负责数据I/O传输工作的处理单元,使CPU和外设并行工作。 (3) 直接存储器访问DMA:通过系统总线中的一个独立控制单元即DMA控制器,自动控制成块数据在内存和I/O单元间的传送,当传输完成后,会给处理器发一个中断。处理器只需在传输启动和结束关注该部分。但处理器和DMA存在总线竞争. (4) 缓冲技术:解决CPU处理数据速度和设备传输数据速度不匹配的问题.在外设中设置缓冲区,为了提高设备利用率,通常要使用两个以上的缓冲区. 7、 时钟:分为硬件时钟(晶振产生脉冲,时钟寄存器根据脉冲计数)和软件时钟(利用内存单元模拟时钟寄存器,采用一段程序来计算脉冲数)。 三、 进程线程 1、 进程与程序:进程是程序的运行过程,由程序、数据和进程控制块PCB组成。一个进程可以执行一个或多个程序,一个程序也可以构成多个进程. 2、 进程的状态: (1) 三状态进程模型:运行状态(已获得CPU,且正在执行。一个处理器同时只能有一个进程处于运行状态)、就绪状态(已具备运行条件,但未获得CPU而不能运行)、阻塞状态(因等待某种事情发生而暂时无法运行)。 (2) 五状态进程模型:增加了创建状态(进程在创建过程中,还不能运行)、结束状态(进程已结束)。 (3) 七状态进程模型:由于引入进程优先级,所以增加激活(进程从外存转到内存)和挂起(进程从内存转到外存)两种状态切换。从而将就绪状态和阻塞状态分为就绪、就绪挂起(进程在外存,但只要进入内存并获得CPU即可运行)、阻塞、阻塞挂起。 3、 进程控制块PCB:系统利用PCB来描述进程的基本情况和进程的运行变化过程,PCB是进程存在的标志.PCB内容分为调度信息(进程名、进程号、优先级等,进程调度时使用)和现场信息(刻画进程的运行情况)。 4、 PCB组织方式:线性方式(不分状态组织在一个连续表中)、索引方式(相同状态的进程设置在同一索引表中)、链接方式(具有相同状态的PCB通过PCB中的链接字组成一个队列,链接字指出本队列下一个PCB在PCB表中的编号或地址)。 5、 进程控制:通过原语实现,原语通常由若干条指令组成,其执行必须是连续的,不可间断。UNIX操作系统中父进程通过调用fork()函数创建子进程。fork函数执行特点是:调用一次,返回两次。父进程中返回子进程的PID,子进程中返回0,因为子进程的PID总是非零的,可通过返回值区分程序在父进程中还是子进程中。fork进程数计算:1个fork乘1次2。 6、 线程:引入线程是为了将进程的两个基本属性(拥有资源的独立单元;可独立调度和分派的基本单元)分开,减少程序并发执行时所付出的时间和空间开销。线程是进程中的一个实体,是CPU调度和分派的基本单位,线程除了一点运行所必须的资源外基本不拥有系统资源,但它可与同一进程的其他线程共享进程所拥有的全部资源。进程间可以并发执行,一个进程的多个线程间也可并发执行。同一进程的多个线程间通信的实现也非常容易。 7、 线程实现机制: (1) 用户级线程:不依赖于内核,只存在于用户态中,每个进程有其专用线程表。优点是线程包可以在不支持线程的操作系统上实现.支持该机制的有Linux系统。 (2) 内核级线程:依赖内核,每个进程中没有线程表,但内核中保存有线程表和进程表,系统根据它控制线程、进程.支持该机制的有Windows。 (3) 混合实现方式:solaris系统。 8、 Pthread线程包: pthread_create:创建新线程 pthread_exit:结束调用的线程 pthread_join:等待特定线程退出 pthread_yield:释放CPU以运行另外一个线程 pthread_attr_init:创建并初始化一个线程的属性结构 pthread_attr_destroy:删除一个线程的属性结构 pthread_mutex_init:创建一个互斥变量。 9、 进程(线程)调用: (1) 通常分为三类环境:批处理、交互式、实时系统。 (2) 调度算法设计目标:批处理:大吞吐量、短周转时间、高CPU利用率。交互式:最小响应时间、性能均衡。实时:满足截止时间要求和可靠性要求。 (3) 进程调度算法:先来先服务(非抢占式)、最短作业时间优先(非抢占式)、最短剩余时间优先(抢占式)、时间片轮转法、最高优先级优先(分为可抢占式和不可抢占式)、多级反馈队列算法(综合了先来先服务、轮转法、可抢占式最高优先级算法)、最短进程优先(最短进程意味着最短的响应时间)、高响应比优先。 A. 批处理系统可采用:先来先服务、高响应比优先、高优先级优先。 B. 交互式系统可采用:多级反馈队列、时间片轮转、高优先级优先、最短进程优先. 四、 并发与同步 1、 进程同步是指多个进程中发生的事件存在某种时序关系,相互配合以完成一个任务。进程互斥是指由于共享资源所要求的排他性,进程间要相互竞争,以使用互斥资源. 2、 进程互斥的实现:A.竞争各方平等协商;B.引入进程管理者。 3、 临界资源:需要互斥使用的硬件或软件资源.临界资源的访问过程分为:进入区(检查可否进入临界区,如果可以则需设置相应标志以阻止其他进程同时进入临界区),临界区(进程中访问临界资源的一段代码),退出区(清除进入临界区时设置的标志),剩余区(代码中的其他部分). 4、 基于进程间平等协商的互斥算法: (1) 软件方法:peterson算法 (2) 硬件方法:TS(Test&Set)指令,每个临界资源设置一个公共布尔变量lock,真表示被占用,假表示空闲。在进入区检查lock,有其他进程在临界区时重复检查,直到其他进程退出时检查通过。Swap指令(或exchange指令),每个临界资源设置一个公共布尔变量lock,每个进程设置一个私有布尔变量key。在进入区利用swap指令交换lock和key的内容,然后检查key的状态。 (3) 硬件方法的优点:适用范围广,简单,支持多个临界区.缺点:不支持让权等待,可能导致饥饿。 5、 引入进程管理者方法:信号量。信号量代表可用资源实体的数量,只能通过初始化和P、V两个原句来访问。每个信号量有一个计数值和一个进程等待队列。若信号量为非负数值时(初始化会指定一个非负数),表示当前空闲资源数,若为负数,其绝对值表示当前等待临界区的进程数。P原句相当于进入区操作,V原句相当于退出区操作。 P原句: wait(s) { —— s。count; //表示申请一个资源 if(s。count < 0) //表示没有空闲资源 { 调用进程进入等待队列s。queue 阻塞调用线程 } } V原句: signal(s) { ++ s.count; //表示释放一个资源 if(s。count 〈= 0) //表示有进程处于阻塞状态 { 从等待队列s.queue中取出第一个进程P 进程P进入就绪队列 } } 每个进程的临界代码要放在PV原句间。遗漏P原句则无法保证互斥访问,遗漏V原句则无法在使用完临界资源后释放给等待的其他进程。 6、 使用信号量实现进程同步:前趋关系。在互斥信号量和同步信号量都存在的情况,应先执行同步信号量的P原句,再执行互斥信号量的P原句. 7、 管程:为了提高代码可读性而引入的高级同步原句。由管程名称、共享数据、共享数据的初始化语句、对数据进行操作的一组过程四部分组成,管程内的数据只能被管程内的过程访问。管程的重要特性是任一时刻管程内只能有一个活动进程,使得管程能保证共享资源的互斥执行。 8、 进程通信: (1) 消息缓冲通信包含消息缓冲区、消息队列首地址、同步互斥信号量、收发消息原句。 (2) 信箱通信:优点是可以异步收发信件,无时间限制。send原句要指定信箱名,信件。receive原句要指定信箱名,信件保存地址。 五、 内存管理 1、 存储器由内存和外存组成,内存存放正在运行程序的代码及数据,处理器可以直接访问内存,但不能直接访问外存.内存一般分为系统区(存放操作系统常驻内存部分)和用户区。为了对内存进行管理,需要把内存分成若干区域。 2、 存储管理的主要任务: (1) 内存分配和回收:需要用到内存分配表。内存分配分为静态分配(在程序运行前一次性完成,运行过程中不许再申请或搬移)和动态分配(在程序运行前及运行过程中逐步完成,允许再申请和搬移). (2) 存储共享:优点是节省空间和便于实现进程间通信。 (3) 存储保护:硬件保护为主,软件为辅。 (4) 扩充内存容量。 3、 地址转换:用户程序使用的是逻辑地址,存储器实际使用的是绝对地址,需要进行重定位将逻辑地址转换成绝对地址。分为静态重定位和动态重定位。 (1) 静态重定位:在程序运行前,将程序中所有逻辑地址全部转换成绝对地址,程序执行过程中不再进行地址转换,因而不支持程序浮动。 (2) 动态重定位:在程序执行时动态完成地址转换,支持程序浮动. 4、 内存管理方案:单一用户管理、分区管理、页式管理、段式管理、段页式管理。 5、单一用户存储管理方案:同一时间只有一个用户进程处于内存中,无需记录使用情况. 6、分区管理:将内存分成若干连续区域,每个分区装入一个程序。 (1)固定分区:系统预先划分若干大小固定的分区,系统运行期间不再重新划分,但各分区大小可不同。缺点是灵活性差,内存空间利用率低. (2)可变分区:不预先划分固定分区,而是在装入程序时划分分区,使分区大小正好等于程序需求量,此外分区的个数可变.缺点:是随着分配和回收次数增加,会导致碎片生成。解决办法是碎片整理(移动技术).移动技术可以提高内存利用率,但是会增加系统开销,且不是所有内存中的作业都可以随时移动,所以移动时应尽量减小需要移动的作业数和信息量。空闲分区分配策略:最先适应(第一个满足申请长度的)、最优适应(满足申请长度的最小空闲区,优点是尽量不分割大空间,缺点是会形成许多小碎片)、最坏适应(满足申请长度的最大空闲区,优点是避免形成碎片,缺点是分割了大空间,可能出现大程序无法申请的情况)、下次适应算法(从上次分配的位置开始扫描,选择下一个可用的空闲区)。分区回收:首先检查是否有相邻区,若有直接合并,通过修改内存分配表,若无则直接登记。 (3)分区保护:A。使用界限寄存器保存上、下界限或者基址和长度。B。使用保护键,进程需要和分区保护键相匹配才可访问分区。 (4)分区管理缺点:采取的是静态分配,连续分配。无法扩充内存。 7、覆盖和交换技术:导致虚拟存储技术的出现 (1)覆盖技术:将程序划分成若干功能上相互独立的程序段,让不会同时运行的程序段共享同一内存区域.前一程序段执行结束后,直接将后续程序段调入内存并覆盖前一程序段。 (2)交换技术:操作系统控制进程在内存和外存间动态调度。 (3)区别:A。覆盖完全由用户实现,用户需提供清楚的覆盖结构,对用户不透明,主要用于系统程序内存管理;交换由操作系统完成,对用户透明。B。覆盖发生在同一进程内;交换发生在不同进程间。 8、页式管理:将程序分散存放到几个不连续的内存区域。静态分配。 (1)基本思想:将内存分成大小相等的许多块,程序的逻辑地址也进行分页,页大小和块大小一致。逻辑地址由页号和页内地址组成。分配时以页为单位。内存分配表需指出已分配、未分配、剩余空闲块数。 (2)地址转换:每个进程在被装入内存时会被提供一个页表,页表所在内存的起始地址和长度会作为现场信息保存在进程控制块中。页表保存了该进程逻辑地址中的页号与页框号(页面对应的内存块号)映射关系。物理地址=块号*块长+页内地址。 (3)多级页表:存放页表的页面叫页表页,页表页可以不连续存放,因而需要页目录对页面页的地址进行索引。二级页表采取页目录和页表页构成进程页表。页表页和页目录都保存在内存中。 (4)快表:使用高速缓冲存储器存放当前访问最频繁的少数页面的页号,利用存储访问局部性原理.这个高速缓冲存储器称为快表。查找快表和内存中的页表是并行的,一旦发现所查页号一致,则停止查找页表,直接查找快表。使用快表后的有效时间计算。 9、虚拟存储技术:与交换技术的区别是,交换以进程为单位,虚拟存储技术以页或段为单位,可将运行程序的一部分交换到外存中. 10、虚拟页式管理:动态分配。 (1)基本思想:在程序开始运行时并不装入全部页,而是根据运行需要动态装入。在页式管理基础上,在页表增加了页号、页框号、有效位(驻留位、中断位;表示该页位于内存还是外存)、访问位(引用位、参考位)、修改位、保护位、禁止缓存位。访问位和修改位决定替换哪个页。 (2)缺页中断:发现要访问的页面不在内存时产生缺页中断,此时若有空闲页则直接调入,若无空闲页,则将内存中一个页面调出,若该页面已修改,则写回并覆盖外存中的副本,若未修改则无需写回。 (3)置换算法: A。先进先出FIFO B。最近最少使用LRU:置换最长不被使用。 C.最近最不常用LFU:置换一段时间内使用次数最少的。 D。理想置换OPT:置换最长时间后才会用到的页面. (4) 缺页中断率:缺页中断次数 除以 访问页面总次数。分到一半页面数的内存空间时效率最高;页面越大,页面数越少,中断率越低。 11、 段式管理:内存空间不预先划分固定块,而是在装入程序时划分可不等长的物理段。程序按逻辑上有完整意义的段划分为逻辑段.逻辑地址由段号和段内地址组成.每个逻辑段分配一个连续内存区,段间可以不连续。程序装入内存时被提供段表,记录逻辑段与物理段的对应关系,段表包括逻辑段号、物理段起始位置、物理段长度. 12、 段页式:物理分页,逻辑分段,内存以页为单位分配。 六、 文件管理 1、 文件分类:按用途分为系统文件(不可读写、修改)、库函数文件(可读、执行,不可修改)、用户文件。按组织类型分为:普通文件、目录文件(含有文件目录的文件)、特殊文件(如输入输出设备)。 2、 文件逻辑结构:用户看到的文件组织形式。分成字符流式、定长记录式、不定长记录式。流式无结构,基本单位是字符。记录式基本单位是记录,定长记录式由记录号和长度可直接确定逻辑地址;不定长记录式必须从第一个记录查找起,直到所需记录。 3、 文件物理结构:在物理存储介质上存储的组织形式。 (1) 连续结构:将逻辑上连续的文件信息连续存储在物理块中。优点:顺序存取速度快,支持随机存取.缺点:文件不能动态扩充(因为后续物理块可能被分配给其他文件),且会形成碎片。 (2) 链接结构:文件信息分散存储在不连续物理块,每个物理块设置指向下一物理块的指针,文件控制块中保存文件的首指针。优点:不存在碎片,且支持文件动态扩充。缺点:存取速度慢,不适于随机存取,可靠性低。 (3) 索引结构:使用索引表保存文件各物理块的地址。优点:既适于顺序存取,又适于随机存取,且不产生碎片,支持文件动态扩充。缺点:索引表本身占据空间,增加寻道次数和寻道时间。当索引表较大时,需要采取多级索引,但会降低存取速度。UNIX系统的I节点就是多级索引文件结构. 4、 存储介质 (1) 顺序存取设备:磁带,只能采取连续结构的文件物理结构和顺序存取的存取方式。 (2) 随机存取设备:磁盘,一般由若干磁盘片组成,正反两面都可使用,每个盘片对应一对磁头.盘面划分同心圆作为存储介质,称为磁道。磁道分为若干段,称为扇区。所有盘片上的相同磁道称为柱面。整个磁盘上的所有扇区统一编号。访问磁盘时,首先移动磁头臂到相应柱面,再旋转盘片将磁头定位在指定扇区,最后磁头存取数据.一次访问磁盘的时间由寻道时间、旋转定位时间和数据传输时间组成,其中寻道时间最长,所以访问同一柱面的数据可以节省时间。 5、 文件存取方式:既取决于使用文件的方式,也取决于存储介质.分为顺序存取和随机存取. 6、 文件目录:每个文件都设置有文件控制块,文件控制块记录了系统管理文件所需的所有信息,包括文件名、文件号、用户名、物理结构、逻辑结构、物理位置(链接式保存首地址,索引式保存索引表地址)。将所有文件的文件控制块组织起来的就是文件目录.文件目录实际就是文件符号名到文件物理地址的映射机制。文件目录以文件形式保存,称为目录文件,是固定长度的记录式文件. 7、 文件目录结构 (1) 一级目录:同名文件视为同一文件。搜索效率低. (2) 二级目录:按用户名分子目录。优点是:解决了多用户下文件重名问题,提高了搜索效率,且可以实现文件共享。 (3) 树形目录/多级目录:优点:层次清晰,便于管理;搜索速度快.大多数操作系统使用。 8、 路径名:访问文件需要进行目录检索,分为全路径检索(从根目录开始)和相对路径(从当前目录开始)。 9、 加快目录检索可以采用目录项分解法,将目录项分为符号目录项和基本目录项.符号目录项包含文件名和文件号。目录文件占用盘数为N,则查找某一目录项的平均访盘次数为(1+N)/2。优点:减少访盘次数,提高检索速度. 10、 记录的成组和分解: (1) 成组:将若干个逻辑记录合成一组存放在一个物理块,称为成组。每块的逻辑记录个数称为块因子. (2) 分解:请求读文件的某个记录时,首先将含有该记录的物理块的全部信息读入内存缓冲区,再分解出所求记录。 (3) 成组和分解都需要使用缓冲区. 11、 文件操作 (1) 创建文件:分配文件控制块,分配存储空间,检查命名合法性.需要指定文件名、权限、长度. (2) 打开文件:即将文件控制块送到内存。需要指定文件路径名和打开方式。返回文件名描述符,非负整数,用于以后读写文件. 12、 UNIX文件存取权限:文件拥有者、文件拥有者同组用户、其他用户。R、W、X、--。系统内部使用数值表示,设置了该位权限,则该位为1。 13、 提高文件系统的性能可以采取:块高速缓存、磁盘空间合理分配、优化磁盘调度算法、目录项分解。 14、 Windows的FAT文件系统:FAT(文件分配表),版本号取决于用多少二进制位表示磁盘地址(簇号)。文件分配表FAT位于卷的开头,且通常保存两份。文件分配表和根目录必须存放在磁盘固定位置。FAT系统采取链接式文件物理结构。只支持8个字符文件名。 15、 UNIX的V7文件系统:文件物理结构采取三级索引。 七、 I/O设备管理 1、设置设备管理的目的是建立一个通用的设备访问接口,方便用户和开发人员使用。 2、设备管理的主要任务:缓冲区管理、设备分配(通过接口技术提供一致的系统调用、通过协调技术避免设备冲突)、设备处理、虚拟设备(提高独占设备利用率)及实现设备独立性。 3、设计I/O软件的关键目标是实现设备独立性,不依赖于硬件。I/O软件一般分为四层:中断处理层、设备驱动层、与设备无关的操作系统软件(设备独立层)、用户软件。 4、I/O设备数据传输控制方式: (1)程序直接控制方式:CPU轮询方式 (2)中断控制方式:省去CPU轮询等待过程,但数据交换仍需CPU处理。 (3)直接内存访问DMA:完全由硬件执行I/O数据交换,数据交换不经过CPU,而直接在内存和I/O设备间进行.以中断方式向CPU报告传送操作的结束。省去CPU处理数据交换的时间,但在DMA初始化和结束时仍由CPU控制。 (4)通道控制方式:通道是一个特殊功能处理器。通道方式增加了CPU和通道操作的并行能力,增加了通道间、同一通道各设备间的并行操作能力。 5、缓冲技术:为了解决处理器和外设的速度不匹配,设置多个缓冲存储区。 6、设备分配技术:设备、控制器、通道等资源是有限的,需要设备管理程序按一定的分配算法给进程分配必要的资源。分配算法常采用的数据结构主要有:系统设备表(整个系统只有一张,记录系统中所有外设的情况)、设备控制表(每台设备有一张,记录设备特征和与设备相连的设备控制器的情况)、控制器控制器(每个控制器有一张,记录控制器分配情况和与之相连的通道的情况)、通道控制表(每个通道有一张,反映通道情况). 八、 死锁 1、基本概念: (1)死锁:多道程序系统中,一组进程的每一个进程都无期限地等待组中另一进程所占用且永远不会释放的资源。所有死锁进程都在等待资源,进入阻塞状态。 (2)活锁:进程不阻塞,一直在改变状态,可调度,但一直无进展。活锁可能自行解开. (3)饥饿:采用最短时间优先的算法容易引发饥饿,导致优先级低的进程虽未阻塞,但调度被无期限推后。可通过先来先服务资源分配策略避免。 2、死锁产生原因:一是资源分配不当;二是进程推进顺序不合理。 3、(永久性资源)死锁产生的必要条件:互斥、不可剥夺、请求和保持、环路(循环)等待。 4、解决死锁的方法:A.鸵鸟算法,考虑死锁的危害和解决死锁花费的代价哪个更重要后,选择忽视死锁;B。解决死锁:预防、避免、检查和解除。预防和避免的区别:预防破坏必要条件,严格防止死锁出现.而避免并未破坏必要条件,但使用动态检查分配策略。 5、预防死锁:破坏死锁产生的必要条件.但会导致资源利用率低。 (1)破坏互斥条件:使用虚拟设备,如假脱机SPOOLing技术。 (2)破坏不可剥夺条件:适用于状态易保存和恢复的资源,如CPU和内存。 (3)破坏请求和保持条件:静态分配(申请到所需全部资源才开始执行)、动态分配(先归还再申请,即没有占用资源才能申请)。 (4)破坏环路等待:采用资源有序分配策略,对所有资源顺序编号,申请资源时必须严格按照资源编号的顺序申请。为提高资源利用率,应采取大多数进程使用资源次序对资源编号。 常考交叉路口:设置立交桥—〉破坏互斥;设置红绿灯->破坏请求和保持;设置单行道—>破坏环路等待。 6、 避免死锁: (1) 安全状态:如果系统能保证所有的进程在有限时间内得到所需的全部资源,即存在一个由所有进程构成的安全序列,则称系统处于安全状态,此时一定不会发生死锁。若不存在任何一个安全系列,则处于不安全状态,一定会导致死锁。 (2) 银行家算法:进程首先提出对资源的最大需求量,当进程每次申请资源时,系统检测进程已有的资源和申请资源之和是否超过最大需求量,若超过则拒绝分配,若没有则再检测系统现存资源能否满足进程尚需的最大资源,若能则分配,若不能则推迟分配。 7、 死锁检测:设置资源分配状态表、进程等待分配表.当任一进程申请一个已被其他进程占用的资源时,进行死锁检测,通过查找两表确定是否形成请求环路.死锁检测的实质是确定是否存在环路等待,若是则说明出现死锁。 8、 死锁解除:需要防止出现饥饿。 (1) 剥夺资源:使用挂起/激活机制,挂起一些进程,剥夺其资源给死锁进程,之后再激活挂起的进程. (2) 撤销进程:采取逐个撤销或全部撤销的方式,撤销死锁进程,释放资源给其他死锁进程,直到死锁解除。 (3) 重启系统。 9、 资源分配图:进程用圆圈表示,某类资源用方框表示,方框中的圆点表示各个资源实例。进程指向资源的箭头是申请边,表示进程申请一个资源,但该进程正在等待资源.资源指向进程的箭头是分配边,表示一个资源实例分配给该进程。申请边仅指向资源方框,表示申请时不指定该类中的哪一个资源实例。而分配边必须由方框中的圆点引出,表示该类中的哪一个资源实例已被占用。如果申请请求可以满足,则申请边会立即变为分配边。如果进程释放了某个资源实例,则删除该分配边。 10、 资源分配图的化简:若一个进程的所有资源请求都能被满足,则可设想该进程得到所需全部资源,完成任务,释放所占有的全部资源。如果一个资源分配图完全不可化简,则说明处于死锁状态。 11、 死锁定理:判定死锁的法则。如果资源分配图没有出现环路,那么没有死锁。如果资源分配图出现环路,那么有可能出现死锁,这种情况下,若环路中每个资源类均只含一个资源实例,则出现死锁;若环路中每个资源类不全为1,则不一定产生死锁(注意不是不产生)。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

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

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

关于我们      便捷服务       自信AI       AI导航        抽奖活动

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

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

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

关注我们 :微信公众号    抖音    微博    LOFTER 

客服