计算机操作系统典型例题解析之三
计算机操作系统模拟试题(卷)与答案解析

张顺全计算机操作系统模拟试题(二)张顺全一、选择题(红色数字、符号是答案。
笔67-16)1. 在分时系统中,导致创建进程的典型事件是A 2;在批处理系统中导致创建进程的典型事件是B 2;由系统专门为运行中的应用进程创建新进程的事件是C 4。
(汤’165题5、汤’204)A:⑴用户注册⑵用户登录⑶用户记账⑷用户通信B:⑴作业录入⑵作业调度⑶进程调度⑷中级调度C:⑴分配资源⑵进程通信⑶共享资源⑷提供服务2. 从下面对临界资源的论述中,选出一条正确的论述,并在其前面打“√”。
(汤’165题6)⑴临界区是指进程中用于实现进程互斥的那段代码⑵临界区是指进程中用于实现进程同步的那段代码⑶临界区是指进程中用于实现进程通信的那段代码⑷临界区是指进程中用于访问共享资源的那段代码√⑸临界区是指进程中访问临界资源那段代码3. 在生产者-消费者问题中,应设置互斥信号量Mutex、资源信号量full和empty。
它们的初始值应分别是A 2、B 1和C 5。
(汤’165题9)A、B、C:⑴0 ⑵1 ⑶-1 ⑷-n ⑸+n4. 从下面预防死锁的论述中,选出一条正确的论述,并在其前面打“√”。
(汤’166题16、汤’204、汤六122-4)⑴由于产生死锁的基本原因是系统资源不足,因而预防死锁的有效方法,是根据系统规模,配置足够的系统资源⑵由于产生死锁的另一基本原因是进程推进顺序不当,因而预防死锁的有效方法,是使进程的推进顺序合法⑶因为只要系统不进入不安全状态,便不会产生死锁,故预防死锁的有效方法,是防止系统进入不安全状态√⑷可以通过破坏产生死锁的四个必要条件之一或其中几个的方法,来预防发生死锁5. 根据作业说明书中的信息对作业进行控制,称此种作业为A 4;用终端键盘命令直接控制作业运行的作业称为B 1。
(汤’170题1、笔67-17)A:⑴计算型作业⑵终端型作业⑶联机作业⑷脱机作业B:⑴联机作业⑵I/O型作业⑶批处理作业⑷脱机作业6. 作业由进入状态转变为后备状态,是由A 3完成的,由后备状态到运行状态B 2完成的。
操作系统习题问题详解第(3)

CH3 应用题参考答案1、有三个并发进程:R 负责从输入设备读入信息块,M 负责对信息块加工处理;P 负责打印输出信息块。
今提供;l )一个缓冲区,可放置K 个信息块;2 )二个缓冲区,每个可放置K 个信息块;试用信号量和P 、V 操作写出三个进程正确工作的流程。
答:1 ) var B : array [ 0 , k-1 ] of item ;sread : semaPhore : = k ;smanage : semaPhore : = 0 ;swrite : semaphore : = 0 ;rptr : integer : = O ;mptr : integer : = O ;wptr :integer : = 0 ;x : itemcobeginprocess reader ; process manager ; processwriter ;begin begin beginLI : read a message intox ; L2 : P ( smanage ) ; L3 : P( swnte ) ;P ( sread ) ; x:=B[mptr]; x:=B[swrite];B[rptr]:=x; mptr:=(mptr+1) mod k; wptr:=(wptr+1) mod k;Rptr:=(rptr+1) mod k; manage the message in x;V(sread);V(smanage); B[mptr]:=x; print the message in x;Goto L1; V(swrite); goto L3;End; goto L2; end;End;coend2 ) var A , B :array [ 0 , k -l ] of item ;sPut1 : semaphore:=k;SPut2: semaPhore:=k;sget1 : semaPhore : = 0 ;sget2 : semaphore : = 0 ;put1 :integer :=O ;put2:integer : = 0 ;get1 :integer :=O ;get2 : integer : = O ;cobeginprocess reader ; processn manager; process Writer ;begin begin beginLl : read a message into x ; L2 : P ( sgetl ) ; L3 :P ( sgetZ ) ;P ( SPut1 ) ; x : = A [ get1] ; x := B [get2];A [put1]:=x ; get1 :(get1+1 ) mod k ; get2:=(get2 + l ) mod k ;Put1:=(put1+1) mod k; V(sput1); V(sput2);V(sget1); manage the message into x; print the message in x;Goto L1; P(sput2); goto L3;Put2:=(put2+1) mod k;V(sget2);Goto L2;End;Coend2 设有n 个进程共享一个互斥段,如果:( 1 )每次只允许一个进程进入互斥段;( 2 )每次最多允许m 个进程(m 簇n )同时进入互斥段。
计算机二级题库中的计算机操作系统题解析

