系统架构设计师 http://www.educity.cn/jiaocheng/zg3.html
2. 实现互斥模型
使用信号量机制实现进程互斥时,需要为临界资源设置一个互斥信号量S,其初值通常为1.在每个进程中将临界区代码置于P(S)和V(S)之间。必须成对使用PV原语,缺少P原语则不能保证互斥访问,缺少V原语则不能在使用临界资源之后将其释放。而且,PV原语不能次序颠倒、重复或遗漏。 3. 实现同步模型
使用信号量机制实现进程同步时,需要为进程设置一个同步信号量S,其初值通常为0.在进程需要同步的地方分别插入P(S)和V(S)。一个进程使用P原语时,则另一个进程往往使用V原语与之对应。具体怎么使用要根据实际情况决定,下面举个简单例子来加以说明。
有两个进程P1和P2,P1的功能是计算x=a+b的值,a和b是常量,在P1的前面代码中能得到;P2的功能是计算y=x+1的值。若这两个进程在并发执行,则有同步关系:P2要执行y=x+1时必须等到P1已经执行完x=a+b语句。P2进程可能会因为要等待x的值而阻塞,如果是这样的话,P1进程就要在计算出x的值后唤醒P2进程。因此,为了使P1和P2正常运行,用信号量来实现其同步的过程如表1-5所示。
表1-5 P1和P2的同步过程
系统架构设计师 http://www.educity.cn/jiaocheng/zg3.html
再举一个较为复杂的例子,以加深对PV操作的理解。设有两个并发进程Read和Print,Read负责从输入设备读入信息到一个容量为N的缓冲区,Print负责从缓冲区中取出信息送打印机输出。设置信号量mutex的初值为1,empty的初值为N,full的初值为0,则程序如表1-6所示。
表1-6 实现Read和Print的程序
在本题中,从题目的前趋图,可以得知以下约束关系: (1)P1执行完毕,P2与P3才能开始; (2)P2执行完毕,P4才能开始; (3)P2与P3都执行完,P5才能开始。 分析清楚这种制约关系,解题也就容易了。
(1)从\执行完毕,P2与P3才能开始\可以得知:P2与P3中的b与d位置,分
系统架构设计师 http://www.educity.cn/jiaocheng/zg3.html
别应填P(S1)和P(S2),以确保在P1执行完毕以前,P2与P3不能执行。当然当P1执行完毕时,应该要对此解锁,所以P1中的a位置应填V(S1)与V(S2)。
(2)从\执行完毕,P4才能开始\可以得知:P4的f位置,应填P(S3),而P2的结束位置c应有V(S3)。
(3)从\与P3都执行完,P5才能开始\可以得知:P5的g位置,应填P(S4)与P(S5),而对应的P2的结束位置c应有V(S4),结合前面的结论可知,c应填V(S3)与V(S4)。而e应填V(S5)。 试题答案
(2)A(3)C(4)B
1.2.8 试题8(2012年11月试题1~2) 试题8(2012年11月试题1~2)
假设系统中有n个进程共享3台打印机,任一进程在任一时刻最多只能使用1台打印机。若用PV操作控制n个进程使用打印机,则相应信号量s的取值范围为 (1) ;若信号量S的值为-3,则系统中有 (2) 个进程等待使用打印机。 (1)A.0,-1,…,-(n-1) B.3,2,1,0,-1,…,-(n-3) C.1,0,-1,…,-(n-1) D.2,1,0,-1,…,-(n-2) (2)A.0B.1 C.2 D.3 试题分析
信号量是PV操作中的一种特殊变量,该变量的值指示一类资源的数量,当信号量的值为负数时,又能展示出目前系统中有多少个进程在等待该资源。
在本题中,系统有n个进程,有3台打印机。初始状态时,没有1个进程使用打印机,
系统架构设计师 http://www.educity.cn/jiaocheng/zg3.html
此时信号量s应为3,代表有3台打印机资源可用。而如果此时有1个进程占用了1台打印机,则信号量s变为2,代表目前只有2台打印机可用,依此类推。信号量的最小值为-(n-3),即表示当前状态为:3个进程占用了3台打印机资源,而剩余的n-3个进程都在等待打印机资源。所以s的取值范围是:3,2,1,0,-1,…,-(n-3)。
有了前面的分析,接下来这一问就非常好回答了。信号量为-3,表示有3个进程在等待使用打印机。 试题答案 (1)B(2)D
1.2.9 试题9(2012年11月试题3~4) 试题9(2012年11月试题3~4)
假设文件系统采用索引节点管理,且索引节点有8个地址项iaddr[0]~iaddr[7],每个地址项大小为4字节,iaddr[0]~iaddr[4]采用直接地址索引,iaddr[5]和iaddr[6]采用一级间接地址索引,iaddr[7]采用二级间接地址索引。假设磁盘索引块和磁盘数据块大小均为1KB字节,文件File1的索引节点如图1-6所示。若用户访问文件File1中逻辑块号为5和261的信息,则对应的物理块号分别为 (3) ;101号物理块存放的是 (4) .
系统架构设计师 http://www.educity.cn/jiaocheng/zg3.html
图1-6 索引文件示意图
(3)A.89和90 B.89和136 C.58和187 D.90和136 (4)A.File1的信息 B.直接地址索引表 C.一级地址索引表 D.二级地址索引表 试题分析
文件物理结构(物理文件)是指文件在存储介质上的组织方式,它依赖于物理的存储设备和存储空间,可以看作是相关物理块的集合。由于物理结构决定了信息在存储设备上的存放位置和方式,因此,信息的逻辑位置到物理位置的映射关系也是由物理结构决定的。常用的文件物理结构有顺序结构、链接结构和索引结构。
(1)顺序结构(连续结构)。逻辑上连续的记录构成的文件分配到连续的物理块中。这种方式管理简单,存储速度快,空间利用率低,但文件记录插入或删除操作不方便,只能在文件末尾进行。