操作系统题—进程
- 格式:doc
- 大小:73.00 KB
- 文档页数:7
1 并发进程失去了封闭性,是指(d)
A 多个相对独立的进程以各自的速度向前推进
B 并发进程的执行结果与速度无关
C 并发进程执行时,在不同时刻发生的错误
D 并发进程共享变量,其执行结果与速度有关
2 当一个进程处于这样的状态(ab)时,称其为等待状态。
A 它正等着输入一批数据
B 它正等着协作进程的一个消息
C 它正等分给它一个时间片
D 它正等着进入内存
3.进程的属性包括(c)。
A 进程就是程序。或者说,进程是程序的另一种叫法。
B 一个被创建了的进程,在它消灭之前,在任何时刻总是处于3种基本状态之一。
C 多个不同的进程可以包含相同的程序。
D 一个处于等待队列的进程,即使进入其它状态,仍然被放在等待队列中。
E 两个进程可以同时处于运行状态。
4 判断正误
1)进程由进程控制块和数据集以及对该数据集进程操作的程序组成。(dui)
2)进程上下文是进程执行活动全过程的静态描述(dui) 3)并发是进程的不同表述,其原理相同。(cuo)
5.简答:比较进程和程序的区别
进程与程序是既有联系又相区别的两个概念。
1 联系。程序是构成进程的组成部分之一。一个进程的运行目标是执行它所对应的程序,如果没有程序,进程就失去了其实际存在的意义。从静态的角度看,进程是由程序、数据和PCB三部分组成的。
2 区别1)程序是指令的有序集合。它是一个静态概念,其本身没有任何运行的含义。而进程是程序在处理机上的一次执行过程,它是动态概念。程序可以作为一种软件长期保存,而进程是有一定生命期的,它能够动态的产生和消亡。2)进程与程序在结构上不同,进程由PCB、程序段、数据段三部分组成。
3)进程是一个能独立运行的单位,能与其它进程并发执行。4)进程是竞争计算机系统有限资源的基本单位,也是进行处理机调度的基本单位。同一程序运行于若干不同的数据集合上,它将属于若干个不同的进程。或者说,若干个不同的进程可以包含相同的程序。
6 简答:操作系统中为什么要引入进程的概念?OS在进程管理方面应做哪些工作?
程序的并发执行充分利用了系统资源,提高了系统的处理能力。但由于系统资源有限,并发执行必将导致资源共享和资源竞争。此时如果不按照特定的规则和方法进行资源竞争和共享,则执行结果不可避免的失去封闭性和可再现性,从而得到不正确或非预期的结果。所以我们需要一个能描述程序的执行过程且能用来共享资源的基本单位,这就是进程。应做工作:1)进程控制2)进程同步
3)进程通信4)进程调度
1在多进程的系统中,为了保证公共变量的完整性,各个进程应互斥进入临界区。所谓临界区是指(d)。
A一个缓冲区B一段数据区
C同步机制D一段程序
2一个进程是(c)。
A由协处理机执行的一个程序B.一个独立的程序+数据集
C.PCB结构与程序和数据的组合D.一个独立的程序
3信号量是一个初值为非负的整型变量,可在其上做加1和减1操作。(cuo只可以做P、V操作。)
4 已知一个求值公式(A2 +3B)/(B+5A),若A、B已经赋值,请画出该公式求值过程的前趋图。
6 试用用信号量机制描述两人下象棋的过程。
•两人下象棋的过程可以概括为:一开始只能是“红先黑后”,以后两人要循环轮流走子,直至某
一方获胜或双方和棋为止。
•这是个只有一个生产者和一个消费者的生产者——消费者问题,是个典型的“你等我,我也
等你”的问题。红方是总的前趋任务——生产者
进程,黑方是总的后继任务——消费者进程,但
由于下棋过程必须轮流走子,所以红黑双方的生产
者消费者身份会轮流改变。棋盘则是生产者与消费
者共享的缓冲。
•要求:只描述对弈过程,对棋盘的访问不做描述。二人对弈过程是个纯粹的同步过程
•①所用信号量设置如下:
•Ⅰ)同步信号量hei,初值为1,表示黑方已走子,开始时可使红方先行不受阻。
•Ⅱ)同步信号量hong,初值为0,表示红方
尚未走子,开始时可使黑方先行受阻。
用信号量机制描述的二人下象棋过程如下
红方
7 某小型超级市场,可容纳50人同时购物。入口处有篮子,每个购物者可拿一只篮子入内购物。出口处结帐,并归还篮子(出、入口禁止多人同时通过)。试用信号量和P、V操作写出购物者的同步算法。
•①所用信号量设置如下:
•Ⅰ)资源信号量S,初值为50,用以保证最多可以有50个购物者同时进入超市。
•Ⅱ)互斥信号量mutex,初值为1,用以保证同时只能有一个购物者进程进入出入口拿起篮子或者
结帐后放下篮子。
•②用信号量机制给出的每个购物者购物过程的算法描述如下:
购物者i进程(解法一)
P(S);
P(mutex);
从入口处进超市,并取一只篮子;
V(mutex);
进超市内选购商品;
P(mutex);
到出口结帐,并归还篮子;
V(mutex);
从出口离开超市;
V(S);
↓
结束.
购物者i进程(解法二)
P(S);
P(mutex1);
从入口处进超市,并取一只篮子;
V(mutex1);
进超市内选购商品;
P(mutex2);
到出口结帐,并归还篮子;
V(mutex2);
从出口离开超市;
V(S);
↓
结束.
8 桌上有个只能盛得下一个水果的空盘子。爸爸可向盘中放苹果或桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。规定:当盘子空时,一次只能放入一个水果供吃者取用。试用信号量和P、V操作实现爸爸、儿子和女儿这三个循环进程之间的同步。
本题属于生产者——消费者问题的变形,相当于一个能生产两种产品的生产者(爸爸)向两个消费者(儿子和女儿)提供产品的同步问题。因此,可参考生产者与消费者问题的解法
所用信号量设置如下:
Ⅰ)同步信号量empty,初值为1,表示盘子是空的,即儿子或女儿已把盘中的水果取走。
Ⅱ)同步信号量orange,初值为0,表示爸爸尚未把桔子放入盘中。
Ⅲ)同步信号量apple,初值为0,表示爸爸尚未把苹果放入盘中。
•(1)爸爸进程(P)
•P(empty);
•将水果放入盘中;
•若放入的是桔子,
•则V(orange);
•否则,V(apple);
•(2)儿子进程(C1)
•P(orange );
•从盘中取出桔子;
•V(empty);
•吃桔子;
•
•(3)女儿进程(C2)
P(apple);
•从盘中取出苹果;
V(empty);
•吃苹果;