计算机二级题库中的计算机操作系统题解析计算机操作系统是计算机科学中非常重要的一门课程,它涉及到计算机系统的核心组成部分和功能,为我们理解计算机的运行原理和操作系统的工作机制提供了基础。
在计算机二级考试中,操作系统也是经常出现的考点。
本文将对计算机操作系统题库中的一些典型题目进行解析,帮助同学们更好地掌握相关知识。
一、进程管理进程是操作系统中的重要概念之一,它指正在执行的程序的实例。
在操作系统的管理下,进程会根据一定的调度算法进行切换和调度。
下面是一道与进程管理相关的典型题目:1. 下列关于进程描述的说法中,正确的是:A. 进程是程序的载体,是计算机执行程序的基本单位。
B. 不同进程之间是相互独立的,进程间的通信只能通过操作系统提供的机制实现。
C. 进程的创建需要操作系统为其分配资源,并在运行结束后释放资源。
D. 操作系统为每个进程都分配独立的内存空间,不同进程之间不会发生内存交换和共享。
正确答案是A、C。
选项A正确表示了进程的定义,进程是程序在计算机中的执行实例;选项C正确描绘了进程的创建与资源分配、释放的关系。
二、存储管理在计算机操作系统中,存储管理是非常重要的一环,它负责管理计算机内存的分配和回收、虚拟存储等功能。
下面是一道与存储管理相关的典型题目:2. 在操作系统中,用于解决内存容量不足问题的技术是:A. 分页B. 分段C. 虚拟存储D. 缓存正确答案是C。
虚拟存储是操作系统中解决内存容量不足问题的一种重要技术,它可以将部分程序或数据保存在硬盘上,从而释放出内存空间。
三、文件管理文件管理是操作系统中重要的功能之一,它涉及到文件的创建、读取、写入、删除等操作。
下面是一道与文件管理相关的典型题目:3. 下列关于文件系统的说法中,正确的是:A. 文件系统是操作系统中用于管理外存文件的一种机制。
B. 文件系统采用的数据结构包括索引节点、位图等。
C. 文件系统可以在运行过程中动态调整存储空间的大小。
操作系统经典习题+解释

●假定一个阅览室最多可容纳100人,读者进入和离开阅览室时都必须在阅览室门口的一个登记表上进行登记,而且每次只允许一人进行登记操作,请用记录型信号量机制实现上述问题的同步。
定义信号量sum,mutex,初值分别为100,1。
(3分)则第i个读者的活动描述为:procedure P i(i=1,2,3……)beginwait(sum);wait(mutex);登记;signal(mutex);进入阅览室;阅读;wait(mutex);登记;signal(mutex);离开阅览室;signal(sum);end●请用信号量解决以下的“过独木桥”问题:同一方向的行人可连续过桥,当某一方向有人过桥时,另一方向的行人必须等待;当某一方向无人过桥时,另一方向的行人可以过桥。
将独木桥的两个方向分别标记为A和B;并用整形变量countA和countB分别表示A、B 方向上已在独木桥上的行人数,初值为0;再设置三个初值都1的互斥信号量:SA用来实现对countA的互斥访问,SB用来实现对countB的互斥访问,mutex用来实现两个方向的行人对独木桥的互斥使用。
则具体描述如下:Var SA,SB,mutex:semaphore:=1,1,1;CountA,countB:integer:=0,0:beginparbeginprocess A: beginwait(SA);if(countA=0) then wait(mutex);countA:=countA+1;signal(SA);过独木桥;wait(SA);countA:=countA-1;if (countA=0) then signal(mutex);signa(SA);endprocess B: beginwait(SB);if(countB=0) then wait(mutex);countB:=countB+1;signal(SB);过独木桥;wait(SB);countB:=countB-1;if (countB=0) then signal(mutex);signa(SB);endparendend设公共汽车上,司机和售票员的活动分别是:司机的活动:启动车辆;正常行车;到站停车;售票员的活动:关车门;售票;开车门;请用记录型信号量机制实现上述问题的同步。
计算机操作系统应用题及答案

