操作系统题目1

1.内存管理中的 LRU 方法是用来管理什么的?AD

  A.虚拟内存的分配

  B.虚拟内存的释放

  C.物理内存的分配

  D.物理内存的释放

解释:LRU算法表示最近一段时间内,最长时间没有被访问的页面予以淘汰

   在进程运行过程中,若其访问的页面不在内存而需要将其调入,但内存已无空闲空间时,需要从内存中调出一页程序或数据,送入磁盘的对换去。但应该将哪个页面,需要根据一定的算法来确定。

   所以LRU是用来管理物理内存的释放和虚拟内存的分配的。

2.int main(){fork()||fork();}共创建几个进程:__3___
解释:fork函数在父进程中返回新创建子进程的进程ID,大于0,此时父进程根据左值优先原则,不在与后面进行异或;
     fork函数在子进程中返回0,此时子进程仍然需要进行下一个fork函数
 
3.在Unix系统中,处于()状态的进程最容易被执行。C
  A.辅存睡眠
  B.内存睡眠
  C.内存就绪
  D.辅存就绪
  内存就绪就是活动就绪,辅存就绪是静止就绪,静止就绪需要转换到活动就绪,才能在时间片到来而进入到运行状态。
 
 4.当计算机系统没有用户执行时,处理机完全处于空闲状态。(错误)
  不会处于空闲状态,会处于监听状态,一有请求立即响应!
 
5.批处理系统不允许用户随时干涉自己程序的运行。(正确)
(1)操作系统有批处理系统(单道批处理系统和多道批处理系统);分时系统实时系统
(2)批处理系统:把一批作业一起交给系统,中间不能进行干预
(3)分时系统允许同时有多个用户使用,即把一段时间按照某种规则分给每一个用户执行相关的操作;
(4)实时系统指系统能够及时响应外部的请求
 

6.在单处理机计算机系统中,多道程序的执行具有()的特点。ABC

A.程序执行宏观上并行
B.程序执行微观上串行
C.设备和处理机可以并行
D.设备和处理机只能串行
解释:1、多道:即计算机内存中同时存放几道相互独立的程序
   2、宏观上并行:同时进入 系统的几道程序都处于运行过程中,即它们先后开始了各自的运行,但都未运行完毕。
   3、微观上串行:从微观上看,内存中的多道程序轮流地或分时地占有处理机。
 
7.如果信号量的当前值为-4,则表示系统中在该信号量上有(4)个进程等待。
 表示有4个等待进程。
 信号量的当前值如果是正值N该值表示有N个可用资源
 如果为0,则表示所有资源全部被分配,同时没有进程处于等待状态
 如果为负数N,则表示全部资源分配完毕,且还有N个进程处于等待该资源的状态。

关于信号量的通俗解释:

有些房间,可以同时容纳n个人,比如厨房。也就是说,如果人数大于n,多出来的人只能在外面等着。这好比某些内存区域,只能供给固定数目的线程使用。

这时的解决方法,就是在门口挂n把钥匙。进去的人就取一把钥匙,出来时再把钥匙挂回原处。后到的人发现钥匙架空了,就知道必须在门口排队等着了。这种做法叫做"信号量"(Semaphore),用来保证多个线程不会互相冲突。它常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源

 
 8.若系统中有五台打印机,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则在不发生死锁的情况下至多允许__B___个进程参与竞争
 A.5
 B.4
 C.3
 D.2
 原因:这就是哲学家就餐问题的副本嘛,当5个进程的时候如果都同时申请到了1台,就发生死锁了。如果是4个进程,那必然有一个能申请到2台。
 
  死锁的发生必须具备以下四个必要条件。
  1 )互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。
  2 )请求和保持条件:指进程已经保持至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放
  3 )不剥夺条件:指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。
  4 )环路等待条件:指在发生死锁时,必然存在一个进程——资源的环形链,即进程集合{P0,P1,P2,···,Pn}中的P0正在等待一个P1占用的资源;P1正在等待P2占用的资源,……,Pn正在等待已被P0占用的资源。
  因此为了避免发生死锁,则不能生成此资源的环形链,则4个进程是极限了。
 
