资源描述
一选择题1消息缓冲队列通信中的临界资源是A、队列中的某个消息缓冲区B、整个消息缓冲队列C、信箱D、管道2在引入线程的操作系统中,资源分配的单位是A、线程B、进程C、程序D、作业3下列的进程状态变化中,不可能发生的是A、运行就绪B、等待运行C、运行等待D、等待就绪4在没有引入快表的页式存储管理系统中,每次从内存中取指令或数据,需要访问内存的次数为A、1B、2C、3D、45若系统中有五台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,若不会发生死锁,则参于竞争的进程数至多为A、5B、2C、3D、46在进程调度算法中,既照顾了短进程又照顾了长进程,但必须事先知道进程所需执行时间的是A、最短CPU运行期优先调度算法B、响应比高者优先调度算法C、优先数调度算法D、多级反馈队列调度算法7作业执行中发生了缺页中断,经操作系统处理后,应让其执行的指令是A、被中断的前一条B、被中断的后一条C、被中断的D、启动时的第一条,CPU输出数据的速度远远高于打印机的打印速度,为解决这一矛盾,可采用A、并行技术B、通道技术C、缓冲技术D、虚拟存储技术9为使进程由静止就绪转变为活动就绪,应利用的原语是A、createB、suspendC、activeD、block10下列算法中能获得最小平均周转时间的是A、短作业优先调度算法B、先来先服务算法C、分类调度算法D、响应比高者优先算法11进程从运行状态到阻塞状态可能是由于A、现运行进程执行了wait操作B、现运行进程时间片用完C、现运行进程执行了signal操作D、进程调度程序的调度12在预防死锁的方法中,有序资源分配算法摒弃了A、互斥条件B、请求和保持条件C、不剥夺条件D、环路等待条件,二、填空题1分页虚拟存储管理方式中,调页策略包括请求调页和预调页两种。2操作系统的四个基本的特征是并发、共享、虚拟、异步性。3解除死锁常采用的方法有剥夺资源、撤销进程两种。4分页存储管理方式中,内存的分配和回收可以采用位示图的方法,即用一位来表示一块内存物理块,用一位的两种状态来表示物理块是空闲还是已分配。假设字长为32位,则第i个字的第j位对应的物理块号为32*i+j。5临界区就是访问临界资源的程序段。6在页式存储管理系统中,选择淘汰不再使用或最远的将来才使用的页的算法是最佳置换算法;选择在内存中驻留时间最长的页淘汰的算法是先进先出算法。7作业在运行期间,可能会经历三种调度,它们是作业调度,又叫做高级调度、进程调度,又叫做低级调度和中级调度。8JCB是批处理作业存在的标志,其中保存了系统对作业进行管理所需要的全部信息,这些信息被保存在磁盘区域中。9从结构上看,进程实体是由PCB、程序、数据三部分组成。10存储管理方式中的单一连续分配只能用于单用户、单任务的操作系统中(十)使用位示图(20行、30列)表示空闲盘块状态。如当分配一个盘块号为132号时,其在位示图中的行、列数为4、12。(行为019,列为029,首盘块号为0)。,三简答题1进程控制块的作用是什么?它主要包括哪几部分内容?答:进程控制块的作用是使一个在多道程序环境下不能独立运行的程序(含数据)成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。也就是说,操作系统是根据进程控制块PCB来对并发执行的进程进行控制和管理的。PCB是进程存在的惟一标志。在进程控制块中,主要包括下述四个方面用于描述和控制进程运行的信息:进程标识符信息、处理机状态信息、进程调度信息和进程控制信息。简述页式虚拟存储管理的基本原理。答:分页虚拟存储管理方式是在分页系统的基础上,增加了请求调页功能、页面置换功能所形成的虚拟存储器系统。在进程装入主存时,并不是装入全部页面,而是装入若干页(一个或零个页面),之后根据进程运行的需要,动态装入其他页面;当主存空间已满,而又需要装入新的页面时,则根据某种算法淘汰某个页面,以便腾出空间,装入新的页面。简述分页和分段的区别。答:(1)页是信息的物理单位,分页是为了系统管理内存的方便而进行的,故对用户而言,分页是不可见的,是透明的;段是信息的逻辑单位,分段是作业逻辑上的要求,对用户而言,分段是可见的。(2).页的大小是固定的,由系统决定;段的大小是不固定的,由用户作业本身决定。(3)从用户角度看,分页的地址空间是一维的,而段的地址空间是二维的。,4简述分时系统的特征。答:1多路性;允许一台主机连接多台终端,系统按分时原则为每个用户服务,每个用户以时间片为单位轮流运行。2.独立性;每个用户各占一个终端,彼此独立操作互不干扰。3.及时性;用户的请求能在很短的时间内得到响应,用户可以接受。4.交互性;用户可通过终端与系统进行人机对话。简述时间片轮转调度算法的基本思想。答:时间片轮转调度算的基本思想:时间片轮转法通常用在分时系统,它按照先进先出原则轮流地调度就绪队列中的进程。在实现时,它利用一个定时时钟,使之定时地发出中断。时钟中断处理程序在设置新的时钟常量后,即转入进程调度程序,选择一个新的进程占用CPU。时间片长短的确定遵循这样的原则:既要保证系统各个用户进程及时地得到响应,又不要由于时间片太短而增加调度的开销,降低系统的效率。6引起创建进程的事件通常有哪些?简述进程的创建过程。答:引起创建进程的事件:用户登录、作业调度、提供服务、应用请求。进程的创建过程:申请空白PCB。为新进程分配资源。初始化进程控制块。将新进程插入就绪队列。,解释静态重定位与动态重定位。答:静态重定位是指在装入一个作业时,把作业中的指令地址和数据地址全部转换成绝对地址。转换工作是在作业开始前集中完成的,在作业执行过程中无需再进行地址转换。动态重定位是指在装入一个作业时,不进行地址转换,而是直接把作业装入分配的内存区域中。在作业执行过程中,每当执行一条指令时,都由硬件的地址变换机构进行逻辑地址到物理地址的转换,这种方式的地址转换是在作业执行时动态完成的。8系统调用的执行过程大体上分成哪三步?答:系统调用的执行过程大体上分成以下三步:1.设置系统调用号和参数;2.系统调用命令的般性处理;3.系统调用命令处理程序做具体处理。,五应用题对一个将页表放在内存中的分页系统:1)如果访问内存需要0.2s,有效访问时间为多少?2)如果增加一个快表,且假定在快表中找到页表项的几率高达90,则有效访问时间又是多少(假定查找快表需花的时间为0)?解:(1)有效访问时间为:20.2=0.4s(2)有效访问时间为:0.90.2+(10.9)20.2=0.22s,有一个仓库,可以存放A和B两种产品,但要求:(1)每次只能存入一种产品(A或B);(2)-NA产品数量B产品数量M。其中,N和M是正整数。试用同步算法描述产品A与产品B的入库过程。解:设置信号量sa表示当前允许A产品比B产品多入库的数量,信号量sb表示当前允许B产品比A产品多入库的数量。,semaphoremutex=1,sa=M-1,sb=N-1;processputa()while(1)取一个产品;wait(sa);wait(mutex);将产品入库;signal(mutex);signal(sb);,processputb()while(1)取一个产品;wait(sb);wait(mutex);将产品入库;signal(mutex);signal(sa);main()cobeginputa();putb();,3设系统中有3种类型的资源A、B、C和5个进程P0、P1、P2、P3、P4,A资源的数量为10,B资源的数量为5,C资源的数量为7。在T0时刻系统状态如表1所示。系统采用银行家算法实施死锁避免策略。,1)T0时刻是否为安全状态?若是,请给出安全序列。2)在T0时刻若进程P1发出资源请求Request(1,0,2),是否能够实施资源分配?3)在2)的基础上P4发出资源请求Request(3,3,0),是否能够实施资源分配?4)在3)的基础上P0发出资源请求Request(0,2,0),是否能够实施资源分配?解:1)利用银行家算法对T0时刻的资源分配情况进行分析,可得此时刻的安全性分析情况可知,在T0时刻存在着一个安全序列P1、P3、P4、P2、P0,故系统是安全的。,2)P1请求资源Request(1,0,2),系统按银行家算法进行检查:Request(1,0,2)Need(1,2,2)Request(1,0,2)Available(3,3,2)系统试探分配,修改相应的向量后,利用安全性算法检查此时系统是否安全,可以找到一个安全序列P1、P3、P4、P0、P2。因此,系统是安全的,可以立即把P1所申请的资源分配给它。3)P4发出资源请求Request(3,0,0),系统按照银行家算法进行检查:Request(3,3,0)Need(4,3,1)Request(3,3,0)Available(2,3,0),所以让P4等待。4)P0发出资源请求Request(0,2,0),系统按照银行家算法进行检查:Request(0,2,0)Need(7,4,3)Request(0,2,0)Available(2,3,0)系统试探分配,修改相应的向量后,进行安全性检查,可用资源Available(2,1,0)已不能满足任何进程的需要,故系统进入不安全状态,此时系统不分配资源。,4一条河上架设了由若干个桥墩组成的一座桥。若一个桥墩只能站一个人,过河的人只能沿着桥向前走而不能向后退。过河时,只要对岸无人过,就可以过。但不允许河对岸的两个人同时过,以防止出现死锁。请给出两个方向的人顺利过河的同步算法。解:信号量s实现两个方向的互斥,scount实现同方向N个桥墩最多能同时过N个人的控制,scount1、scount2是修改计数器count1和count2的互斥信号量。,Semaphores,scount1,scount2,scount;intcount1,count2;s=1;scount1=1;scount2=1;scount=N;count1=0;count2=0;voiddirect1(inti)wait(scount1);if(count1=0)wait(s);count1+;signal(scount1);wait(scount);上桥,过桥,下桥;signal(scount);wait(scount1);count1-;if(count1=0)signal(s);signal(scount1);,voiddirect2(inti)wait(scount2);if(count2=0)wait(s);count2+;signal(scount2);wait(scount);上桥,过桥,下桥;signal(scount);wait(scount2);count2-;if(count2=0)signal(s);signal(scount2);main()cobegindirect1(1);direct1(n);direct2(1);direct2(m);,设某计算机的逻辑地址空间和物理地址空间均为64KB,按字节编址。若某进程最多需要6页数据存储空间,页的大小为1KB。操作系统采用固定分配局部置换策略为此进程分配4个物理块,如表1所示。当该进程执行到时刻260时,要访问逻辑地址为17CAH的数据,请问答下列问题。解:17CAH转换为二进制数为00010111110010101)页大小为1K,所以页内偏移地址为10位,于是前6位是页号,故页号为5。2)FIFO,被转换的页面所在的物理块为7,所以对应的物理地址为(0001111111001010)2=1FCAH3)Clock,被转换的页面所在的物理块为2,所以对应的物理地址为(0000101111001010)2=OBCAH,1)该逻辑地址对应的页号是多少?2)若采用先进先出(FIFO)置换算法,该逻辑地址对应的物理地址是多少?(要求给出计算过程)0号页1号页3号页2号页2号物理块4号物理块9号物理块7号物理块3)若采用简单CLOCK置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。(设搜索下一页的指针沿顺时针方向移动,且当前指向2号物理块,如图1所示。)图1,6考虑三个吸烟者进程和一个经销商进程的系统。每个吸烟者连续不断地做烟卷并抽他做好的烟卷,做一支烟卷需要烟草、纸和火柴三种原料。这三个吸烟者分别掌握有烟草、纸和火柴。经销商源源不断地提供上述三种原料,但他只将其中的两种原料放在桌上,具有另一种原料的吸烟者就可以做烟卷并抽烟,且在做完后给经销商发信号,然后经销商再拿出两种原料放在桌上,如此反复。试设计一个同步算法来描述他们的活动。,解:设smokerA拥有烟草,需要纸和火柴设纸和火柴为信号量A;设smokerB拥有纸,需要烟草和火柴设烟草和火柴为信号量B;设smokerC拥有火柴,需要烟草和纸设烟草和纸为信号量C;设provider提供原材料的信号为D;semaphoreA=B=C=D=1;inti;voidsmokerA()while(1)wait(A);.smoking;signal(D);,smokerB,smokerC类似voidprovider()while(1)wait(D);i=random(2);switch(i)case0:signal(A);case1:signal(B);case2:signal(C);,
展开阅读全文