计算机操作系统应用题及答案第一题:假设一个操作系统有4个可供调用的用户进程:P1、P2、P3和P4,并且系统内存可分为4个块:M1、M2、M3和M4。
每个进程的大小分别为24KB、64KB、48KB和32KB。
根据以下要求回答问题:1. 在以下情况下,请给出一个合理的内存布局方案:- 最先适配算法- 最佳适配算法- 最坏适配算法2. 分别计算使用以上算法后的空闲内存空间大小。
答案:1. 最先适配算法:根据进程到达的顺序,将每个进程分配给尺寸最接近的空闲内存块。
根据这一算法,以下是可能的内存布局方案:- M1:P1 (24KB)- M2:P2 (64KB)- M3:P3 (48KB)- M4:P4 (32KB)2. 最先适配算法下的空闲内存空间大小为0KB。
最佳适配算法:根据进程尺寸,将每个进程分配给能满足需求并且所需空间最接近的内存块。
根据这一算法,以下是可能的内存布局方案:- M1:P1 (24KB)- M2:P4 (32KB)- M3:P3 (48KB)- M4:P2 (64KB)2. 最佳适配算法下的空闲内存空间大小为816KB(64KB-48KB)。
最坏适配算法:根据进程尺寸,将每个进程分配给最大的空闲内存块。
根据这一算法,以下是可能的内存布局方案:- M1:P2 (64KB)- M2:P3 (48KB)- M3:P4 (32KB)- M4:P1 (24KB)2. 最坏适配算法下的空闲内存空间大小为28KB(M4内存块,32KB-24KB)。
第二题:假设一个系统有3个进程P1、P2和P3,每个进程的执行时间如下:- P1: 10ms- P2: 20ms- P3: 30ms现在采用时间片轮转调度算法,时间片大小为15ms。
回答以下问题:1. 给出每个进程的执行顺序。
2. 计算每个进程的周转时间和带权周转时间。
答案:1. 进程执行顺序:P1 -> P2 -> P3 -> P1 -> P3 -> P32. 周转时间计算:- P1:10ms + 30ms + 5ms = 45ms (前两个时间片 + 最后一个时间片)- P2:20ms + 10ms = 30ms (一个时间片)- P3:30ms + 15ms + 15ms + 15ms = 75ms (两个时间片 + 一个完整时间片 + 一个不完整时间片)带权周转时间计算:- P1:45ms / 10ms = 4.5- P2:30ms / 20ms = 1.5- P3:75ms / 30ms = 2.5第三题:假设一个文件系统的磁盘块大小为2KB。
操作系统第3章习题带答案