9.从设备分配的角度来看,设备分成()ACD
  A.独享设备
  B.系统设备
  C.虚拟设备
  D.共享设备

 原因:也可以说是按照设备共享属性分类:

  独占设备:在一段时间内只允许一个进程访问的设备,多个并发执行的进程应该互斥的访问该类设备。如打印机。
  共享设备:一段时间内允许多个进程同时访问设备,这些进程可以交叉的访问设备的不同数据块上的数据。如,磁盘
  虚拟设备:通过虚拟技术将一台独占设备变成可由多个进程所共享的若干台逻辑设备。如,使用SPOOLing技术可以将一台打印机虚拟成多台逻辑打印机。
  SPOOLing技术(假脱机技术)就是外部设备同时联机操作,实现虚拟设备功能,多个进程同时使用一独享设备,而对每一进程而言,都认为自己独占这一设备,不过该设备是逻辑上的设备
  假脱机技术中,对打印机的操作实际上是用借助磁盘存储实现的,这样实现的打印机构是(A)。

    A.共享设备

    B.独占设备

    C.虚拟设备

    D.物理设备

  假脱机又称为Spooling,是用来保存设备输出的缓冲区,这些设备不能接受交叉的数据流。例如打印机虽然只能一次打印一个任务,但是可能有多个程序希望希望并发打印而又不能将其输出混在一起。应用程序的输出先是假脱机到一个独立的磁盘上。当应用程序完成打印时,假脱机系统将响应的待送打印机的假脱机文件进行排队。
  虚拟设备是种技术,将独占设备变成共享设备
 
10.原语的执行是屏蔽中断的。 

  原语:它是由若干条机器指令所构成,用以完成特定功能的一段程序,为保证其操作的正确性,它应当是原子操作,即原语是一个不可分割的操作。所以,原语在执行的过程中,也是不能响应中断的

 11.选择在最近的过去使用次数最少的页面予以淘汰的算法称为(D)。
  A.OPT
  B.LRU
  C.MFU
  D.LFU
解释:
 (1) FIFO(First in First out),先进先出。其实在操作系统的设计理念中很多地方都利用到了先进先出的思想,比如作业调度(先来先服务),为什么这个原则在很多地方都会用到呢?因为这个原则简单、且符合人们的惯性思维,具备公平性,并且实现起来简单,直接使用数据结构中的队列即可实现。
 (2)LFU(Least Frequently Used)最近最少使用算法。它是基于“ 如果一个数据在最近一段时间内使用次数很少,那么在将来一段时间内被使用的可能性也很小 ”的思路。
 (3)LRU (Least Recently Used) 它的实质是,当需要置换一页时, 选择在最近一段时间里最久没有使用过的页面予以置换, 这种算法就称为最久未使用算法。
 (4)(OPT) 最优置换(Optimal Replacement)是在 理论上 提出的一种算法。其 实质 是:当调入新的一页而必须预先置换某个老页时,所选择的老页应是将来不再被使用,或者是在最远的将来才被访问。采用这种页面置换算法,保证有最少的缺页率

 (5)(SCR) 第二次机会算法基本思想是与FIFO相同的,但是有所改进,避免把经常使用的页面置换出去。当选择置换页面时,检查它的访问位。如果是0,就淘汰这页;如果访问位是1,就给它第二次机会,并选择下一个FIFO页面。当一个页面得到第二次机会时,它的访问位就清为0,它的到达时间就置为当前时间。如果该页在此期间被访问过,则访问位置1。这样给了第二次机会的页面将不被淘汰,直至所有其他页面被淘汰过(或者也给了第二次机会)。因此,如果一个页面经常使用,它的访问位总保持为1,它就从来不会被淘汰出去。

12.在请求分页系统中,页表中的辅存始地址是供()参考的。D
A.页面置换
B.内存分配
C.页面换出
D.页面调入

 请求分页系统=基本分页系统+请求调页系统+页面置换功能

 请求分页存储管理的思想:

  请求分页储存管理是实现虚拟存储器的一种常用方式,它是在基本分页储存管理的基础上实现的。其基本思想是:在进程开始运行之前仅装入当前要执行的部分页面即可运行;在执行过程中,当所要访问的页面不在内存时,再通过调页功能将其调入;当内存空间已满,而又需要装入新的页面时,根据置换功能适当调出某个页面,以便腾出空间而装入新的页面。

  为实现请求分页,需要一定的硬件支持,包括:页表机制、缺页中断机构、地址变换机构。

   辅存--磁盘

 
各字段说明如下:
1)状态位P:用于指示该页是否已调入内存,供程序访问时参考;
2)访问字段A:用于记录本页在一段时间内被访问次数,供选择换出页面时参考;
3)修改位M:表示该页在调入内存后是否被修改过,供置换页面时参考
4)外存地址:用于指出该页在外存上的地址,通常是物理块号,供调入该页时参考
 
13.在硬件和环境相同的条件下,一个作业在(B)存储管理系统中运行的时间最长。
  A.分区

  B.分页

  C.分段

  D.段页

 解释:分页式存储管理可能将连续的指令放置在不同的页中,会发生换页中断,而分段、段页都是逻辑分配空间,段长可变,逻辑上相对连续的指令放在同一段中,不会像分页那样频繁换页操作。
 
 14.在动态分区分配方案中,某一作业完成后,系统收回其主存空间,并与相邻空闲区合并,为此需要修改空闲区表,造成空闲区数减1的情况是(D)

  A.无上邻空闲区,也无下邻空闲区

  B.有上邻空闲区,但无下邻空闲区

  C.有下邻空闲区,但无下邻空闲区

  D.有上邻空闲区,也有下邻空闲区

解释:

  作业归还分区,要调整空闲区表,把空闲区表调整成空闲区长度递减的次序排列登记。可变分区分配方式下,当收回主存时,应检查是否有与归还区相邻的空闲区,若有,则应合并成一个空闲区。
  相邻可能有上邻空闲区、下邻空闲区、既上邻又下邻空闲区、既无上邻又无下邻空闲区四种情况。
  1. 有上邻空闲区,但无下邻空闲区.只修改上邻空闲区长度(为收回的空闲区长度与原上邻区长度之和),空闲区数不变
  2. 无下邻空闲区,但有下邻空闲区.改记录这个下邻空闲区记录的地址为收回空闲区的地址,长度为下邻空闲区的长度和收回空闲区的长度,空闲区数不变
  3. 有上邻空闲区,也有下邻空闲区.此时应将回收分区,上邻接分区和下邻接分区合并成一个连续的空闲区,合并分区的首地址为上邻接空闲区的首地址,大小为三者之后,且应把下邻接空闲区从空闲分区表中删去。改记录上邻区记录的长度(为上邻区长度、下邻区长度和收回区长度之和),再把下邻区记录的标志位改为空,即空闲区数-1
  4. 无上邻空闲区,也无下邻空闲区.那么找一个标志位为空的记录,记下该回收区的起始地址和长度,且改写相应的标志位为未分配,表明该登记栏中指示了一个空闲区。 空闲区数+1

15.在一个单CPU的处理机中,有P1,P3,P5三个作业,有两个IO设备IO1,IO2,并且能够实现抢先式多任务并行工作的多道程序环境中,投入运行优先级由高到低P5,P1,P3三个作业,他们使用设备的先后顺序和占用设备的时间分别为:P1:IO2(10ms) CPU(10ms) IO1(30ms)CPU(10ms)P3:IO1(30ms) CPU(10ms) IO2(30ms)CPU(10ms)P5:CPU(20ms) IO1(30ms) CPU(10ms) IO2(15ms)忽略其他的时间损耗,3个作业投入到全部完成的情况下。请问下列哪些选项为IO2的设备利用率?

  答案:0.39

解释:

  因为是抢占式的,所以优先级最高的P5会优先执行,不用等待任何资源。
  然后考虑P1,同一时刻CPU或者IO资源只能一个进程访问

所以:IO2的利用率=(10+15+30)/(140)=0.39

 16.假设一个系统包括A到G七个进程,R到W六中资源。资源间的所有权关系,如下:

  

1、进程A占有资源R,请求资源S
2、进程B不占有任何资源,请求资源T
3、进程C不占任何资源,请求资源S
4、D占有资源U,请求资源S和T
5、E有资源T,请求资源V
6、F有资源W,请求资源S
7、G有资源V,需要资源U

  下列说法中正确的是(AC )

  A.进程D、E、G被死锁

  B.进程D、E、C被死锁

  C.进程A、C、F没有被死锁

  D.进程A、D、E被死锁

 解析:只要能找到环,就是被死锁了。

  

 17.下列不属于标准冯诺依曼计算机体系结构部件的是()A

  A.寄存器

  B.控制器

  C.运算器

  D.输入与输出设备
解释:

冯·诺依曼体系结构计算机必须具备五大基本组成部件,包括:输入数据和程序的输入设备、记忆程序和数据的存储器、完成数据加工处理的运算器、控制程序执行的控制器、输出处理结果的输出设备

原文地址:https://www.cnblogs.com/GumpYan/p/5768966.html