您的位置:首页 > 理论基础

计算机操作系统笔记——问答题

2015-07-05 10:52 260 查看
1、设备管理中的数据传送控制方式有哪几种?分别简述是如何实现的。

(1)直接控制:I/O控制,由用户进程来直接控制内存或CPU与外设间的信息传送。

(2)中断方式控制:进程通过CPU发出指令启动外设,该进程阻塞。当输入完成时,I/O控制器通过中断请求向CPU发出中断信号,CPU进行中断处理。

(3)DMA方式(Direct memory access):直接存储器访问。不通过CPU,直接在外设和内存之间开辟数据交换通路

(4)通道控制方式:CPU发出启动指令,指出通道相应的操作和I/O设备,该指令就可启动通道,并使该通道从内存中调出相应的通道指令执行。

2、在段页式虚拟存储系统中,不同进程之间是如何实现程序共享的?

在系统内设置有系统段表,用户段表指向系统段表,系统段表内有当前共享的用户数。当用户进程调入一个程序段之前,先查找系统段表,如果所需段存在,则将共享用户数加一,再将此段登记在用户进程段表中。当进程退出时,共享计数减一,最后一个用户删除共享代码段。

3、在生产者——消费者问题中,能否将生产者进程的wait(empty)和wait(mutex)语句互换?为什么?

不能。因为这样可能导致系统死锁。当系统中没有空缓冲时生产者进程的wait(mutex)操作获取了缓冲队列的控制权,而wait(empty)导致生产者进程阻塞,这时消费者进程也无法执行。

4、进程的基本状态有哪些?这些状态之间是如何转换的?

共有三种基本状态:就绪、执行、阻塞

就绪->执行:进程调度

执行->阻塞:I/O请求

阻塞->就绪:I/O完成

执行->就绪:时间片完

5、什么是设备独立性?

设备独立性即应用程序独立于使用的物理设备,在应用程序中使用逻辑设备名称来请求使用某类设备。系统在执行时,是使用物理设备名称。要实现设备独立性必须由设备独立性软件完成,包括执行所有设备的公有操作软件提供同一的接口,其中逻辑设备到物理设备的映射是由逻辑设备表LUT完成的。

6、处理机调度分为哪三级?各自的主要任务是什么?

1、作业调度:从一批后备作业中选择一个或者几个作业,给它们分配资源,建立进程,挂入就绪队列。执行完后,回收资源。

2、进程调度:从就绪进程队列中根据某个策略选取一个进程,使之占用CPU。

3、交换调度:按照给定的策略,将外存交换区中的进程调入内存,把内存中的非执行进程交换到外存交换区中。

7、什么是死锁?产生死锁的四个必要条件是什么?

死锁:当某进程提出资源申请后,使得系统中一些进程处于无休止的阻塞状态,在无外力作用下,不能再继续前进。

产生死锁的必要条件:互斥条件,请求和保持条件,不可抢占条件,循环等待条件。

8、什么是内存分页存储管理?有什么特点?

分页存储管理是将各进程的地址空间分成大小相等的页,把内存的存储空间也分成与页大小相同的片,称为物理块。在分配存储空间时,以块为单位来分配。

优点:有效解决存储器的零头问题,能在更高的程度上进行多道程序设计,从而相应提高了存储器和CPU的利用率。

缺点:采用动态地址变换降低CPU速度。表格占内存空间,费时来管理表格。存在页内碎片。作业动态的地址空间受内存容量限制。

9、什么是段式存储管理?它从逻辑地址到物理地址是怎么变换的?

把程序按内容或构成关系分成段,每段有自己的名字。一个用户作业或进程包含的段对应于一个二维虚拟储存器。以段为单位分配内存,然后通过地址映射机构把逻辑地址转换成物理地址。只将那些经常访问的段驻留内存,其他的段放在外存,需要时再调入。

地址变换过程:由虚地址中的段号为索引,查段表。找出该段在内存的起始地址,并将其和段内地址相加,从而得到物理地址。

10、什么是虚拟存储器,它有什么特点?

虚拟存储器是一种存储管理技术,用以完成用小的内存实现在大的空间中程序的运行工作。它是由操作系统提供的一个假想的特大存储器。但是虚拟存储器的容量并不是无限的,它由计算机的地址结构长度所确定,另外虚存容量的扩大是以牺牲CPU工作时间以及内、外存交换时间为代价的。

11、说明进程的结构、特征和基本状态:

结构:PCB(进程控制块)+程序+数据集合

特征:动态性、并发性、独立性、制约性、结构性

基本状态:就绪态、执行态、等待态

12、SPOOLing的含义是什么?说明SPOOLing系统的特点、功能以及控制过程。

答:SPOOLing是“外部设备联机并行操作”的缩写,它是关于慢速字符设备如何与计算机主机交换信息的一种技术,通常称为”假脱机技术”。

SPOOLing技术是在通道技术和多道程序设计基础上产生的。它由主机和相应的通道共同承担作业的输入输出工作,利用磁盘作为后援存储器,实现外围设备同时联机操作。

14、文件的物理结构有哪几类?哪种结构能支持大型文件?

文件的物理结构有:顺序文件、链接文件和索引文件。

其中索引文件能支持大型文件。

15、比较基于索引节点和基于符号链的文件共享方法。

基于索引节点的文件共享,是在文件的目录中填上需要共享文件的索引节点的序号,在索引节点中加上用户计数。基于符号链的文件共享是建立一种特殊的链接文件,内容为需要共享的文件的路径和名字,访问该文件时,根据路径找到共享的文件。

基于索引节点的文件共享访问速度很快,但可能使索引节点指针悬空;基于符号连的文件共享安全,但访问速度慢,要占用索引节点。

16、银行家算法:

在银行家算法中,若出现下述的资源分配情况:



试问:

1)该状态是否安全?

2)若进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它?

3)如果系统立即满足P2的上述请求,系统是否立即进入死锁状态?

1、此时可用资源1,6,2,2,计算每个进程经过分配后还需要资源的数量为

P0:0 0 1 2

P1:1 7 5 0

P2:2 3 5 6

P3:0 6 5 2

P4:0 6 5 6

此时可将资源分配给P0,然后将P0已分配的资源回收,得到资源1,6,5,4

可再将资源分配给P3,然后将P3分配的资源回收,得到1,9,8,6

将资源分配给P1,然后回收,得到2,9,8,6

将资源分配给P2,然后回收,得到3,12,13,10

最后将资源分配给P4。

找到该安全序列为P0,P3,P1,P2,P4,故系统是安全的。

2、P2发出请求向量Request(1,2,2,2)后,系统按照银行家算法进行检查:

Request2(1,2,2,2)≤Need2(2,3,5,6);

Request2(1,2,2,2)≤Available(1,6,2,2);

系统先假定可为P2分配资源,并修改Available,Allocation2和Need2向量:

Availabe=(0,4,0,0)Allocation2=(2,5,7,6)

Need2=(1,1,3,4)

进行安全性检查:此时对所有进程,条件Needi≦ Available(0,4,0,0)都不成立,即Available不能满足任何进程的请求,故系统进入不安全状态。因此,当进程P2提出请求Request(1,2,2,2)后,系统不能将资源分配给它。

3、若系统立即满足P2的请求,并没有马上进入死锁状态。因为,此时上述进程并没有申请新的资源,并未因得不到资源而进入阻塞状态。只有当上述进程提出新的请求,并且导致所有没有执行完的多个进程因得不到资源而进入阻塞时,系统才陷入死锁状态。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: