《计算机操作系统第四版期末复习知识点汇总附习题.pdf》由会员分享,可在线阅读,更多相关《计算机操作系统第四版期末复习知识点汇总附习题.pdf(81页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第一章引论为什么发明计算机系统:方便、有效、可扩充、开放计算机系统作用:做接口、管理资源、资源的抽象发展计算机系统的动力:提高利用率、更加方便、应用.体系.硬件更新都要跟上计算机系统发展史一、无操作系统(-)人工操作:单用户、CPU.内存长期空闲(二)脱机输入/输 出(OFF-LINE I/O):装好卡片再上机。节 约 CPU空闲时间、提高I/O速度二、单道批操作系统描 述:有个监督程序将磁带上的作业调入计算机缺 点:I/O太 慢,CPU太快三、多道批操作系统描 述:A 在 I/O,B趁 机 CPU优 点:肯定提高资源利用率、系统吞吐量变大缺 点:每个程序都要很久才处理完(作业要排队)、无交互
2、能力未解难题:内存、处理机争用、I/O设备、文件的组织和管理、作业管理、用户和系统的接口四、分时系统描 述:解决人机交互问题优 点:终于有人机交互、多用户共享主机实际问题:由于多用户,所以要有 多路卡、作业直接入内存、有 个“时间片 调度作业特 征:多路、独立、及 时(用户可接受)、交互五、实时系统描 述:工 业(武 器)控制系统、信息查询系统、多媒体系统、嵌入式系统类 型1:周期性实时:真的很周期;非周期性实时:有开始截止时间和完成截止时间类型2:硬 实 时:工业、武器系统;软实时:信息查询系统和多媒体系统与分时系统比较:多路、独立、及 时(毫秒级)、交互、可靠六、微机时代(-)单用户单任务
3、:8位机的CP/M、16位机的MS-DOS(二)单用户多任务:目前的32位系统,如Windows(三)多用户多任务:UNIX、Solaris.Linux操作系统共同特性:一、并发(一)并发和并行宏观上一样,并 发:单处理机系统,微观上交替运行并 行:多处理机系统,微观上同时运行(二)引入进程进 程:在系统中能独立运行并作为资源分配的基本单位,由机器指令、数据和堆栈等组成,能独立运行的活动实体特 点:用进程就可以并发执行了二、共享(-)互斥共享方式例 子:临界资源,打印机、磁带机描 述:你要先申请才能获得资源(二)同时访问方式描 述:微观上还是并发例 子:多用户磁盘设备条 件:系统允许进程并发、
4、系统能有效管理资源三、虚拟(-)时分复用技术(利用空闲时间服务其他用户)虚拟处理机技术:分身之术虚拟设备:又是分身之术,骗用户以为有专人服务时分复用:速 度:1/N(二)空分复用技术描 述:将程序、电话线分成若干部分,然后各部分分时进入内存运行空分复用:空 间:1/N四、异步描 述:因为要并发,所以需要一个机制调度进程操作系统主要功能一、处理机管理功能(-)进程控制描 述:要并发,就要进程、要进程,就要管理(二)进程同步进程互斥方式:临界资源要互斥进程同步方式:合作完成共同任务,同步机构要协调先后次序(信号量控制)(三)进程通信描 述:对合作进程而言,需要交换信息。当他们处于同一计算机系统时,
5、通常采用直接通信的方式。例 子:输入进程、计算进程、打印进程,需要信息交换(四)调度作业调度:选择作业、建立进程、分配资源、插入就绪队列进程调度:从就绪队列中选出进程,分 配 CPU二、存储器管理功能(-)内存分配任 务:分配空间、减少碎片、追加内存空间方 式:静态分配,装入内存时确定,不允许追加、不允许移动;动态分配,允许追加、允许移动(二)内存保护任 务1:每道程序只在自己的内存空间运行,互不干扰任 务2:不允许用户程序访问操作系统程序和数据、也不允许用户程序转移到非共享的其他用户程序中执行(三)地址映射任 务:存储器要负责地址映射,在硬件支持下完成(四)内存扩充描 述:用虚拟存储技术,从
6、逻辑上扩充内存容量任 务1:请求-调入功能任 务2:置换功能三、设备管理功能任 务1:完成用户进程的I/O请 求:分配I/O设 备,完成I/O操作任 务2:提 高CPU和I/O利用率:提高I/O速 度,方便用户使用I/O设备(-)缓冲管理描 述:在内存中设置缓冲区(CPU高速性和I/O低速性)例 子:单缓冲机制、双向同时传送数据的双缓冲机制、多个设备共同使用的公用 缓冲池机制(二)设备分配描 述:在系统中设置 设备控制表、控制器控制表 等数据结构,用于记录设备和控制器等标识符和状态。根据表就知道指定设备当前是否可用、忙碌。分配时,针对不同设备要有不同 分配方式,对独占设备还要考虑分配后是否安全
7、(三)设备处理描 述:CPU向设备控制器发出I/O命 令,要求完成I/O操作、反 之,CPU接收控制器发出的中断请求,并响应.处理四、文件管理功能描 述:管理用户、系统文件,方便使用;保证安全性(-)文件储存空间管理背 景:多用户环境下,用户自己管理文件存储,会困难和低效任 务1:为每个文件分配外存空间、提高外存利用率、进而提高存取速度任 务2:系统中设置数据结构,记录文件存储空间使用情况,以供分配时参考任 务3:分配和回收(二)目录管理任 务1:为每个文件建立目录项,包括文件名、属性、物理位置等,以实现按名存取任 务2:实现文件共享。任 务3:提供目录查询手段(三)文件读/写管理和保护文件读
8、/写管理:根据用户请求,从外存中读取数据,或将数据写入外存文件保护:防止未经核准的用户存取文件、防止冒名顶替存取文件、防止以不正确方式使用文件五、操作系统与用户之间的接口(-)用户接口描 述:方便用户直接.间接控制自己的作业联机用户接口:等待用户键入命令脱机用户接口:一开始就提供作业说明书,直到作业结束语句图形用户接口:移动鼠标选择菜单项(二)程序接口描 述:旧系统用汇编语言写,所以只有汇编语言的才能直接使用系统调用;如果是高级语言,就用对应的库函数六、现代操作系统的新功能(一)系统安全描 述:确保存储和传送数据的保密性、完整性和系统可用性,要用几种技术技 术:认证技术、密码技术、访问控制技术
9、、反病毒技术(二)网络的功能和服务功 能:网络通信、资源管理、应用互操作(三)支持多媒体功 能:接纳控制功能、实时调度、多媒体文件的存储 OS结构设计一、传统操作系统结构(-)无结构操作系统又 名:整体系统结构(-)模块化结构os基本概念:又 名:模块-接口法描 述:有模块、子模块、接口模块独立性:标 准:内聚性越高,模块独立性越高、耦合度越低,模块独立性越高优 点:提高设计正确性.可理解性和可维护性、增强可适应性、加快加速过程缺 点:接口难以满足需求、无序(三)分层式结构OS基本概念:有序分层,自底向上法铺设中间层优 点:易保证系统正确性、易扩充和易维护缺 点:系统效率降低二、客户/服务器模
10、式(Client/server Model)简介(-)客户/服务器模式的由来、组成和类型组 成:客户机、服务器、网络系统(二)客户/服务器之间的交互描 述:客户发送请求消息、服务器接收消息、服务器回送消息、客户机接收消息(三)客户/服务器模式的优点描 述:数据分布处理和存储、便于集中管理、灵活性和可扩充性、易于改编应用软件三、面向对象的程序设计(-)OOP的基本概念描 述:抽 象,具体事物为对象对 象:封装好对 象 类:创建多个相似对象继 承:继承父类,增加部分(-)OOP的优点描 述:重用 提高产品质量和生产率、使系统具有更好的易修改性和易扩展性、易于保证系统 正确性 和 可靠性四、微内核o
11、 s结构描 述:支持多处理机例 子:卡内基梅隆的Mach OS、Windows 2000/XP(-)基本概念描 述:足够小的内核、基 于C/S模式、应用 机制与策略分离 原理、采 用OOP技术(二)基本功能描 述:进程管理、低级存储器管理、中断和陷入处理(三)优点描 述:提高可扩展性、增强可靠性、可移植性强、提供对分布式系统的支持、融入OOP(四)缺 点描 述:效率降低第二章进程描述与控制前趋图与程序执行一、前趋图与程序执行(-)前趋图描 述:前一个做完,才到后一个做、禁止循环二、顺序执行描 述:一个跟一个特 征:)1 面序、封 闭(独占资源)、可再现三、并发执行描 述:互不依赖才能并发执行特
12、 征:间断、失去封闭、不可再现进程的描述一、进程的定义和特征进程实体:程序段、相关的数据段和PCB定 义:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位特 征:动态、并发、独立、异步二、进程的基本状态及转换进程的三基态:就 绪(只欠CPU)、执行、阻 塞(因故无法微卖执行)三态转换:如图新增两态:创建状态、终止状态五态转换:如图三、挂起操作和进程状态的转换挂起原因:终端用户需要、父进程请求、负荷调节、操作系统需要引入挂起后的三态转换:如图必耿引入挂起后的五态转换:如图挂起就绪阻塞四、进程管理中的数据结构标识符信息进程标识符e进 程 名O送程4 O,用户标识用户幺用户号家族联系
13、父进程子进程处理机状态信息(现场)前用寄存器指令il做器程序状态字用户栈指针进程调度信息进程状态进程优先敷(级/权)等待收因调度算法步效等进程控制信息程序和数燃的地址进程同步和热值机制青精电能按指计重新执行时,能从断点继续执行.(它们是用户程序可以访问的,用于留存信息处理机状态信息(现场)通用寄存器一指令计数器-程序状态字、用户栈指计存放要访问的下一条指令的地址其中含有状态信息,存放过程和系统调用参数及调用地址如条件码、执行方式、中 断 屏 蔽 标 志 等,3)进程调度信息指明进程的当前状态,作为进程调度和对换时的依据 进程调度信息进程优先数(级/权)描述进程使用处理机的优先级别的一个整数等待
14、原因调度算法参数钉7;由执行状态转变一 尸D为阻塞状态所等待发生的事件J进程状态进程调度所需的其他信息,如等待C P I的时间总和。_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _程序和数据的地址/-at R进程同步和通信机制资源清单链 接 啊%、指进程的程序和数据所在的内存或外存地)址.资源管理功能:进程管理、存储器管理、设备管理二、进程的创建层次结构:UNIX有父子关系,Windows只有控制与被控制关系进 程 图:描述家庭关系的图引起创建进程的事件:用户登录、作业调度、提供服务(譬如打印)、应用请求进程的创建:申请空白PCB、分配物理.逻辑资源、初始化PCB、如果能
15、插入就绪,就插三、进程的终止引起进程终止的事件:正常结束、异常结束、外界干预进程的终止过程:根据标识符、终止执行.立即调度、子孙终止、资源归还、移出队列四、进程的阻塞与唤醒引起进程阻塞和唤醒的事件:向系统请求共享资源失败、等待某操作完成、新数据尚未到达、等待新任务到达进行阻塞过程:发生上述的某事件,就进入block过 程,主动将状态改为阻塞,PCB插入阻塞队列(分类插入),处理机分配给另一就绪进程,切 换,并保留被阻塞进程的处理机状态进程唤醒过程:由释放资源的进程调用wakeup原 语,即移出阻塞队列,合作/相关的进程中安排wakeup五、进程的挂起与激活进程的挂起:活 动-静 止,suspe
16、nd原语进程正在执行,就转向调度程序重新调度进程的激活过程:从外存调入active原语到内存,检查进程现行状态,静止一活动抢占调度策略:静止就绪进程一就绪队列,比较当前进程优先度,有机会立即剥夺当前进程运行进程同步描 述:能够并发、改善利用率、提高吞吐量、但使系统复杂一、进程同步的基本概念制约关系:间接相互制约关系、直接相互制约关系间接相互制约关系:互斥共享直接相互制约关系:合作共享,异步性要做好临界资源:生产者-消费者问题、临界区、:进入区、临界区、退出区、剩余区同步机制应遵循的规则:空闲让进、忙则等待、有限等待、让权等待二、硬件同步机制关中断:缺点多:滥用关中断.造成严重后果、关中断时间过
17、长、不适用于多CPU系统(因为一个处理器关中断并不能防止进程在其他处理器上执行相同的临界段代码)Test-and-Set:不断测试lock,如果是FALSE,就进入临界区,并lock=TRUE;否则测试到 TS(s)=TRUESwap指 令:一直等,直 至!|key=TRUE但以上都不符合 让权等待 原则三、信号量机制进入区的代码用来检查临界资源是否一个访问临界资茯正在被其它进程使用,若正在被访问.则不能进入临界区,若未被访问,则可进入临界区,并设置访问标志为真。_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _While(1)entry section;进入区“cri
18、tical section;临界区exit section;退出区、remainder section;剩 余 吟 福 界 区 正 在 被 访.1:的标志设置为假。整形信号量:so,就一直等,直到释放互斥资源记录型信号量:整形信号量不符合 让权等待 原则。如果有资源,就 分 配,如果无,就插入阻塞队列;释放资源,如果有等待,就激活AND型信号量:一口气全分配信号量集:有多个信号量(S信号量,至少要t个,每次分配d个)wlit(mutex)和 signal(mutex)必须成对出班一缺少wait(mutex)不能保证对临鼻资源的互斥访啰少signal(nutex)会使临界资源永远不被释放大而使因
19、等待该资源而阻塞的进程不能被唤醒。procedure wait(S)var S:semaphore;begin nS.value:=S.value-l;if S.value0 表示有S.value个资源可用,S.value=0 表示无资源可用。2)执行S.vahie l表示请求分配一个S代表的资源;3)若S.vahievO,表示系统已无该类资源,申请者阻塞。:时,IS.vahiel表示该信号量上阻塞的进程数;procedure signal(S)var S:semaphore;beginS.value:=S.value+l;if S.value0 then wakeup(S.L);end物理含
20、义:1)执行s.vahie+1表示进程释放一个S代表的资源,;2)若s.valuev=0,表示尚有进程因等待S代表的资源而处二阻塞状态,所以应唤醒其中之一。寺殊情况:当S.value的初值为1,此时的信号量转化为反斥信号量。四、信号量的应用利用信号量实现进程互斥:mutex=(-1,0,1)=(无,一1临一阻队,一临一信队)利用信号量实现前趋关系:需要的信号量被占用了,就这样实现用P、V 操作实现进程同步与互斥结论:1)P、V操作必须成对出现,有一个P操作就有一个V操作。当为互斥操作时,它们同处于一个进程。当为同步操作时,则不在同一进程。2)一个同步P操作与一个互斥P操作在一起时,同步P操作在
21、互斥P操作前。而两个V操作顺序无关紧要。五、管程机制描 述:为解决信号量机制分散、容易死锁的问题,发明新同步工具管程定 义:定义一个数据结构和能为并发进程所执行(在该数据结构上)的一组操作,这组操作能同步进程和改变管程中的数据组 成:管程名称、数据结构的说明、对数据结构进行操作的过程、初始化的语句特 性:模块化、抽象数据类型、信息掩蔽管程与进程不同:都有数据结构,一个公.一个私、管程操作同步.初始化.进程顺序执行、管程为解决互斥资源.进程实现并发性、进程调用管程.进程主动.管程被动、管程不能并发.进程能并发、管程是os的一个资源管理模块.进程有动态性条件变量:增加一个条件变量,万一发生意外,在
22、管程中被挂起或被阻塞 下一个进程都可以继续执行经典进程的同步问题一、生产者-消费者问题记录型信号量解决:如果缓冲区空,而且能够获取信号量,就投放产品;如果缓冲区有产品,而且能够获取信号量,就消费AND信号量解决:一口气全分配管程解决:利用管程只有一个进程能够使用的属性二、哲学家进餐问题记录型信号量解决:先拿左.后那右、先放左.后放右解决死锁:最多4人取筷子、先检查.有左右筷子才能取、奇左右.偶右左AND信号量解决:一口气全分配三、读者-写者问题描 述:可以多读一、一旦开始写.就不能读或写记录型信号量解决:读 操 作:等rmutex就是为了改readcount一无人读?看看是否在写.等wmute
23、xreadcount+T自增完成.rmutex还你一读读读一等rmutex为了自减readcount一无人读?可以写了.还你 wmutex写 操 作:等wmutex.即无读无写一写完.还你wmutex利用信号量集机制:读:限 制reader个数如 果mx是1.就读一最后释放一reader个数写:如 果mx是1.并且读者数为0.就写一写完释放mx进程通信一、进程通信类型共享存储器系统:某些数据结构和共享存储区、管道通信系统、消息传递系统、C-S系统二、消息传递通信的实现方式(-)直接消息传递系统1.直接通信原语:对称寻址方式、非对称寻址方式2.消息格式:较短的减少系统处理和存储的开销、较长可以方
24、便3.进程同步方式:发塞收塞(进程间紧密同步.无缓冲)、发通收塞(平常状态)、发通收通(发生某事件无法继续运行)、(无发塞收通)4.通信链路:用 建立连接 原语建立通信链路.用完拆、用 发送命令 原语建立链路,还分单向和双向(二)信箱通信(间 接)1.定义:是数据结构.分信箱头和信箱体2.原语:创建和撤销.发送和接收3.类型:私用、公 用(操作系统创建)、共 享(进程创建)4.进程之间的关系:一对一、多对一、一对多、多对多三、直接消息传递系统实例消息缓冲队列通信机制中的数据结构:利用数据结构式消息缓冲区、在PCB增加有关通信的数据项原 语:设置发送区、申请PCB(B)的缓冲区i、复制到缓冲区、
25、插入消息队列、移出消息队列、复制到接收区、释放缓冲区线程的基本概念描 述:就是为了提高程序并发执行的程度一、线程的引入进程的两个基本属性:进程是一个可拥有资源的独立单位、进程同时是一个可独立调度和分派的基本单位进程并发执行所需的时空开销:创建进程、撤销进程、进程切换线程一作为调度和分派的基本单位:线程轻装上阵二、线程与进程比较调度的基本单位:线程是调度和分派的基本单位、跨进程,会切换进程并 发 性:线程的合作.能够并发拥有资源:有 TCB.但只是必不可少、保证独立运行的资源独立性:同一进程的不同线程共享进程的内存地址空间和资源系统开销:因为轻装.所以减少开销、提升速度支持多处理机系统:对多线程
26、进程,多个线程可以分配到多个处理机上三、线程的状态和线程控制块线程运行的三个状态:和进程一样线程控制块TCB:标识符、一组寄存器、运行状态、优先级、线程专有存储区、信号屏蔽、堆栈指针多线程OS中的进程属性:进程是可拥有资源的基本单位、多个线程可并发执行、进程已不是可执行的实体线程的实现一、线程的实现方式内核支持线程KLT:优 点:内核调度同一进程多个线程并行执行、一个线程阻塞.其他线程占有处理机、支持小数据结构和堆栈.切换较快开销小、内核本身采用多线程技术提高系统执彳亍速度和效率用户级线程ULT:优 点:无需内核.节省模式切换的开销、调度算法进程专用、与 OS无关.甚至可以在操作系统平台实现缺
27、 点:一个线程阻塞.同进程的其他线程都会塞、只有一个CPU.只有一个线程能执行、按进程分配.不公平组合方式:多对一模型:优 点:开销小、缺 点:一塞进程全塞、只有一线程访问内核、多线程不能同时在多个处理机上运行一对一模型:一个用户级线程映射到一个内核支持线程多对多模型:一对一和多对一的结合二、线程的实现内核支持线程的实现:创建线程、保存信息、调度和切换线程、撤销线程、回收资源用户级线程的实现:运行时系统:用于管理和控制线程的函数的集合,这些函数驻留用户空间.并作为用户级线程与内核之间的接口内核控制线程:连接到LW P,连接到LWP的线程才能与内核通信对于设置了用户级线程的系统,调度仍以进程为单
28、位进行。例若进程A中包含1个用户级线程,进程B包含假如系统设置的是内核支持线程,则调度便是以线程为单位进行。例若进程A中包含1个内核支持线程,进三、线程的创建和终止线程的创建:初始化线程、创建后返回线程标识符线程的终止:终止线程用函数或系统调用终止操作.但有些线程被建立就会一直执行。大多数o s,线程被中止后并不立即释放所占资源,只 有“其他线程 执行分离函数才会分离资 源,才能被其他线程利用。虽然未释放的资源也可以被其他线程使用,但要有个 等待线程终止”的连接命令作保险.否则一直阻塞第三章处理机调度与死锁处理机调度的层次和调度算法的目标描 述:作业可能要经历多级处理机调度一、处理机调度层次(
29、-)高级调度(长程调度/作业调度)对象是作业、决定将外存中处于后备队列的作业调入内存.创建进程和分配资源.并放入就绪队列、主要存在于多道批处理系统,分时和实时系统不设置高级调度(二)低级调度(进程调度;短程调度)对象是进程(/内核级线程)、决定就绪队列哪个进程获得处理机、多道批.分时和实时都要配置(三)中级调度(内存调度)(存储器的对换功能)对象是暂时不能运行的进程、把这些进程调到外存.设为挂起状态、一有条件.稍微有空就变为就绪状态分级按运行频率划分二、处理机调度算法的目标(一)共同目标提高资源利用率、公平、平衡、策略强制执行(二)批处理系统目标处理机利用率高、平均周转时间短、系统吞吐量高 3
30、,平均周转时间描述沏 T=-作业的周转时间T与系统为它提供服务的时间戛之比,即 为 777小 称为带权周转时间,而平均带权周转时间则可表示为:W=-nn T洋i=l 1Si(三)分时系统目标响应时间快、均衡性(四)实时系统目标截止时间保证、可预测性作业与作业调度一、批处理系统中的作业(一)作业和作业步作 业:包括程序.数据和作业说明书、在批处理系统.作业是基本单位从外存调入内存作 业 步:独立步骤(二)作业控制块(JCB)包括作业标识、用户名称、用户账号、作业类型、作业状态、调度信息、资源需求、资源使用情况等流 程:进入系统一创建JCBT根据类型放到后备队列等待调度T入内存T根据JCB和作业说
31、明书控制一完成T回收资源.撤销JCB(三)作业运行的三个阶段和三种状态收容阶段-后备状态、运行阶段-运行状态、完成阶段-完成状态二、作业调度的主要任务也 叫:接纳调度考 虑:接纳多少作业、接纳哪些作业三、先来先服务FCFS和短作业优先SJF调度算法(-)先来先服务FCFS就这样.完成或阻塞才分配到其他进程、实际中和其他算法结合使用有利于长作业(进 程),不利于短作业(进 程)(二)短作业优先SJF实际用得多、要预知作业运行时间、长作业、紧迫作业不利、无人机交互四、优先级调度算法和高响应比优先调度算法(一)优先级调度算法外部赋予作业优先级(二)高响应比优先调度算法集SJF.FCFS的优点.兼顾长
32、作业、但要做相应比计算.增加系统开销(Exp.做过类似)优 先 权=等待时间+要 求 服 务 时 间=响应时间-要求服务时间 一要求服务时间进程调度一、进程调度的任务、机制和方式(-)进程调度的任务保存处理机的现场信息、按某种算法选取进程、把处理器分配给进程(二)进程调度机制排 队 器:插入就绪队列分 配 器:从就绪队列取出.分配处理机上下文切换器:保存、装入新的CPU现场信息等内容(三)进程调度方式非抢占方式:只有完成或因某事无法继续运行、I/O、执行了原语操作如block,才会引起进程调度优 点:简单、开销小、适用大多数批处理系统抢占方式:对分时系统而言.有人机交互、对实时系统而言.能满足
33、任务需求主要原则:优先权原则、短进程优先原则、时间片原则二、轮转调度算法(-)轮转法(RR)的基本原理按FCFS策略排成就绪队列,每隔一定时间就产生一次中断(二)进程切换时机时间片未用完就完成:马上调度队首进程.启动新时间片时间片完还没完成:中断.进程被调到就绪队列队尾(三)时间片大小的确定太短有利于短进程、太长退化为FCFS算法.要计算平均周转时间(带权周转时间)三、优先级调度算法(-)优先级调度算法的类型非抢占式和抢占式(二)优先级的类型确定优先级的依据:静态优先级:进程类型(系统进程优先权高于用户进程优先权)、进程对资源的需求(少则优先)、用户需求(紧迫程度、花 费)动态优先级:先赋予优
34、先级,随着进程推进或等待时间增加而改变四、多队列调度算法将一条就绪队列拆分成多条,各有各调度算法五、多级反馈队列调度算法(-)调度机制多条就绪队列、队列内使用FCFS算法.一个时间片未完成就放到下一个队列的末尾.最后一个队列用RR方式、按队列优先级调度.前队列空才到本队列运行(二)调度算法的性能终端型用户、短批处理作业用户、长批处理作业用户六、基于公平原则调度算法(-)保证调度算法保证处理机公平分配功 能:跟踪进程已经执行的处理时间、该时间除以n、计算实际处理时间和应获得时间之比、匕瞰比率、比率最低的获得处理机(二)公平分享调度算法考虑多用户实时调度描 述:实时系统有两种实时任务HRT和 SR
35、T一、实现实时调度的基本条件(一)提供必要信息就绪时间、开始截止和完成截止时间、处理时间、资源要求、优先级(二)系统处理能力强(处理时间i/周期时间i)总 和 1.未考虑任务切换花费的时间还应该留有余地提高系统处理能力的途径:单处理机系统增强处理能力.显著减少每个任务的处理时间、多处理机系统.就变成(处理时间i/周期时间i)总 和 N(三)采用抢占式调度机制执行完关键程序和临界区后,能及时将自己阻塞起来,以释放处理机(四)具有快速切换机制对中断的快速响应能力、快速的任务分派能力二、实时调度算法的分类根据任务性质:H/S根据调度方式:非抢占式/抢占式(-)非抢占式调度算法轮转、优先调度,不适合实
36、时系统。进程自动放弃处理机,才进行调度。(二)抢占式调度算法基于时钟中断的抢占式优先级调度算法:等待时钟中断发生才剥夺当前任务的执行立即抢占优先调度算法:好快好快只要任务未处于临界区.就立即剥夺当前任务执行优先权原则、短作业(进程)优先原则、时间片原则。三、最早截止时间优先EDF算法非抢占式调度方式用于非周期实时任务:开始截止时间早的排前抢占式调度方式用于周期实时任务:最早截止时间优先算法四、最低松弛度优先LLF算法紧急程度越高,优先级越高。松弛度二必须完成的时间点 本身所需运行时间 当前时间:五、优先级倒置(-)优先级倒置的形成(二)优先级倒置的解决方法继承动态优先级的方法:P3继 承P1的
37、优先级.一方面避免P2抢占处理机、另一方面释放mutex资源死锁概述一、资源问题指互斥资源、不可被抢占的资源(-)可重用性资源和消耗性资源可重用性资源:一个只能分配给一个进程使用、顺序为请求.使用.释放、数目相对固定.运行期间不能创建或删除可消耗性资源:在进程运行中数目不断变化.可为0、可以不断创建.放入缓冲区、可以由进程创建.使用并不再返回资源类(二)可抢占性资源和不可抢占性资源可抢占性资源:可以被其他进程抢占.如CPU和主存不可抢占性资源:一旦分配给进程就不能强制收回.要做到底二、计算机系统中的死锁(-)竞争不可抢占性资源引起死锁我要你的,你要我的,形成环路,死锁(二)竞争可消耗资源引起死
38、锁譬如消息通信机制.先读后写.就会死锁(三)进程推进顺序不当引起死锁竞争不可抢占性资源引起死锁的翻版.多画了一个图三、死锁的定义、必要条件和处理方法(-)死锁的定义这组死锁进程都在等其他进程释放所占资源(二)产生死锁的必要条件互斥条件:一段时间只被一个进程占用请求和保持条件:进程已经保持至少一个条件.但有提出新资源请求不可抢占条件:只能在进程用完才能释放循环等待条件:存在循环链(三)处理死锁的方法预防死锁:设置限制条件.破坏产生死锁四个必要条件来预防避免死锁:在资源动态分配时.用防止系统进入不安全状态检测死锁:通过检测机构及时检测死锁.采取适当措施以解脱解除死锁:撤销进程.回收资源.分配给处于
39、阻塞的进程防范逐渐减弱.但资源利用率提高.进程因资源因素而阻塞的频度下降预防死锁一、破坏 请求和保持 条件保 证:进程请求资源时,不持有不可抢占资源第一种协议:一次性全部申请,从而破坏 请求条件、缺点是资源被严重浪费.进程饥饿第二种协议:先释放资源.再请求新资源二、破坏 不可抢占”条件当保持了某些不可抢占资源后提出新资源请求不得满足.就必须释放已经保持的资源.等需要时再申请缺 点:增加周转时间、增加系统开销、降低系统吞吐量三、破 坏“循环等待 条件总有一个进程占据了较高序号的资源.此后它继续申请的资源必然是空闲的避免死锁一、系统安全状态(-)安全状态计算一个资源分配的安全性.如果分配不会导致不
40、安全状态.才可将资源分配给进程(二)安全状态之例(三)由安全状态向不安全状态的转换二、利用银行家算法避免死锁(-)银行家算法中的数据结构Availalbe、Max、Allocation.Need(二)银行家算法睇wiki 银行家算法”条目声 明:Request是请求向量Request Need,否则出错Request n,就是寄存器地址。统一了对内存和对控制器的访问方法四、I/O通道(-)1/0通道设备的引入这是一种特殊的处理机,但只局限于I/O相关的指令、而且没有自己的内存(二)通道类型字节多路通道:一个大水喉,多条小水管;一个换头快,一个速率慢数组选择通道:利用率低数组多路通道:甚至可以并
41、行操作(三)瓶颈 问题增加通路即可解决中断机构和中断处理程序一、中断简介(-)中断和陷入中 断:由外部设备引起,暂停当前程序,执行中断处理程序陷 入:CPU内部事件引起的,多是出错故障(二)中断向量表和中断优先级中断向量表:asm有学中断优先级:现实中有多个中断信号源,要规定不同优先级(三)对多中断源的处理方式屏蔽中断:顺序执行。优点简单;缺点无视实时中断请求嵌套中断:有个优先级二、中断处理程序步骤测定是否有未响应中断信号;保护被中断进程的CPU环 境;转入相应设备处理程序;中断处理;恢 复CPU现场并退出中断设备驱动程序一、设备驱动程序概述(-)设备驱动程序的功能接收命令和参数,并转换为低层
42、操作序列检直I/O合法性,了解I/O工作状态,传递I/O设备操作有关参数,设置设备工作方式及时响应设备控制器发来的中断请求,并根据中断类型,调用响应中断处理程序(二)设备驱动程序的特点抽象的I/O请求转换成具体的I/O操 作,反映给I/O进程和硬件特性紧密相关,终端驱动程序可以只有一个常用控制方式:中断驱动、DMA一部分必须用汇编语言写,很多驱动程序基本部分已经固化在ROM允许可重入(三)设备处理方式一类设备一个进程一个I/O进程负责各类设备的I/O操作只为各类设备设置相应的设备驱动程序,供用户或系统进程调用(目前用得最多)二、设备驱动程序的处理过程(一)1省由象要求转换为具体要求(二)对服务
43、请求进行校验譬如要求打印机输入数据(三)检查设备的状态检测寄存器中的不同位,了解设备的状态(四)传送必要参数波特率、奇偶校验等等参数(五)启动I/O设备了解数据是否到达三、对I/O设备的控制方式(-)使用轮询的可编程I/O方式无限等待,好浪费CPU(二)使用中断的可编程I/O方式百倍提高CPU利用率(三)直接存储器访问方式至少传送一个数据块,DMA方式提高CPU和I/O之间的并行程度(四)I/。通道控制方式使用通道程序完成CPU指定的I/O任务与设备无关的I/O软件一、与设备无关软件的基本概念(-)以物理设备名使用设备以前应用程序与物理设备直接相关(二)引入了逻辑设备名通过更换逻辑设备表即可改
44、变显示终端(三)逻辑设备名称到物理设备名称的转换要搞一张逻辑设备表二、与设备无关的软件(-)设备驱动程序的统一接口要有统一接口,同时抽象设备名要映射到适当的驱动程序上(二)缓冲管理设置缓冲区,缓 和 CPU和 I/O 设备之间的速度矛盾、提 高 CPU利用率(三)差错控制暂时性错误:只有连续多次出错才报告上层,否则由设备驱动程序自己处理持久性错误:要查清发生错误的原因,避免以后再发生错误(四)对独立设备的分配与回收独占设备要先申请(五)独立于设备的逻辑数据块注:与设备无关软件功能:设备驱动程序的统一接口、缓冲、错误报告、分配与释放专用设备、提高与设备无关的块大小三、设备分配(-)设备分配中的数
45、据结构系统设备表SDTT设备控制表DCT:类型、标识符、状态、设备队列队首指针、重复执行次数、指向控制表DCT的指针-控制器控制表CO CT-通道控制表CHCT(二)设备分配时应考虑的因素设备固有属性:独占、共享、虚拟设备设备分配算法:FCFS、优先级高优先安 全 性:安全、不安全(三)独占设备的分配程序独占设备:分配设备、控制器、通道如果要设备无关地找设备,就要从SDT找 D C T,再逐个测试安全性四、逻辑设备名到物理设备名映射的实现(-)逻辑设备表LUT逻辑设备名、物理设备名、设备驱动程序的入口地址(二)逻辑设备表设置问题整个系统一张LUT(单用户)或每个用户一张LUT(多用户)用户层的
46、I/O 软件一、系统调用与库函数(-)系统调用使用系统调用I/O 设 备,用户态内核态用户态(二)库函数库函数与调用程序接在一起二、假脱机系统(Spooling)(-)假脱机技术利用专门的外围控制机,先将低速I/O设备上的设局传送到高速磁盘上,或相反(二)SPOOLing 的组成输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程、井管理程序(三)SPOOLing系统的特点提高I/O速度、将独占设备改造为共享设备、实现虚拟设备功能(四)柳兑机打印机系统磁盘缓冲区、打印缓冲区、假脱机管理进程和假脱机打印进程(五)守护进程有个假脱机目录,由守望进程按目录文件依次完成各个进程设备的请求,就可以
47、将一个独占设备改为多个进程共享设备缓冲区管理一、缓冲的引入(一)缓和CPU与I/O设备间速度不匹配的矛盾速度有差距,都可以设置缓冲区(二)减少对CPU的中断频率(三)解决数据粒度不匹配的问题生产者生产的数量和消费者消费的数量差距(四)提 高CPU和I/O设备之间的并行性CPU和打印机可以并行工作呢二、单缓冲区和双缓冲区(-)单缓冲区缓冲区也会阻塞(二)双缓冲区CPU执行第一行中的命令时,用户可以继续向第二缓冲区输入下一行数据如果两台电脑只设置单缓冲,就要再设置一个接收缓冲区,一个发送缓冲区三、环形缓冲区(-)环形缓冲区的组成空 区R,装满的区G,正在使用的现行工作缓冲区C;另外还有多个指针(二
48、)环形缓冲区的使用Getbuf 和 Releasebuf(三)进程之间的同步问题Nexti赶 上Nextg:输入速度 处理速度Nextg赶 上Nexti:处理速度 输入速度四、缓冲池(-)缓冲池的组成专为生产者-消费者设置的,包含一个管理数据结构和一组操作函数,管理多个缓冲区包括空白缓冲队列、输入队列、输出队列(二)Getbuf过程和Putbuf过程设 置MS(type)互斥访问缓冲池队列和RS(type)进程同步使用缓冲区(三)缓冲区的工作方式收容操作、提取输入、收容输出、提取输出磁盘存储器的性能和调度一、磁盘性能简述(-)数据的组织和格式数据组织和格式:磁盘-双面可存储盘片(存储面)-扇区
49、-磁道(柱 面)(二)磁盘的类型固定头磁盘、移动头磁盘(三)磁盘访问时间二、早期的磁盘调度算法(-)先来先服务就是先来的先找,很公平很简单,但平均寻道好长(二)SSTF最短寻道时间优先选择一个与磁头距离最近的磁道三、基于扫描的磁盘调度算法(-)扫描算法SCAN来 回(从里到外再从外到里循环)(二)循环扫描算法CSCAN单 程(从里到外循环)(三)NStepSCAN和FSCAN调度算法N步扫描算法-钿盘请求队列分成若干长度为N的子队列,再 用FCFS依次处理这些子队歹UFSCAN算 法:只分两个队列,一个现在要扫描的,一个是扫描时新冒出来的第七章文件管理文件和文件系统一、数据项、记录和文件(-)
50、数据项基本数据项:描述以对象某种属性的字符集,如学号、姓名、年龄这些不能再细分的组合数据项:若干个基本数据项组成的,就是还可以细分的(二)记录描述一个对象在某方面的属性,注意要有关键字key,方便查找(三)文件多条记录组成文件文件属性:类型、长度、物理位置、建立时间(即最后一次修改时间)二、文件名和类型(-)文件名和拓展名没什么好说的,都懂(二)文件类型按用途分:系统文件、用户文件、库文件按文件数据形式:源文件、目标文件、可执行文件按存取控制属性:只执行文件、只读文件、读写文件按组织形式和处理方式分类:普通文件、目录文件、特、殊文件三、文件系统的层次结构(-)对象及其属性管理对象:文件、目录、