操作系统复习重点内容 复习总结.docx
《操作系统复习重点内容 复习总结.docx》由会员分享,可在线阅读,更多相关《操作系统复习重点内容 复习总结.docx(12页珍藏版)》请在冰豆网上搜索。
操作系统复习重点内容复习总结
操作系统复习重点内容复习总结
教材:
计算机操作系统西安电子科技大学出版社
第一章操作系统引论
主要解决的是对操作系统的认识问题。
在学习完后面各章后还应该再回过头来认真品味本章的内容,重点是对操作系统原理的整体认识和掌握。
操作系统引论这部分内容不会出现大题。
一般是以基本原理和概念的形式为主,属于识记形式的题目。
重点是操作系统的定义、操作系统的特征和主要功能等。
l计算机系统把资源管理和控制程序执行的功能集中组成一种软件,称为操作系统,是系统软件
l操作系统的两个设计目标:
1、使计算机系统使用方便
2、使计算机系统能高效地工作(扩充硬件的功能,使硬件的功能发挥得更好;使用户合理共享资源,防止相互干扰;以文件形式管理软件资源,保证信息的安全和快速存取。
P1l设置操作系统的作用
1,用户观点:
操作系统是裸机与用户的一个界面。
2,系统观点:
操作系统是计算机系统资源的一个"管理员"。
l操作系统的分类
用户要求计算机系统进行处理的一个计算问题称为一个"作业"。
按照操作系统提供的服务,大致可以把操作系统分为:
单道批处理系统;
多道批处理系统,简称"多道系统",即多个作业可同时装入主存储器进行运行的系统。
多道系统能极大提高计算机系统的效率,表现为:
(1)并行工作,减少了CPU的空闲时间,提高了CPU的利用率。
(2)合理搭配多道使用不同资源的作业,可充分利用计算机系统的资源。
(3)直接在高速的磁盘上存取信息,缩短了作业执行时间,使单位时间内的处理能力得到提高。
(4)作业成批输入、自动选择和控制作业执行减少了人工操作时间和作业交接时间,提高了系统的吞吐率;
分时系统,具有同时性、独立性、及时性、交互性。
批处理兼分时系统中,由分时系统控制的作业称为"前台"作业,由批处理控制的作业称为"后台"作业。
实时系统:
在严格时间规定内处理必须结束;分类:
(1)实时控制
(2)实时信息处理
网络系统:
可实现资源共享的,为计算机网络配置的的操作系统我们使用的windows是网络式系统;
分布式系统可协调多个计算机以完成一个共同任务的;
l发展
MS-DOS:
单用户单任务
WindowsXP:
单用户多任务
UNIX:
多用户多任务
l操作系统的特性
1,并发性
2,共享性
3,不确定性
l掌握操作系统的基本功能:
处理器管理、存储器管理、文件管理、设备管理、文件管理。
(1)为用户和应用程序之间提供一个控制底层硬件功能的接口;
(2)给用户和应用程序分配硬件资源;
(3)按用户要求加载和执行应用程序。
l掌握操作系统的分层结构及各层的基本功能
操作系统具有层次结构…
层次结构最大特点是整体问题局部化来优化系统,提高系统的正确性、高效性、使系统可维护、可移植。
P26主要优点是有利于系统设计和调试;主要困难在于层次的划分和安排。
第二章进程管理
进程管理是考试的热门,考点既可以出现在选择题中,也可出在综合应用题中。
重点是要掌握进程的基本特征、进程的状态及其相互转换的条件和过程;进程与线程的区别和联系;进程通信的基本类型;进程同步相关概念(信号量机制的应用题)、同步互斥机制;,这部分是操作系统科目的难点,也是考试的热点。
l程序的特点
i,顺序执行:
顺序性,封闭性,再现性
ii,并发执行:
无顺序执行时的特点,受约与其他程序
l进程是一个程序在一个数据集上的一次执行。
由定义知进程关键组成是程序、数据集。
是资源分配的基本单位。
l进程是程序运行的一个实例
进程是一个可以和别的运算并发执行的运算
进程是一个独立的可以调度的活动
进程是一个程序及其数据在处理机上被执行时所发生的活动过程
进程是一个程序一次执行的过程
l进程与程序的关系
①程序是一组有序指令的集合(静态)
进程是程序的一次执行过程(动态)
②一个程序可由多个进程同时执行
一个进程可包含多个程序
③进程是系统进程资源分配和调度的一个独立单位,而程序则不是
④程序可长期保存
l进程通过一个控制块来被系统所指挥,因此进程由程序、数据集和进程控制块三部分组成。
进程控制块是进程存在的唯一标志.进程是要执行的,据这点可将进程的状态分为等待态然后是就绪态最后是运行态。
l进程的三种基本调度状态
i,就绪状态:
进程已获得除CPU外的所有运行所需要的资源
ii,运行状态:
已占用CPU,正在运行
iii,阻塞状态:
进程因等待某一事件的发生而暂时不能运行,即使CPU空闲,它也无法运行
P38
进程的基本队列也就是就绪队列和等待队列,(因为进程运行了,也就用不上排队了,也就没有运行队列了。
)
如果进程由一所在队列退出的操作称为出队,排入到一个指定的队列的操作称为入队。
系统中负责进程入队和出队的工作称为队列管理。
l进程的切换
进程切换指一个进程进处理器,另一个进程出处理器的过程。
若有一个进程从运行态变成等待态,或完成工作后就撤消,则必定会发生进程切换。
l进程的同步(综合应用)
1、进程同步的含义:
进程的同步是指并发进程之间存在一种制约关系,一个进程的执行依赖另一个进程的消息,当一个进程没有得到另一个进程的消息时应等待,直到消息到达才被唤醒。
"生产者"与"消费者"是同步问题的典型例子。
这里有两个消息量:
一是"缓冲器里有物品",二是"可把物品存入缓冲器",这两个消息量对应需要两个信号量SPut和SGet.SP的初始值为1,如果初始时可用的缓冲器为n个,则SP=n;SG的初始值为0。
生产者进程调用P(SP)和V(SG),消费者进程调用P(SG)和V(SP),根据SG和SP的值来决定是否可以存或取物。
2、正确使用PV操作实现进程同步。
(1)用一个信号量与一个消息联系起来,当信号量的值为0时表示期望的消息尚未产生,当信号量值为非0时表示期望的消息已经存在。
(2)在用PV操作实现同步时,一个信号量与一个消息量联系在一起,当有多个消息时必须定义多个信号量;测试不同的消息是否到达或发送不同消息时,应对不同的信号调用P操作或V操作。
(3)仔细领会教材中的例子,关于PV操作,在考试中出现的可能性极大,但是难度基本不超过教材上例题。
问题描述:
有一组生产者进程、一组消费者进程还有一组buffer(n个),生产者每生产一个产品就占用一个buffer,消费者每使用一个产品,就释放一个buffer。
P58
问题解答:
设置两个同步信号量:
可使用的buffer的个数empty=n;
被占用的buffer的个数full=0;
设置一个异步信号量:
buffer=1;
生产者:
while()
{
生产一个产品;
P(empty);
P(buffer);
产品-buffer;
V(buffer);
V(full);
}
消费者:
while()
{
P(full);
P(buffer);
取buffer中产品;
V(buffer);
V(empty);
}看课件
3、使用PV操作实现进程同步与互斥的混合问题。
进程的同步与进程的互斥都涉及到并发进程访问共享资源的问题。
可以看到进程的互斥实际上是进程同步的一种特殊情况。
若干进程互斥使用资源时,一个等待使用资源的进程在得到占用资源的进程发出"归还资源"的消息(调用了V操作)后,它就可去使用资源。
因此,互斥使用资源的进程之间实际上也存在一个进程依赖另一个进程发出信息的制约关系。
所以,也把进程的互斥与进程的同步称为进程的同步。
l进程通信(领会)
1、进程通信的含义:
通过专门的通信机制实现进程间交换大量信息的通信方式称为"进程通信"
2、实现进程通信的基本原语:
有两条:
"send(发送)"和"receive(接收)"原语。
3、利用信箱通信时"发送"和"接收"原语的功能。
send(N,M)功能:
把信件M送到指定的信箱N中。
receive(N,X)功能:
从指定信箱N中取出一封信,存放到指定的地址X中。
4、信箱的基本结构:
一个信箱由"信箱说明"和"信箱体"两部分组成。
l线程的概念(识记)
线程是进程中可独立执行的子任务,一个进程中可以有一个或多个线程,每个线程都有一个唯一的标识符。
支持线程管理的操作系统有Mach,OS/2,WindowsNT,UNIX等。
第三章处理机调度与死锁
l调度的基本概念、时机、切换过程,掌握各种调度算法及其环境,并会用算法进行计算;死锁的定义、死锁产生的四个必要条件、熟练掌握死锁的预防、死锁的避免,死锁解除的原理与方法。
l进程的调度
我们使用不同的调度是为了优化,具体说来是提高处理器利用率,增大吞吐量,减少等待时间,缩短响应时间。
常用的算法有先来先服务、优先数调度法、时间片轮转调度法、分级调度(分级调度法可理解为多队列法)。
先来先服务调度是先来者,先服务;优先数算法是对每个进程确定一个优先数,以决定先后。
时间片轮转法是把规定进程一次使用处理器的最长时间称为"时间片"。
让就绪进程按就绪的先后次序排成队列,依次运行。
分级调度算法是由系统设置多个就绪队列,每个就绪队列中的进程按时间片轮转法占用处理器,这就是分级调度算法。
高响应比优先P94l若系统中存在一组进程(两个或多个进程),它们中的每一个进程都占用了某种资源而又都在等待其中另一个进程所占用的资源,这种等待永远不能结束,则说系统出现了"死锁"。
或说这组进程处于"死锁"状态。
l产生死锁的原因:
进程申请和释放资源的顺序不当
l产生死锁的四个必要条件
互斥条件:
所涉及的资源都是临界资源
"请求和保持"条件:
当进程因请求资源而阻塞时,对已请求的资源保持不放
"不可剥夺"条件:
已占用的资源在用完前,不能被剥夺
"环路等待"条件:
存在一个"进程/资源"环
l解决死锁的方法
预防死锁法:
通过某些限制,来破坏四个条件中的一个
常用的方法有:
静态分配、按序分配、抢夺式分配3种。
l避免死锁法:
不必先限制,而在动态请求资源时,分配与否取决于系统是否会进入死锁
l检测/解除法:
允许死锁,但能立即确定其原因并解除
2、死锁的防止策略:
破坏产生死锁的条件中的一个就可以了。
l死锁的避免(简单应用)
1、死锁的避免是让系统处于安全状态,来避免发生死锁。
安全状态:
如果操作系统能保证所有的进程在有限的时间内得到需要的全部资源,则称系统处于"安全状态"。
2、银行算法是怎样避免死锁的:
计算机银行家算法是通过动态地检测系统中资源分配情况和进程对资源的需求情况,在保证到少有一个进程能得到所需要的全部资源,从而能确保系统处于安全状态进,才把资源分配给申请者,从而避免了进程共享资源时系统发生死锁。
采用银行家算法时为进程分配资源的方式:
1)对每一个首次申请资源的进程都要测试该进程对资源的最大的需求量。
如果系统现存资源可以满足他的最大需求量,就按当前申请量为分配资源。
否则推迟分配。
2)进程执行中继续申请资源时,先测试该进程已占用资源数和本次申请资源总数有没有超过最大需求量。
超过就不分配。
若没有超过,再测试系统现存资源是否满足进程尚需的最大资源量,满足则按当前申请量分配,否则也推迟分配。
总之,银行家算法要保证分配资源时系统现存资源一定能满足至少一个进程所需的全部资源。
某系统有同类资源m个,可并发执行且共享该类资源的进程最多n个,而每个进程申请该类资源的最大数量为x(1≤x≤m),只要不等式n(x-1)+1≤m成立,则系统一定不会发生死锁。
资源分配图见课件
(1)若RAG中未出现任何环路,则S为非死锁状态,或称安全状态。
?
(2)若RAG中出现了环路,且该环路中的各资源均为单单位资源(只有一个分配单位),则S为死锁状态。
换言之,由若干单单位资源构成的环路,是S为死锁状态的充分必要条件。
?
(3)若RAG中出现了环路,但该环路中的各资源不全为单单位资源,则S不一定是死锁状态。
换言之,由若干不全为单单位资源构成的环路,是S为死锁状态的必要条件但非充分条件。
死锁定理P112
第四章存储器管理
内存管理这部分内容也要作为重点进行复习,这部分内容的考查方式也很灵活。
建议重点复习内存连续分配算法、非连续分配管理方式、虚拟内存请求分页的基本原理,页面置换算法(重点)等。
l中央处理器存储下列中信息的速度依次为:
寄存器最快;通过系统总线存取主存储器的速度居中;辅助存储器最慢。
寄存器用来存放临时的工作信息和系统必需的控制信息。
主存储器是CPU能直接访问的惟一的存储空间。
主存储器中存放操作系统的核心部分,以及当前需执行的程序和数据。
主存储器以"字节(BYTE)"为单位进行编址
辅助存储器是存放非核心部分和其他程序和数据。
容量大且能永久保存信息
磁盘的信息可随机存取,磁带上的信息只能顺序存取。
l存储结构:
要执行的程序必须装入主存,CPU可直接访问主存。
外设只能与主存交换信息,辅存的信息只能被读入到主存才能供CPU访问。
l可变分区经常采用的主存分配算法
最先适应分配算法:
简单地说,就是在分区表中顺序查找,找到够大的空闲区就分配。
最优适应分配算法:
挑选一个能满足作业要求的最小空闲区。
最坏适应分配算法:
挑一个最大的空闲区分给作业使用。
l页式管理
(1)采用页式管理,使主存空间充分利用,页不必为了得到连续空间而进行移动。
可以提高系统效率。
(2)页式存储管理中为什么要设置页表和快表?
P133
在页式存储管理中,主存被分成大小相等的若干块,同时程序逻辑地址也分成与块大小一致的若干页,这样就可以按页面为单位把作业的信息放入主存,并且可以不连续存放,为了表示逻辑地址中的页号与主存中块号的对应关系,就需要为每个作业建立一张页表。
页表一般存放在主存中,当要按给定的逻辑地址访问主存时,要先访问页表,计算出绝对地址,这样两次访主存延长了指令执行周期,降低了执行速度,而设置一个高速缓冲寄存器将页表中的一部分存放进去,这部分页表就是快表,访问主存时二者同时进行,由于快表存放的是经常使用的页表内容,访问速度很快,这样可以大大加快查找速度和指令执行速度。
l页式存储管理主存储器分为大小相等的"块"。
程序中的逻辑地址进行分"页",页的大小与块的大小一致。
用页表登记块页分配情况P131
逻辑地址的页号部分→页表中对应页号的起始地址→与逻辑地址的页内地址部分拼成绝对地址。
P132由页表中的标志位验证存取是否合法,根据页表长度判断是否越界。
l段存储管理程序分段
每一段分配一个连续的主存区域,作业的各段可被装到不相连的几个区域中。
设置段表记录分配情况
逻辑地址中的段号→查段表得到本段起始地址+段内地址→绝对地址P138由段表中的标志位验证存取是否合法,根据段表长度判断是否越界。
页式虚拟存储管理类似页式管理将作业信息保存在磁盘上部分装入主存。
分页和分段的区别见课件
l虚拟存储器是为"扩大"主存容量而采用的一种设计技巧,就是它只装入部分作业信息来执行,好处在于借助于大容量的辅助存储器实现小主存空间容纳大逻辑地址空间的作业。
l页式虚拟存储器是在页式存储的基础上实现虚拟存储器的,其工作原理是:
首先把作业信息作为副本存放在磁盘上,作业执行时,把作业信息的部分页面装入主存,并在页表中对相应的页面是否装入主存作出标志。
作业执行时若所访问的页面已经在主存中,则按页式存储管理方式进行地址转换,得到绝对地址,否则产生"缺页中断"由操作系统把当前所需的页面装入主存。
若在装入页面时主存中无空闲块,则由操作系统根据某种"页面调度"算法选择适当的页面调出主存换入所需的页面。
P146l常用的页面调度算法:
FIFO、LRU、LFU
页面调度:
当主页中无空闲块时,为了装入一个页面,就必须按某种算法将主存中某个页调出,调入所需装入的页面。
常用的算法有:
先进先出调度算法(FIFO)、最近最少使用调度算法(LRU)和最近最不常用调度算法(LFU)。
特别要注意掌握的就是LRU(最近最少使用调度算法)的算法,如何进行调度。
缺页中断率f=F/A,这里的f就称为缺页中断率。
A为作业执行中调入页面的总次数,F为访问的页面尚未装入主存的次数。
l操作系统与硬件如何配合来实现存储保护的?
答:
硬件中设置了两个寄存器来限定用户程序执行时可以访问的空间范围。
这两个寄存器是基址寄存器和限长寄存器,用来限定用户程序执行时可以访问的主存空间范围。
程序执行时,系统对每一个访问内存的地址进行核对:
"基址寄存器值(存放用户程序在主存中的起始地址)≤访问地址≤基址寄存器值+限长寄存器值(存放用户程序占用主存的长度)"成立,则允许访问;否则,不允许访问。
这样就保护了该区域以外的存储信息不受到破坏,一旦程序执行中出错也不会涉及其他程序。
注:
中央处理器在管态下执行程序时候,对访问主存的地址不进行核对。
第五章设备管理(要求达到"识记"层次)
输入/输出管理这部分重点掌握四种输入/输出控制方式特点及相互比较、中断处理、SPOOLing技术,提高性能的缓冲策略等。
磁盘管理,重点掌握磁盘管理各种调度算法的基本原理及其应用。
l什么是输入输出操作:
主存储器与外围设备之间的信息传送操作称为输入输出操作。
l对于存储型设备,输入输出操作的信息传输单位为"块"。
对输入输出型设备,输入输出操作的信息传输单位为"字符"。
l独占设备是指每次只能供一个作业执行期间单独使用的设备。
如输入机、磁带机、打印机等。
l共享设备是指允许几个作业执行期间可同时使用的设备。
共享设备的"同时使用"的含义是指多个作业可以交替启动共享设备,其实是当一个作业正在使用设备时其他作业暂不能使用,即每一时刻仍只有一个作业占用,但当一个作业正在使用设备时其他作业就可使用。
l磁盘的结构
l访问磁盘的操作时间
l磁盘的驱动调度:
系统决定等待磁盘访问者的执行次序的工作就是磁盘的"驱动调度"。
对磁盘进行驱动调度的目的:
有利于系统效率的提高。
l移臂调度算法包括以下四种:
1)先来先服务算法FCFS;
根据访问者提出访问请求的先后次序来决定执行次序。
2)最短寻找时间优先调度算法SSTF;
从等待的访问者中挑选寻找时间最短的那个请求执行,而不管访问者的先后次序。
3)电梯调度算法SCAN;
从移动臂当前位置沿移动方向选择最近的那个柱面的访问者来执行,若该方向上无请求访问时,就改变移动方向再选择。
4)单向扫描调度算法。
从0柱面开始往里单向扫描,扫到哪个执行哪个。
l输入输出结构:
计算机系统中,CPU执行"启动外设(I/O)"指令时,把控制移交给I/O控制系统,完成外设与主存之间的信息传送,而CPU可继续并行执行程序,外设工作结束后形成一个"I/O操作结束"的中断事件通知CPU。
l中断响应过程中,中断装置要做以下三项工作:
1)是否有中断事件发生
2)若有中断发生,保护断点信息
3)启动操作系统的中断处理程序工作
中断装置通过"交换PSW"过程完成此项任务。
l虚拟设备SPOOL系统(领会)
1、实现虚拟设备的目的:
用一种物理设备模拟另一类物理设备,使各作业在执行期间只使用虚拟的设备而不直接使用物理的独占设备。
这种技术可使独占的设备变成可共享的设备,使得设备的利用率和系统效率都能得到提高。
2、实现虚拟设备的硬件条件:
大容量磁盘;中断装置和通道;中央处理器与通道并行工作的能力。
实现虚拟设备的软件条件是要求操作系统采用多道程序设计技术。
3、虚拟设备的实现原理:
对于多道程序,输入时将一批作业的信息通过输入设备预先传送到磁盘上。
输出时将作业产生的结果也全部暂时存在磁盘上而不直接输出,直到一个作业得到全部结果而执行结束时再行输出。
这样在执行过程中,不需要使用输入机和打印机。
因此在配置一台输入机和打印机的情况下,可以让多个作业同时执行,并且各个作业请求输入信息和输出结果的要求都能及时得到满足和实现。
4、SPOOL系统的组成和实现:
井:
为实现虚拟设备在磁盘上划出的专用存储空间,用于存放作业的初始信息和执行结果。
SPOOL系统由三部分程序组成:
1、预输入程序。
通过该程序把作业流中每个作业的初始信息传送到输入井保存,以备作业执行时使用。
2、井管理程序:
根据作业的请求,保证作业正确及时地从"井"中读取或写出信息。
3、缓输出程序。
它负责查看"输出井"中是否有待输出的结果信息,若有则启动打印机把作业结果输出。
4、spool系统可以缩短作业执行时间的原因。
作业的执行时间是指作业被装入主存储器到产生全部结果所需要的时间。
在SP在SPOOL系统控制下,作业执行时从磁盘上读/写信息代替低速的输入机和打印机的读/写操作,信息传送的速率显然是快得多。
因此作业的执行时间就缩短了。
第六章文件管理
文件管理这部分内容的重点是文件的几种逻辑物理结构,目录的管理
l目录管理要求P224l文件存储空间的管理,位示图
第七章操作系统接口
l操作系统与用户
(1)操作员接口(作业执行步骤)
操作系统提供给用户表示作业执行步骤的手段有两种:
作业控制语言和操作控制命令。
作业控制语言形成批处理作业。
操作控制命令进行交互处理。
(2)程序员接口(系统调用)
操作系统提供的系统调用主要有:
文件操作类,资源申请类,控制类,信息维护类系统调用往往在管态下执行。
当操作系统完成了用户通过"访管指令"请求的"系统调用"功能后,应使中央处理器从管态转换到目态工作。
lP261管态和目态
中央处理器的两种工作方式:
管态(系统态)和目态(用户态)。
在管态下,中央处理器可执行包含特权指令在内的一切指令;
目态次于管态,在目态下,中央处理器不准执行特权指令。
操作系统在管态下工作,用户程序在目态下工作。
lP261I/O保护
特权指令:
即可能影响系统安全的指令。
全文是为保护输入输出的完整性,把"启动I/O"等的一类可能影响系统安全的指令定义为特权指令。
特权指令的使用权限:
特权指令只允许操作系统使用,用户程序不能使用特权指令。
用户程序若要启动I/O,必须请求操作系统代为启动。
优点在于:
这种方式不但保证安全地使用外围设备,正确地传送信息,而且可减少用户为启动设备而必须了解外围设备特性以及启动等工作,大大方便了用户。
特别声明:
1:
资料来源于互联网,版权归属原作者
2:
资料内容属于网络意见,与本账号立场无关
3:
如有侵权,请告知,立即删除。