操作系统期末复习个人总结 - 副本

2018-12-11 22:09

删除:不要问为什么传这么多废话的整理上去,因为是为没时间复习的人准备的。确实是为没时间复习的人准备的。篇幅大,内容又少- -有时间复习的人根本就没必要浪费时间在这上面- -也不要问为什么传了那么多版本上去,是因为修改的人不同,时间不同。概括的内容都是最基础的,所以说全拿最多也就50分而已。超过50分实力的人,就别看了- -OK? 不是很喜欢某些人的抱怨。这是个人的东西,不是必须的!最后,这只适合没时间的人和一个学期没上课的人。(包括我自己- -)没上课的还是找个人开速成吧- - 第一章:操作系统引论

操作系统是控制和管理计算机软硬件资源,以尽量合理有效的方法组织多个用户共享多种资源的程序集合。操作系统的特征:并发,共享,虚拟,异步性。 操作系统提供给编程人员的唯一接口是系统调用。(程序接口) 现代操作系统的两个重要特征是并发和共享。

操作系统的基本类型有批处理操作系统,分时操作系统和实时操作系统三种。 计算机操作系统是方便用户、管理和控制计算机系统资源的系统软件。

操作系统为用户提供三种类型的使用接口,它们是命令方式和系统调用和图形用户界面。 操作系统分配资源以进程为基本单位。线程(thread),从操作系统管理角度看线程是指\进程的一个可调度实体\是处理机调度的基本单位: 从编程逻辑看线程是指\程序内部的一个单一的顺序控制流\。线程是进程的一个组成部分。

单道批处理系统的特征:(1)自动性(2)顺序性(3)单道性。

多道批处理系统的特征:多道性,无序性,调度性。优缺点:(1)资源利用率高(2)系统吞吐量大(3)平均周转时间长(4)无交互能力。(作业由程序、数据、JCB和作业说明书组成。) 引入多道程序目的:提高CPU的利用率,提高内存和I/O设备利用率,增加系统吞吐量 单道中如果同时存在10个进程,那么就绪队列最多有多少个进程。

分时:分时系统采用时间片轮转法,使一台计算机同时为多个终端服务。特点:①交互性。用户能够直接与计算机系统交互。②及时性。由于支持人机交互,所以主机应该尽快地对用户的要求给予响应。③独立性。这主要是指多个用户虽然在同时使用主机系统,但是他们相互之间是不干扰的。④多路性。分时操作系统在宏观上看,整个系统同时在为多个用户服务。实时:实时系统是指系统能及时响应外部事件的请求,在规定时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。特点:多路性,独立性, 及时性,交互性,可靠性。 分时和实时区别:分时系统控制的主动权在计算机,计算机按一定时间间隔,以固定时间片或不固定时间片去轮流完成多个提交的任务,只是在用户反应相对较慢时,不感到机器“走开”。而实时系统控制的主动权在用户,用户规定什么时间要计算机干什么,计算机不能“走开”。分时系统通用性强,交互性强,及时响应性要求一般(通常数量级为秒);实时系统往往是专用的,系统与应用很难分离,常常紧密结合在一起,实时系统并不强调资源利用率,而更关心及时响应性(通常数量级为毫秒或微秒)、可靠性等。 第二章:进程管理 进程的静态实体由( )、( )和( )三部分组成。程序,数据集合,进程控制块PCB 在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志. 进程和程序的区别: (1) 进程是程序在处理机上的一次执行过程,是一个动态概念;而程序是代码的有序集合,其本身没有任何运行的含义,是一个静态的概念。(2) 进程是一个状态变化的过程,是有生命期的,表现在它因创建而产生,因调度而执行,因得不到资源而暂停,因撤销而消亡;而程序是永久的,可以长久保存。(3) 进程和程序的组成不同。进程由程序、数据和进程控制块组成,而程序仅是代码的有序集合。(4) 进程与程序之间不是一一对于的。通过多次运行,同一个程序可以对应多个进程;通过调用关系,一个进程可以包含

- 1 -

多个程序。

在操作系统中引入线程概念的主要目的是( )。使得多个程序更好的并发执行同时又尽量减少系统的开销,有效的改善多处理机的性能。

进程和线程的区别:一个程序至少有一个进程,一个进程至少有一个线程. 线程的划分尺度小于进程,使得多线程程序的并发性高。 另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。从逻辑角度来看,多线程的意义在于一个应用程序中,有多个执行部分可以同时执行。但操作系统并没有将多个线程看做多个独立的应用,来实现进程的调度和管理以及资源分配。这就是进程和线程的重要区别。

如果系统有N个进程,则在等待队列中进程的个数最多可为( )个。N-1