第三章一、问答题1、用户级线程与内核级线程的区别是什么?2、PCB中包含哪些信息?进程状态属于哪类信息?3、什么是操作系统的内核?4、简述时间片轮转调度算法的基本思想。
5、某系统采用时间片轮转调度算法的处理机调度算法,某个时刻根据用户要求创建了一个进程P,进程P在其存在过程中依次经历了:进程调度选中了进程P 占用处理机运行,进程P运行中提出资源申请,要求增加内存使用量,没有得到;进程等待一段时间后得到内存;进程调度再次选中了进程P占用处理机运行;进程P的时间片到;一段时间后,进程P再次占用处理机;有紧急进程Q进入,系统停止进程P的运行,将处理机分配进程Q;进程Q运行完,进程调度再次选中了进程P占用处理机运行;进程P运行完。
请分析进程P在其整个生命过程中的状态变化。
进程调度选中了进程P占用处理机运行(就绪→运行),进程P运行中提出资源申请,要求增加内存使用量,没有得到(运行→阻塞);进程等待一段时间后得到内存(阻塞→就绪);进程调度再次选中了进程P占用处理机运行(就绪→运行);进程P的时间片到(运行→就绪);一段时间后,进程P再次占用处理机(就绪→运行);有紧急进程Q进入,系统停止进程P的运行,将处理机分配进程Q(运行→就绪);进程Q运行完,进程调度再次选中了进程P占用处理机运行(就绪→运行);进程P运行完。
请分析进程P在其整个生命过程中的状态变化。
6、试比较进程与程序的异同。
7、引起创建进程的事件通常有哪些?简述进程的创建过程。
8、简述进程的阻塞过程。
911、简述操作系统的三级调度。
12、为什么要了解进程间的家族关系?因为父进程和子进程之间是隶属关系,子进程可以继承使用父进程的资源;如果父进程被撤销,还应撤销其所有的子孙进程。
13、什么是进程?。
14、试比较进程和线程的区别。
15、简述进程的基本状态,画出其状态转换图。
二、计算题1、若程序Pa,Pb和Pc单独执行时间分别Ta,Tb和Tc,Ta=1小时,Tb=1.5小时,Tc=2小时,其中处理机工作时间分别为Ta=10分钟,Tb=15分钟,Tc=35分钟。
专升本计算机试题解析操作系统原理
专升本计算机试题解析操作系统原理计算机试题解析:操作系统原理操作系统是计算机系统中最核心的一部分,它管理着计算机的资源并提供各种服务,是保证计算机正常运行的基础。
操作系统原理作为专升本计算机考试中的一道必考题,了解操作系统的原理和特点对于备考至关重要。
本文将对操作系统原理进行解析,并对常见的操作系统原理试题进行详细的分析和讲解。
一、操作系统简介操作系统是计算机硬件与应用软件之间的桥梁,它负责管理计算机的资源,提供良好的用户界面和服务,并协调各种应用程序的执行。
操作系统的主要功能包括进程管理、内存管理、文件系统管理和设备管理等。
二、操作系统的分类根据操作系统的特点和功能,可以将操作系统分为批处理操作系统、分时操作系统和实时操作系统等几类。
1.批处理操作系统批处理操作系统是早期的一种操作系统形式,它的主要特点是按照用户预先设定的顺序批量执行任务。
在批处理操作系统中,用户需要事先编写好批处理文件,将任务按照一定的顺序写入文件中,操作系统会按照用户设定的顺序依次执行任务。
2.分时操作系统分时操作系统可以同时为多个用户提供服务,每个用户都感觉到自己在独占计算机资源。
这种操作系统通过时间分片的方式,将处理器的时间划分为若干个时间片段,在一个时间片段内,操作系统为一个用户提供服务,然后切换到下一个用户。
3.实时操作系统实时操作系统主要用于对时间要求比较严格的场景,分为硬实时操作系统和软实时操作系统。
硬实时操作系统要求任务在规定的时间内完成,不能延迟;软实时操作系统对任务完成的时间要求相对宽松。
三、操作系统的进程管理进程是操作系统中最基本的执行单元,操作系统通过进程管理来控制和协调程序的执行。
1.进程调度进程调度策略决定了进程的执行顺序,常见的进程调度算法有先来先服务(FCFS)、最短作业优先(SJF)、优先级调度、轮转调度和多级队列调度等。
2.进程同步进程同步是保证多个进程按照一定的顺序进行执行,避免产生竞态条件和死锁等问题。
操作系统典型例题分析
1操作系统引论1、什么是操作系统,它的主要功能是什么?关于操作系统,至今沿无严格的统一的定义,对操作系统的定义有各种说法,不同的说法反映了人们从不同的角度所揭示的操作系统的本质特征。
(1)从资源管理的角度,操作系统是控制和管理计算的软、硬件资源,合理地组织计算机的工作流程以及方便用户的程序集合。
(2)从硬件扩充的角度,操作系统是控制和管理计算机裸机之上的第一层软件,是对计算机硬件功能的一次扩充。
操作系统的主要功能有处理机管理、内存管理、设备管理文件管理等功能,以及用户接口。
2、什么是多道程序设计技术?多道程序设计技术的主要特点是什么?多道程序设计技术就是把多个程序同时放入内存,它们共享系统中的各种资源,并发地在处理机上运行。
特点如下:(1)多道,即计算机内存中同时存入多道相互独立的程序。
(2)宏观上并行,是指同时进入系统的多道程序都处于运行过程中。
(3)微观上串行,是指在单处理机环境下,内存中的多道程序轮流地占有CPU,交替执行。
3、批处理系统是怎样的一种操作系统?它的特点是什么?批处理系统是一种基本的操作系统类型。
在该系统中,用户的作业(包括程序、数据及程序的处理步骤)被成批地输入到计算机中,然后在操作系统的控制下,用户的作业自动地执行。
批处理系统的特点是“成批”和“自动”。
成批是指多个作业同时进入系统,其中一部分放在内存中,其余的入在外存的后备队列中,这样便于系统搭配合理的作业使之执行,从而充分发挥系统中各种资源的作用。
自动是指作业一旦提交,用户就不能干预自己的作业。
4、什么是分时系统?什么是实时系统?试从交互性、及时性、独立性、多路性和可靠性几个方面比较分时系统和实时系统。
分时系统允许多个终端用户同时使用计算机,在这样的系统中,用户感觉不到其他用户的存在,好像独占计算机一样。
实时系统是指系统对特定输入做出的反应速度足以控制发出实时信号的对象。
“实时”二字的含义是指在计算机对于外来信息能够及时处理,并在被控对象允许的范围内做出快速反应。
操作系统习题解答
操作系统习题解答一、进程管理1. 进程和线程的区别与联系进程是计算机中的基本概念,是程序在执行过程中的一个实例。
每个进程都有自己的程序计数器、寄存器集合以及内存空间。
线程是进程中的一个执行单元,一个进程可以包含多个线程,线程共享进程的资源。
区别:- 进程是资源分配的最小单位,而线程是操作系统调度的最小单位。
- 进程之间是独立的,互不干扰,而线程之间可以共享进程的资源。
- 进程有自己的地址空间,而线程共享进程的地址空间。
联系:- 一个进程可以包含多个线程。
- 线程是进程的执行单元,共享进程的资源。
2. 进程的状态及状态转换进程通常具有以下几种状态:- 就绪状态(Ready):进程已经准备好,等待被调度执行。
- 运行状态(Running):进程正在执行。
- 阻塞状态(Blocked):进程无法执行,等待某个事件的发生。
- 终止状态(Terminated):进程执行结束。
状态转换:- 就绪状态到运行状态:进程被调度执行。
- 运行状态到阻塞状态:进程遇到某个事件需要等待。
- 阻塞状态到就绪状态:某个事件已经发生并得到处理。
- 运行状态到终止状态:进程执行完毕或被强制终止。
二、内存管理1. 分页和分段的区别与特点分页是将进程的地址空间划分为固定大小的页,物理内存也被分为相同大小的页框,将进程的页映射到物理内存的页框上。
分页的特点是地址空间的分配是按页进行的,可以充分利用内存空间,但会产生内外碎片。
分段是将进程的地址空间划分为若干个不同大小的段,每个段可以单独分配内存空间。
分段的特点是逻辑上划分了不同的段,方便管理和维护,但会产生内外碎片。
2. 页面置换算法页面置换算法是用于处理内存中页框不足时的策略,常见的页面置换算法有以下几种:- 先进先出(FIFO):选择最早进入内存的页面进行置换。
- 最近未使用(LRU):选择最长时间未被使用的页面进行置换。
- 最不经常使用(LFU):选择使用频率最低的页面进行置换。
操作系统例题分析
操作系统例题分析例题1:进程的创建和调度问题描述一个系统中有三个进程P1、P2和P3,它们的运行时间分别为2、3和4个时间单位。
假设系统采用抢占式优先级调度算法,P1、P2和P3的优先级分别为3、2和1。
请画出这三种进程的运行情况,并计算出平均等待时间、平均响应时间和吞吐量。
解题步骤1.根据进程的运行时间和优先级,我们可以得到以下进程的运行情况:time P1 P2 P30-2 √ √ √其中,√表示进程在对应时间段内运行。
2.计算各进程的等待时间、响应时间和运行时间:–P1:等待时间 = 0,响应时间 = 2,运行时间 = 2–P2:等待时间 = 0,响应时间 = 2,运行时间 = 3–P3:等待时间 = 0,响应时间 = 5,运行时间 = 43.计算平均等待时间、平均响应时间和吞吐量:–平均等待时间 = (0 + 0 + 0) / 3 = 0–平均响应时间 = (2 + 2 + 5) / 3 = 3–吞吐量 = (2 + 3 + 4) / (2 + 3 + 4 + 5) = 0.5714例题2:内存分配与置换问题描述一个系统中有四个进程P1、P2、P3和P4,它们的内存需求分别为8KB、8KB、12KB和16KB。
系统采用固定分区分配算法,初始时内存空闲分区为32KB。
请画出这四种进程的内存分配情况,并计算出缺页率。
解题步骤1.根据进程的内存需求,我们可以得到以下内存分配情况:process memory demand memory allocationP1 8KB 8KBP2 8KB 8KBP3 12KB -P4 16KB -2.由于系统采用固定分区分配算法,当P3和P4申请内存时,会发生缺页中断,将P1和P2置换出内存。
内存分配情况更新为:process memory demand memory allocationP1 8KB -P2 8KB -P3 12KB 8KBP4 16KB -3.计算缺页率:–缺页率 = (缺页中断次数 / 总的内存访问次数) * 100%–总的内存访问次数 = 4(P1) + 4(P2) + 2(P3) + 1(P4)= 11–缺页中断次数 = 2(P3和P4)–缺页率= (2 / 11) * 100% ≈ 18.18%例题3:文件系统的目录结构问题描述一个文件系统采用树形目录结构,每个目录可包含多个子目录和文件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机操作系统典型例题解析之三
【例1】分配到必要的资源并获得处理机时的进程状态是(B )。
A、就绪状态B、执行状态 C、阻塞状态D、新状态
分析:进程有三种基本状态:就绪状态、执行状态和阻塞状态。
当进程已分配到除CPU以外的所有必要的资源后,只要能再获得处理机便可立即执行,这时的状态称为就绪状态;处于就绪状态的进程如果获得了处理机,其状态转换为执行状态;进程因发生某种事件(如I/O请求、申请缓冲空间等)而暂停执行时的状态,亦即进程的执行受到阻塞,故称这种状态为阻塞状态;而新状态是指创建了进程但尚未把它插入到就绪队列前的状态。
所以本题的答案是B。
【例2】挂起的进程被激活,应该使用(C)原语。
A、Create
B、Suspend
C、Active
D、Wakeup
分析:在不少系统中,进程除了三种基本状态外,又增加了一些新的状态,其中最重要的是挂起状态。
“挂起”的实质是使进程不能继续执行,即使挂起后的进程处于就绪状态,它也不能参加对CPU的竞争,进程的挂起调用Suspend()原语。
因此,被挂起的进程处于静止状态,相反,没有挂起的进程则处于活动状态。
而且,处于静止状态的进程,只有通过“激活”动作,调用Active()原语,才能转换成活动状态,调入内存。
所以本题的答案是C。
【例3】任何时刻总是让具有最高优先数的进程占用处理器,此时采用的进程调度算法是(D)。
A非抢占式的优先数调度算法B、时间片轮转调度算法C、先来先服务调度算法D、抢占式的优先
数调度算法
分析:“让具有最高优先数的进程占用处理器”,我们可以知道,采用的进程调度算法是优先数调度算法,但是我们还要进一步分析是抢占式的还是非抢占式的。
“任何时刻总让”,通过这句话我们知道采用的是抢占式的,所以本题的答案是D。
【例4】若P、V操作的信号量S初值为2,当前值为-1,则表示有(B)等待进程。
A、0个B、1个C、2个D、3个分析:信号量的初始值表示系统中资源的数目,每次的Wait操作意味着进程请求一个单位的资源,信号量进行减1的操作,当信号量小于0时,表示资源已分配完毕,进程自我阻塞。
因此,如果信号量小于0,那么信号量的绝对值就代表当前阻塞进程的个数。
所以本题的答案是B。
【例5】发生死锁的必要条件有四个,要预防死锁的发生,可以破坏这四个必要条件,但破坏(A)条件是不太实际的。
A、互斥
B、请求和保
C、不剥夺
D、环路等待
分析:预防死锁是指通过破坏死锁的某个必要条件来防止死锁的发生。
四个必要条件中,后三个条件都可以被破坏,而第一个条件,即“互斥”条件,对某些像打印机这样的设备,可通过SPOOLing技术予以破坏,但其他资源,因受它们的固有特性的限制,该条件不仅不能被破坏,反而应加以保证。
所以本题的答案是A。
【例6】有m个进程共享同一临界资源,若使用信号量机制实现对临界资源的互斥访问,则信号量值的变化范围是1 至1-m。
分析:采用信号量机制实现m个进程对临界资源的互斥访问,信号量的初始值为1,也是该信号量的最大值。
如果有进程要访问临界资源,那么执行Wait()操作,信号量减1,考虑极端情况,m个进程都要求访问临界资源,信号量将执行m个减1操作,因此信号量的最小值为1-m。
所以本题的答案是1 至1-m。
【例7】在一个单处理机系统中,若有5个用户进程,且假设当前时刻为用户态,则处于就绪状态的用户进程最多有4、0个,最少有个。
分析:因为是单处理机系统,所以一个时刻只有一个进程处于执行状态,能占据处理机运行。
所以,5个用户进程,处于就绪状态的进程最多有4个。
最少时有0个就绪状态的进程,此时有两种情况:一、4个进程处于阻塞状态,1个处于执行状态,二、5个进程都处于阻塞状态。
所以本题的答案是:4、0。
【例8】在引入线程的操作系统中,独立调度和分派的基本单位是线程,资源分配的单位是进程。
分析:引入线程的目的是为了进一步提高系统的并发程度,有效地提高系统的性能。
在引入线程的操作系统中,线程是调度和分派的单位,而无论是否引入了线程,进程都是资源分配的单位。
所以本题的答案是:线程、进程。
【例9】试比较进程与程序的异同。
答:进程和程序是紧密相关而又完全不同的概念。
(1)每个进程实体中包含了程序段、数据段这两个部分,因此说进程和程序是紧密相关的。
但从结构上看,进程实体中除了程序段和
数据段外,还必须包含一个数据结构,即进程控制块PCB。
(2)进程是程序的一次执行过程,因此是动态的;动态性还表现在进程由创建产生、由调度而执行、由撤销而消亡,即它具有一定的生命周期。
而程序则只是一组指令的有序集合,并可永久地存放在某种介质上,其本身不具有动态的含义,因此是静态的。
(3)多个进程实体可同时存放在内存中并发执行,其实这正是引入进程的目的。
而程序的并发执行具有不可再现性,因此程序不能正确地并发执行。
(4)进程是一个能够独立运行、独立分配资源和独立接受调度的基本单位。
而因程序不具有PCB,所以它是不可能在多道程序环境下独立运行的。
(5)进程和程序不一一对应。
同一个程序的多次运行,将形成多个不同的进程;同一个程序的一次执行也可以产生多个进程;而一个进程也可以执行多个程序。
【例10】什么是进程控制块?它有什么作用?
答:进程控制块PCB是一个记录进程属性信息的数据结构,是进程实体的一部分,是操作系统中最重要的数据结构。
当操作系统要调度某进程执行时,需要从该进程的PCB中查询其现行状态和优先级调度参数;在调度到某进程后,要根据其PCB中保存的处理机状态信息去设置和恢复进程运行的现场,并根据其PCB 中的程序和数据的内存地址来找到其程序和数据;进程在执行过程中,当需要与其它进程通信时,也要访问其PCB;当进程因某种原因
而暂停执行时,又需要将断点的现场信息保存在其PCB中。
系统在建立进程的同时就建立了该进程的PCB,在撤销一个进程时也就撤销其PCB。
由此可知,操作系统根据PCB来对并发执行的进程进行控制和管理,PCB是进程存在的惟一标志。
【例11】什么是原语?
答:原语是由若干条机器指令构成的一段程序,用以完成特定的功能。
这段程序在执行期间不可分割。
也就是说,原语的执行不能被中断,所以原语操作具有原子性。
【例12】进程和线程的主要区别是什么?
答:从调度、并发性、系统开销、拥有资源等方面来比较线程和进程:⑴调度。
在传统的操作系统中,独立调度、分派的基本单位是进程。
而在引入线程的操作系统中,则把线程作为调度和分派的基本单位。
⑵并发性。
在引入线程的操作系统中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间亦可并发执行,因而使操作系统具有更好的并发性,从而能更有效地使用系统资源和提高系统吞吐量。
⑶拥有资源。
不论是传统的操作系统,还是设有线程的操作系统,进程都是拥有资源的一个独立单位,它可以拥有自己的资源。
一般地说,线程自己不拥有系统资源(也有一点必不可少的资源),但它可以访问其隶属进程的资源。
⑷系统开销。
由于在创建、撤销或切换进程时,系统都要为之分配或回收资源,保存CPU现场。
因此,操作系统所付出的开销将显著地大于在创建、撤销或切换线程时的开销。
【例13】有4个进程P1,P2,P3,P4,它们进入就绪队列的先后。