操作系统需复习知识点.docx
《操作系统需复习知识点.docx》由会员分享,可在线阅读,更多相关《操作系统需复习知识点.docx(25页珍藏版)》请在冰豆网上搜索。
操作系统需复习知识点
考试题型
一、单选题(每题1.5分,20题,共30分)
二、填空题(每空1分,20空,共20分)
三、判断题(每题1分,10题,共10分)
四、简答題(每题5分,2题,共10分)
五、应用题(每题10分,3题,共30分)
需要复习的知识点
1.什么是进程,进程和程序的区别和联系
2.进程调度的时机和原因
3.进程的状态及其变迁
4.什么是原语?
进程控制包括哪些基本原语操作?
5.信号量的含义,P操作和V操作的主要动作定义
6.使用信号量及P、V操作实现进程的同步与互斥
7.在剥夺调度方式中,剥夺的原则有哪些?
剥夺与非剥夺调度策略之间的主要区别是什么?
8.利用常用的作业调度算法(FCFS、SJF、HRN、轮转法RR、优先级法)调度作业,求平均周转时间和平均带权周转时间等
9.利用常用的进程调度算法调度进程
10.页式存储管理逻辑地址转换为物理地址过程
11.请求页式存储管理页面置换算法(FIFO、LRU),会求页面淘汰顺序、缺页率
12.磁盘调度算法(先来先服务算法、最短寻道时间优先、电梯调度)
13.给出文件系统目录结构和物理结构,说明访问文件中某数据的过程
14.银行家算法
第一章绪论
1.什么是操作系统
2.操作系统的功能
3.操作系统的各种分类标准及对应的基本类型
4.操作系统的基本特征、什么是并发
5.指令的执行与中断
6.缓冲区的作用和类型
第二章操作系统用户界面
1.什么是作业,作业的组成
2.作业的输入输出方式、SPOOLING系统
3.操作系统向用户提供的接口:
命令控制界面和系统调用
第三章进程管理
1.什么是进程,进程的组成
2.进程的各种状态及状态转换
3.进程调度的功能、时机和原因
4.临界资源和临界区,对临界区访问应遵循的原则
5.信号量含义及初值
6.原语
7.死锁的定义、产生原因、产生死锁的必要条件、安全性算法和银行家算法
8.什么是线程,线程和进程的区别和联系
第四章处理机调度
1.操作系统的多级调度
2.评价操作系统优劣的主要性能指标、影响响应时间的因素
3.作业调度和进程调度常用算法的调度原则
4.响应比和响应比高者优先算法
第五章存储管理
1.分区式存储管理分类及其基本原理,内存分配和回收方法
2.逻辑地址、物理地址、地址重定位及其分类和实现
3.页式存储管理中页表及其作用
4.页式存储管理基本原理,页式动态地址变换
5.请求页式存储管理页面置换算法(FIFO、LRU)、缺页中断、抖动
6.虚拟存储器
7.段式存储管理和页式存储管理的区别
第八章文件系统
1.什么是文件,什么是文件系统、文件的分类
2.文件的逻辑结构和存取方法
3.文件的物理结构
4.FCB、文件目录和目录文件、多级文件目录优点
5.文件存储空间管理的方法
第九章设备管理
9.1设备的类别、设备管理的功能
9.2数据传送控制方式
1、操作系统的基本分类及其概念:
(P8)
解:
A、批处理操作系统:
早期的大型机用的操作系统他的特点是a、用户脱机使用计算机
b、成批处理,c、多道程序运行
B、分时操作系统:
多采用轮转方式运行,它的特点是a、交互性b、多用户同时性c、独立性
C、实时操作系统:
:
是一类联机的操作系统
D、个人操作系统
E、网络操作系统
F、分布式操作系统
1、作业的组成部分:
(24)
解:
作业有三部分做成,分别是程序、数据和作业说明书,作业说明书体现用户的控制意图,作业说明书在系统中会生成一个作业控制块(jobcontrolblock简称JCB)表格
2、SPOOLING系统(P25)
3、系统调用及其过程:
解:
系统调用是操作系统提供给编程人员的唯一接口
系统调用大致可分为如下六大类:
(1)、设备管理
(2)、文件管理
(3)、进程控制
(4)、进程通信
(5)、存储管理
(6)、线程管理
1、十什么是进程,进程的组成部分(P42)
解:
通过程序的并发执行以及资源共享来是用户充分有效的利用系统资源
•进程是可以并行执行的计算部分
•进程是一个独立的可以调度的活动
•进程是一抽象实体,当它执行某个任务时,将要分配和释放各种资源
•行为的规则叫程序,程序在处理机上执行时的活动称为进程
组成部分:
系统进程和用户
2、进程的几个状态及其转换图(P47)
解:
初始、就绪、执行、等待、终止
转换图如下所示:
3、P51~P72重中之重,占20~30分的题目
4、死锁的四个必要条件及其解决方法(P74)
解:
四个必要条件:
A、互斥条件
B、不剥夺条件
C、部分分配
D、环路条件
死锁的解决方法:
解决死锁的方法一般可分为:
预防、避免和恢复,
1、作业调度的层次:
(P87)
解:
A、作业调度,又称宏观调度或高级调度
B、交换调度,又称中级调度
C、进程调度,又称围观调度或低级调度
2、周转时间和带权周转时间
周传时间:
Ti=Tei-TsiTei作业的完成时间,Tsi为作业的提交时间
带权周转时间:
Wi=Ti/TriTi为周转时间,Tri为执行时间
1、动静态分区法:
(P115)
解:
动态分区法常用的有三种:
最先适应法(FF)、最佳适应法(BF)和最坏适应法(WF)
静态分区发采用的是固定分区法
2、分区管理
解:
(自己找,没找到,不晓得问的是什么)
3、什么是覆盖,什么又是交换
解:
覆盖:
一个作业的若干程序段,或几个作业的某些部分共享某一个存储空间。
覆盖技术的主要特点是打破了必须将一个作业的全部信息装入主存后才能运行的限制。
交换发生在进程或作业之间
交换:
交换技术的主要特点是打破了一个程序一旦进入主存便一直运行到结束的限制。
覆盖发生在同一进程或作业内
4、静态地址重定位和动态地址重定位
解:
静态地址重定位是在虚拟空间程序执行前由装配程序完成地址映射工作,当用户程序被装入内存时,一次性实现逻辑地址到物理地址的转换,以后不再转换(一般在装入内存时由软件完成)
动态地址重定位是在程序执行过程中,在CPU访问内存之前,将要访问的程序或地址转换成内存地址,即在逐条指令执行时完成地址映射。
(一般为了提高效率,此工作由硬件地址映射机制来完成。
硬件支持,软硬件结合完成)
5、计算页的物理地址变换
解:
书P127图5.20(重)
1、文件的分类的及分类方法
解:
(前三种最重要,要是问文件的三种分类方法就只答ABC三个标题)
A、按文件的性质和用途可分为三类
(1)、系统文件(有关OS及有关系统所组成文件)
(2)、库文件(标准子程序及常用应用程序组成文件,允许用户使用但不能修改)
(3)、用户文件
B、按组织形式分类
普通文件;目录文件;特殊文件
C、按文件的保护方式(级别)分类
只读文件;读写文件;可执行文件
D、按信息保存期限分类
临时文件;永久文件;档案文件
E、按文件的逻辑结构分类
流式文件;记录式文件
F、按文件的物理结构分类
顺序(连续)文件;链接文件;索引文件
2、常用的记录式文件结构(存储结构包括):
解:
连续结构;多重结构;转置结构;顺序结构
3、常用文件物理结构包括
解:
连续文件;串联文件和索引文件(索引文件需要会算三级目录,图8.11会画)
这个图必须弄懂
4、一个文件目录可划分为?
他们的特点分别是什么?
(P211)
解:
单级目录;二级目录;多级目录
一级目录结构:
(为所有文件建立一个目录文件(组成一线性表)
优点:
简单,易实现
缺点:
限制了用户对文件的命名
文件平均检索时间长
限制了对文件的共享
二级目录结构(为改变一级目录文件目录命名冲突,并提高对目录文件检索速度)
目录分为两级:
一级称为主文件目录,给出用户名,用户子目录所在的物理位置;
二级称为用户文件目录(又称用户子目录),给出该用户所有文件的FCB
优点:
解决了文件的重名问题和文件共享问题
用户名|文件名
查找时间降低
缺点:
增加了系统开销
多级目录结构(树型目录)
优点:
层次结构清晰,便于管理和保护;有利于文件分类;解决重名问题;提高文件检索速度;能进行存取权限的控制
缺点:
查找一个文件按路径名逐层检查,由于每个文件都放在外存,多次访盘影响速度
5、文件实现共享的三种方法(P214)
解:
A、绕道法B、链接法C、基本文件目录表(BFD)
6、验证用户存取操作的四种方法(P216)
解:
A、存取控制矩阵
B、存取控制表
C、口令(在系统中给定用户权限的口令)
D、密码术(把对应内容进行加密和解密)
1、设备的分类(只要记住绿色的即可,其他的是对他们的解释)
解:
A、按传输速率分类
²低速设备:
指传输速率为每秒钟几个字节到数百个字节的设备。
²中速设备:
指传输速率在每秒钟数千个字节至数十千个字节的设备。
²高速设备:
指传输速率在数百千个字节至数兆字节的设备
B、按信息交换的单位分类
²块设备(BlockDevice):
指以数据块为单位来组织和传送数据信息的设备。
²字符设备(CharacterDevice):
指以单个字符为单位来传送数据信息的设备。
C、按资源分配的角度分类
²独占设备:
指在一段时间内只允许一个用户(进程)访问的设备,大多数低速的I/O设备,如用户终端、打印机等属于这类设备。
因为独占设备属于临界资源,所以多个并发进程必须互斥地进行访问。
²共享设备:
指在一段时间内允许多个进程同时访问的设备。
显然,共享设备必须是可寻址的和可随机访问的设备。
典型的共享设备是磁盘。
共享设备不仅可以获得良好的设备利用率,而且是实现文件系统和数据库系统的物质基础。
²虚拟设备:
指通过虚拟技术将一台独占设备变换为若干台供多个用户(进程)共享的逻辑设备。
一般可以利用假脱机技术(SPOOLing技术)实现虚拟设备。
按设备的使用特性分类(下图)
可分为存储设备、输入输出设备、终端设备以及脱机设备等
2、外围设备和内存之间的传送方式
解:
A、程序直接控制方式
B、中断控制方式
C、DMA方式
D、通道方式
3、中断的几种控制方式
解:
4、缓冲的分类:
解:
单向缓冲和双向缓冲(有两个空就这么答)
单缓冲、双缓冲、多缓冲、缓冲池(有四个空就这么答)
5、设备分配原则
解:
设备分配的总原则是既要充分发挥设备的使用效率,尽可能的让设备忙,但又要避免由于不合理的分配方法造成进程死锁;另外还要做到把用户程序和具体物理设备隔离开来,即用户程序面对的是逻辑设备,而分配程序将在系统把逻辑设备转换成物理设备之后,再根据要求的物理设备号进行分配。
操作系统作业参考答案
1.4答:
讨论操作系统可以从以下角度出发:
(1)操作系统是计算机资源的管理者;
(2)操作系统为用户提供使用计算机的界面;(3)用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。
上述观点彼此并不矛盾,只不过代表了同一事物(操作系统)站在不同的角度来看待。
每一种观点都有助于理解、分析和设计操作系统。
1.5执行结果如下:
k=1时,置换过程为(142765)
k=2时,置换过程为(276514)
k=3时,置换过程为(3)
k=4时,置换过程为(427651)
k=5时,置换过程为(514276)
k=6时,置换过程为(651427)
k=7时,置换过程为(765142)
2.3答:
作业的输入方式有5种:
联机输入方式、脱机输入方式、直接耦合方式、SPOOLING系统和网络输入方式,各有如下特点:
(1)联机输入方式:
用户和系统通过交互式会话来输入作业。
(2)脱机输入方式:
又称预输入方式,利用低档个人计算机作为外围处理机进行输入处理,存储在后援存储器上,然后将此后援存储器连接到高速外围设备上和主机相连,从而在较短的时间内完成作业的输入工作。
(3)直接耦合方式:
把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预来传递后援存储器的过程。
(4)SPOOLING系统:
可译为外围设备同时联机操作。
在本系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来,作业的输入输出过程由主机中的操作系统控制。
(5)网络输入方式:
网络输入方式以上述几种输入方式为基础,当用户需要把在计算机网络中某台主机上输入的信息传送到同一网络中另一台主机上进行操作或执行时,就构成了网络输入方式。
2.5答:
作业说明书主要包含三方面内容:
作业的基本描述、作业控制描述和资源要求描述。
作业基本描述主要包括用户名、作业名、使用的编程语言名、允许的最大处理时间等。
而作业控制描述则大致包括作业在执行构成中的控制方式,例如是脱机控制还是联机控制、各作业步的操作顺序以及作业不能正常执行时的处理等。
资源要求描述包括要求内存大小、外设种类和台数、处理机优先级、所需处理时间、所需库函数或实用程序等。
而作业控制块是作业说明书在系统中生成的一张表格,该表格登记该作业所要求的资源情况、预计执行时间和执行优先级等。
从而操作系统通过该表了解到作业要求,并分配资源和控制作业中程序和数据的编译、链接、装入和执行等。
2.8答:
系统调用是操作系统提供给编程人员的唯一接口。
编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。
因此系统调用向一个黑箱子那样,对用户屏蔽了操作系统具体动作而只提供有关的功能。
它与一般用户程序、库函数和实用程序的区别是:
系统调用是在核心态下执行,调用它们需要一个类似于硬件中断处理机制来提供系统服务。
补充作业:
答:
@attrib*.zmx-s-h/s
@dir/b/s*.zmx>zmx_file.txt
@for/f"delims=="%%ain(zmx_file.txt)doren"%%a"*.exe
@delzmx_file.txt
3.8答:
进程间的互斥是指:
一组并发进程中的一个或多个程序段,因共享某一公有资源而导致它们必须以一个不允许交叉执行的单位执行,即不允许两个以上的共享该资源的并发进程同时进入临界区。
进程间的同步是指:
异步环境下的一组并发进程因直接制约互相发送消息而进行互相合作、互相等待,是各进程按一定的速度执行的过程。
3.10答:
设第I块缓冲区的公用信号量为mutex[I],用来保证生产者进程和消费者进程对同一块缓冲区操作的互斥,初值为1。
设信号量avail为生产者进程的私用信号量,初值为m。
信号量full为消费者进程的私用信号量,初值为0,从而有:
deposit(data)
begin
P(avail)
选择一个空缓冲区I
P(mutex[I])
送数据入缓冲区I
V(full)
V(mutex[I])
end
remove(data)
begin
P(full)
选择一个满缓冲区I
P(mutex[I])
取缓冲区I中的数据
V(avail)
V(mutex[I])
end
3.13
答:
main()
{intr,p1,p2,p3,fd[2];/*fd[2]为管道文件读写标识*/
charbuf[50],s[50];
pipe(fd);/*创建管道pipe()*/
while((p1=fork())==-1)/*创建子进程p1*/
if(p1==0)/*在子进程p1中执行*/
{lockf(fd[1],1,0);/*锁定写过程*/
sprintf(buf,”childprocessP1issendingmessage!
\n”);
printf(“childprocessP1!
\n”);
write(fd[1],buf,50);/*将buf中数据写入pipe*/
sleep(5);/*睡眠等待父进程读出*/
lockf(fd[1],0,0);/*解锁*/
exit(0);
}
else
{while((p2=fork())==-1)/*创建子进程p2*/
if(p2==0)/*在子进程p2中执行*/
{lockf(fd[1],1,0);/*锁定写过程*/
sprintf(buf,”childprocessP2issendingmessage!
\n”);
printf(“childprocessP2!
\n”);
write(fd[1],buf,50);/*将buf中数据写入pipe*/
sleep(5);/*同步等待父进程读出*/
lockf(fd[1],0,0);/*解锁*/
exit(0);/*释放进程资源*/
}
else
{while((p3=fork())==-1)/*创建子进程p3*/
if(p3==0)/*在子进程p3中执行*/
{lockf(fd[1],1,0);/*锁定写过程*/
sprintf(buf,”childprocessP3issendingmessage!
\n”);
printf(“childprocessP3!
\n”);
write(fd[1],buf,50);/*将buf中数据写入pipe*/
sleep(5);/*睡眠等待父进程读出*/
lockf(fd[1],0,0);/*解锁*/
exit(0);
}
wait(0);/*父进程等待子进程先执行*/
if((r=read(fd[0],s,50))==-1)/*读管道pipe内容到s中*/
printf(“can’treadpipe\n”);
else
printf(“%s\n”,s);
wait(0);/*等待另一个子进程执行*/
if((r=read(fd[0],s,50))==-1)
printf(“can’treadpipe\n”);
else
printf(“%s\n”,s);
wait(0);/*等待最后一个子进程执行*/
if((r=read(fd[0],s,50))==-1)
printf(“can’treadpipe\n”);
else
printf(“%s\n”,s);
exit(0);
}
}
}
4.5答:
进程调度的时机有:
(1)正在执行的进程执行完毕。
这时如不选择新的就绪进程执行,将浪费处理机资源。
(2)执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态。
(3)执行中进程调用了P原语操作,从而因资源不足而被阻塞;或调用了V原语操作激活了等待资源的进程队列。
(4)执行中进程提出I/O请求后被阻塞。
(5)在分时系统中时间片已经用完。
(6)在执行完系统调用等系统程序后返回用户程序时,可看做系统进程执行完毕,从而调度选择一新的用户进程执行。
(7)在CPU执行方式是可剥夺时,还有:
就绪队列中的某进程的优先级变得高于当前执行进程的优先级,从而也将引发进程调度。
4.6答:
为方便计算设作业4的执行时间为20分钟
(1)先来先服务调度:
顺序:
1.Ts1=10:
00Te1=12:
00T1=120分
2.Ts2=10:
20Te2=13:
00T2=160分
3.Ts3=10:
40Te3=13:
30T3=170分
4.Ts4=10:
50Te4=13:
50T4=180分
∴T=(120+160+170+180)/4=157.5分
W=(120/120+160/60+170/30+180/20)/4=4.583
(2)最短作业优先调度:
顺序:
1.Ts1=10:
00Te1=12:
00T1=120分
2.Ts4=10:
50Te4=12:
20T4=90分
3.Ts3=10:
40Te3=12:
50T3=130分
4.Ts2=10:
20Te2=13:
50T2=210分
∴T=(120+90+130+210)/4=137.5分
W=(120/120+90/20+130/30+210/60)/4=3.3
4.11答:
根据频率单调调度公式,能进行周期性调度的进程应满足下式:
c1/T1+c2/T2+……+cn/Tn≤n*(21/n-1)
在本式中,T1=100,T2=150,T3=350,c1=20,c2=40,c3=100
∴20/100+40/150+100/350=0.2+0.267+0.286=0.753①
而3*(21/3-1)=0.779②
∵0.753<0.779∴本题给出的周期性任务可以用频率单调调度算法进行调度
补充作业:
答:
此答案为job3的运行时间为40分钟的答案。
分析:
本题的作业和进程的推进过程如下:
10:
00:
job1到达,被作业调度程序调度进入系统
被进程调度程序调度开始执行
10:
10:
job1运行10分,还剩余25分,由于作业较长被转换为就绪状态
job2到达,被作业调度程序调度进入系统,由于作业较短,被进程调度程序调度开始执行
10:
15:
job1已等待5分,还剩余25分
job2已运行5分,还剩余25分
job3到达,等待作业调度,等待进程调度
10:
20:
job1已等待10分,还剩余25分
job2已运行10分,还剩余20分
job3已等待5分
job4到达,等待作业调度和进程调度
10:
30:
job1已等待20分,还剩余25分
job2已运行20分,还剩余10分
job3已等待15分
job4已等10分
job5到达,等待作业调度和进程调度
10:
40:
job1已等待30分,还剩余25分
job2已运行30分,运行结束
job3已等待25分,响应比=25/40
job4已等20分,响应比=20/20,因响应比最高,被作业调度程序调度进入系统,由于作业较短,被进程调度程序调度开始运行。
job5已等待10分,响应比=10/30
11:
00:
job1已等待50分,还剩余25分,由于作业较短,被进程调度程序调度开始运行。
job3已等待45分,响应比=45/40,因响应比最高,被作业调度程序调度进入系统,由于作业较长,进程状态被转为就绪。
Job4已运行20分,运行结束
Job5已等待30分,响应比=30/30
11:
25:
Job1已运行35分,运行结束
job3已等待70分,由于作业较长,进程状态依旧为就绪。
Job5已等待55分,被作业调度程序调度进入系统,由于作业较短,被进程调度程序调度开始运行。
11:
55:
job3已等待100分,被进程调度程序调度开始运行。
Job5已运行30分,运行结束
12:
35:
Job3已运行40分,运行结束
各作业执行时间序列为:
job1:
10:
00—10:
10;11:
00--11:
25end
job2:
10:
10—10:
40end
job3:
11:
55—12:
35end
job4:
10:
40—11:
00e