进程状态转换图: 具有挂起状态的进程状态图 进程的三种基本状态及其转换 执行挂起 就绪 激活时间片完 活动静止就绪就绪挂起进程调度 I/O完成 激活 活动静止阻塞执行阻塞阻塞I/O请求挂起 下列进程状态的转换中,哪一个是不正确的( )。A.就绪?运行B.运行?就绪C.就绪? 阻塞 D.阻塞?就绪。C(一个进程状态的转换不一定会引起另一个进程的转换) 引起进程阻塞或被唤醒的主要事件是什么?请求系统服务;启动某种操作;新数据尚未到达;无新工作可做。

释放请求I/OP(S)进程请求一个单位的该类资源,V(S)执行进程释放一个单位资源,S的初始值不能为负,S初始值为1时,表示只允许一个进程访问临界资源,此时的信号量转化为互斥信号量,当信号量S的当前值为-5时,则表示系统中共有5个等待进程。 例题:吃苹果问题int S=1; int Sa=0; int So=0;

father() son() daughter() { while(1) { while(1) { while(1) { { { P(S); P(So); P(Sa);

将水果放入盘中; 从盘中取出桔子; 从盘中取出苹果; if(放入的是桔子) V(S); V(S); V(So); 吃桔子; 吃苹果; else V(Sa); } } } } } }

在操作系统中,P、V操作是一种_______。(A)机器指令 (B)系统调用命令(C)作业控制命令 (D)低级进程通讯原语。D 第三章:处理机调度与死锁

- 2 -

释放调度算法:先来先服务调度算法FCFS,短作业(进程)优先调度算法SJ(P)F,高优先权优先调度算法HPF,时间片轮转调度算法RR。(如果系统中的所有作业是同时到达的,则使作业平均周转时间最短的作业调度是短作业优先算法。)

例题:有5个任务A,B,C,D,E,它们几乎同时到达,预计它们的运行时间为10,6,2,4,8mn。其优先级分别为3,5,2,1和4,这里5为最高优先级。对于下列每一种调度算法,计算其平均进程周转时间(进程切换开销可不考虑)。

(1)先来先服务(按A,B,c,D,E)算法。(2)优先级调度算法。(3)时间片轮转算法。 解:(1)采用FCFS的调度算法时,各任务在系统中的执行情况如下表所示:

执行次序 A B C D E 运行时间 10 6 2 4 8 优先数 3 5 2 1 4 等待时间 周转时间 0 10 16 18 22 10 16 18 22 30 所以,进程的平均周转时间为:

T=(10+16+18+22+3O)/5=19.2 min

(2)采用优先级调度算法时,各任务在系统中的执行情况如下表所示:

执行次序 B E A C D 运行时间 6 8 10 2 1 优先数 5 4 3 2 1 等待时间 周转时间 0 6 14 24 26 6 14 24 26 27 所以,进程的平均周转时间为:T=(6+14+24+26+27)/5=19.4 min (3)采用时间片轮转算法时,假定时间片为2min,各任务的执行情况是:(A,B,C,D,E),(A,B,D,E),(A,B,E),(A,E),(A)。设A~E五个进程的周转时间依次为T1~T5,显然,T1=3Omin, T2=22min, T3=6min,T4=16min,T5=28min 所以,进程的平均周转时间为:T=(30+22+6+16+28)/5=20.4min 什么是临界资源和临界区? a. 一次仅允许一个进程使用的资源成为临界资源. b. 在每个进程中,访问临界资源的那段程序称为临界区。

什么是死锁?产生死锁的必要条件是什么?所谓死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,他们都将无法再向前推进。必要条件:互斥条件,请求和保持条件,不剥夺条件,环路等待条件。

产生死锁的原因是什么?① 系统资源不足;② 进程推进顺序不合适(进程在运行过程中,请求和释放资源的顺序不当)。产生死锁的根本原因:争夺共享资源。

避免死锁的银行家算法:例题:系统中有五个进程P1、P2、P3、P4、P5,有三种类型的资源:R1、R2、和R3。在T0时刻系统状态如表所示。若采用银行家算法实施死锁避免策略,回答下列问题:1,T0时刻是否为安全状态?为什么?2,若这时P4请求资源(1,2,0),是否能实施资源分配?为什么?3,在上面的基础上,若进程P3请求资源(0,1,0),是否能实施资源分配?为什么?

T0时刻系统状态

已分配资源数量 R1 R2 R3 最大资源需求量 R1 R2 R3 - 3 -

P1 P2 P3 P4 P5

剩余资源数 0 2 0 1 0 0 0 0 1 3 R1 3 1 0 3 5 3 0 2 6 4 0 R2 3 0 7 6 3 6 1 5 5 5 5 R3 0

解:

1. T0时刻是安全的,安全序列为:P1,P4,P5,P2,P3 2. P4请求资源(1,2,0),根据银行家算法,预分配后系统是安全的,安全序列为:P1,

P4,P5,P2,P3

3. P3请求资源(1,1,0),根据银行家算法,预分配后系统不安全,所以不能实施资源

分配。

第四章:存储器管理 固定分区分配:固定分区法就是把内存区固定地划分为若干个大小不等的区域。分区划分的原则由一般系统操作员或操作系统决定。例如可划分为长作业分区和短作业分区。分区一旦划分结束,在整个执行过程中每个分区的长度和内存的总分区个数将保持不变。

动态分区分配算法:1,首次适应算法FF。2,循环首次适应算法NF。3,最佳适应算法BF。4,最坏适应算法WF。最坏适应分配算法要扫描整个空闲分区表或链表,总是挑选一个最大的空闲区分割给作业使用。5,快速适应算法QF。该算法又称为分类搜索法,是将空闲分区根据其容量大小进行分类,对于每一类具有相同容量的所有空闲分区,单独设立一个空闲分区链表。

回收内存图:a,不必为回收分区分配新表项,而只需修改其前一分区F1的大小。b,回收分区与F2合并形成新空闲分区,但用回收区的首址作为空闲分区的首址,大小为两者之和。C,合并F1,F2和回收分区,使用F1的表项和首址,取消F2表项,大小为三者之和。d,都不相邻时,回收分区单独建立一新表项,填写回收区的首址和大小,并根据其首址插入到空闲链中的适当位置。

为什么要引入动态重定位?如何实现?静态重定位是在链接装入时一次集中完成的地址转换,但它要求连续的一片区域,且重定位后不能移动,不利于内存空间的有效使用。所以要引入动态重定位,它是靠硬件地址变换部分实现的。通常采用重定位寄存器等实现。 把作业地址空间中使用的逻辑地址变成内存中的物理地址称为_______。 (A)加载 (B)重定位 (C)物理化 (D)逻辑化 B 当内存碎片容量大于某一作业所申请的内存容量时( )。

A、可以为这一作业分配内存 B、不可以为这一作业分配内存 C、拼接后,可以为这一作业分配内存 D、一定能够为这一作业分配内存。 D

页面大小与可能发生的缺页中断的关系:内存大小一定情况下,页面大,那么页面数会少,

- 4 -

缺页中断次数也可能会少。(一条指令在执行期间,可能产生多次缺页中断。)

对于请求分页式存储管理系统,若把页面的大小增加一倍,则缺页中断次数会减少一半。(错) 试说明为什么引入缺页中断?因为虚拟页式存储系统中允许作业的一部分页面在内存,只有引入缺页中断,才能将不在内存的信息页从外存调入内存,中断恢复后可以继续执行。

例题:某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:

页号 物理块号 0 5 1 10 2 4 3 7

则逻辑地址0A5C(H)所对应的物理地址是什么?要求:写出主要计算过程。 解:[分析]页式存储管理的逻辑地址分为两部分:页号和页内地址。

由已知条件“用户编程空间共32个页面”,可知页号部分占5位;由“每页为1KB”,10

1K=2,可知内页地址占10位。由“内存为16KB”,可知有16块,块号为4位。

逻辑地址0A5C(H)所对应的二进制表示形式是:000 1010 0101 1100 ,根据上面的分析,下划线部分为页内地址,编码 “000 10” 为页号,表示该逻辑地址对应的页号为2。查页表,得到物理块号是4(十进制),即物理块地址为:01 00 ,拼接块内地址10 0101 1100,得01 0010 0101 1100,即125C(H)。

例题:考虑一个由8个页面,每页有1024个字节组成的逻辑空间,把它装入到有32个物理块的存储器中,问:(1)逻辑地址需要多少位表示?(2)绝对地址需要多少位表示?

310

解:因为页面数为8=2,故需要3位二进制数表示。每页有1024个字节,1024=2,于是页

5

内地址需要10位二进制数表示。32个物理块,需要5位二进制数表示(32=2)。(1)页的逻辑地址由页号和页内地址组成,所以需要3+10=13位二进制数表示。(2)页的绝对地址由块号和页内地址的拼接,所以需要5+10=15位二进制数表示。

例题:现有一个作业,在段式存储管理的系统中已为其主存分配,建立的段表内容如下:

段号 主存起始地址 段长度 0 120 40 1 760 30 2 480 20 3 370 20

计算逻辑地址(2,18),(0,50),(3,15)的绝对地址是多少? (注:括号中第一个元素为段号,第二个元素为段内地址) 解: 段式存储管理的地址转换过程为:

(1)根据逻辑地址中的段号查段表的相应栏目; (2)根据段内地址<段长度,检查地址是否越界;

(3)若不越界,则绝对地址=该段的主存起始地址+段内地址。

逻辑地址(2,18)查段表得段长度为20,段内地址18<20,地址不越界,段号2查表得段首地址为480,于是绝对地址为480+18=498。

逻辑地址(0,50)查段表得段长度为40,段内地址50>40,地址越界,系统发出“地址越界”中断。

逻辑地址(3,15)查段表得段长度为20,段内地址15<20,地址不越界,段号3查表得段首地址为370,于是绝对地址=370+15=385。

在段页式系统中,为了获得一条指令或数据,须三次访问内存。

- 5 -


操作系统期末复习个人总结 - 副本.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:浙美版二年级美术上册教学计划

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: