一、操作系统原理——单选题9. 有如下C语言程序。
int main()
{ int i;
for(i=0;i<1;i++)
{
fork();
printf("HH\n");}}
在UNIX操作系统中正确编译链接后,其运行结果为______。
- A.共打印出2行HH
- B.共打印出4行HH
- C.共打印出6行HH
- D.共打印出8行HH
A B C D
A
[解析] UNIX系统中,fork()函数用来创建子进程,并且子进程从被创建的程序处开始执行,题目中的for循环执行一次,所以执行fork()时,会有两个进程执行之后的printf()函数,最后输出2行HH。因此,本题答案选择A选项。
10. 有如下C语言程序。
void *th_f(void *arg)
{
printf("Ni Hao");
pthread_join(2);}
int main(void)
{ pthread_t tid;
int at;
at==pthread_create(&tid,NULL,th_f,NULL);
if(at==0)
printf("I can not create thread\n");
exit(NULL);}
针对以上程序,pthread_join函数的意义是______。
- A.线程th_f运行后主动退出
- B.线程th_f运行后等待一个特定的线程退出
- C.线程th_f运行后主动释放CPU给其他线程
- D.线程th_f运行后成为僵尸
A B C D
B
[解析] pthread_join函数的含义是等待一个特定的线程退出,题意中,main函数中创建一个新线程,新线程创建后,从入口函数th_f开始执行,输出Ni Hao后,调用pthread_join等待线程ID为2的线程退出。因此,本题答案选择B选项。
23. 假设磁头当前位于第143道,正在向磁道序号增加的方向移动。现有一个磁道访问请求序列为37,87,149,188,134,58,111,160,155,193,138,153,采用SSF调度(最短寻道优先调度)算法得到的磁道访问序列是______。
- A.149,153,155,160,138,134,111,87,58,37,188,193
- B.138,134,111,87,58,37,149,153,155,160,188,193
- C.138,134,149,153,155,160,188,193,111,87,58,37
- D.149,153,155,160,188,193,138,134,111,87,58,37
A B C D
C
[解析] 最短寻道优先调度算法(SSF)总是优先为距离磁头当前所在位置最近磁道的访问请求服务,题意中,磁头当前所在位置为143,而访问请求中离143最近的磁道访问请求为138,所以首先访问138磁道;接着剩下的访问请求中,距离138最近的磁道访问请求为134,即第二次会访问134磁道,等等,最终访问次序为:138、134、149、153、155、160、188、193、1 11、87、58、37。因此,本题答案选择C选项。
30. 某计算机系统中共有3个进程P
1、P
2和P
3,4类资源r
1、r
2、r
3和r
4。其中r
1和r
3每类资源只有1个实例,r
2资源有2个实例,r
4有3个实例。
当前的资源分配如下:
E={<P
1,r
1>,<P
2,r
3>,<r
2,P
1>,<r
1,P
2>,<P
2,r
2>,<r
3,P
3>,<P
3,r
4>}
若进程P
3申请一个r
4类资源,则系统可能会发生的现象是______。
A B C D
C
[解析] 首先找到进程节点P1,由于P1已经获得资源r1,所以运行完毕后会释放r1,消去P1的资源分配边,然后找到进程节点P2,此时进程P2已经分配了资源r2,r3,申请到了资源r1,所以P2获得了所有资源,运行结束后释放r1、r2、r3,消去资源申请边和分配边,最后找到进程节点P3,此时进程P3分配了资源r2,并申请资源r3,r4,申请成功后运行,结束后释放所有资源,消去资源申请边和分配边,由此可知,资源分配图化简后消去了所有的边,所以该资源分配图是可完全化简的,该系统不存在死锁。因此,本题答案选择C选项。
二、操作系统原理——多选题10. 某操作系统的当前资源分配状态如下表所示。
假设当前系统可用资源R
1、R
2和R
3的数量为(3,3,2),系统采用银行家算法实施死锁避免策略,以下是安全序列的有______。
- A.P2,P4,P1,P3,P5
- B.P4,P5,P3,P2,P1
- C.P4,P2,P1,P5,P3
- D.P5,P3,P2,P1,P4
- E.P4,P5,P2,P3,P1
A B C D E
ACE
[解析] P
1,P
2,P
3,P
4,P
5该序列下资源的数目如下表:
采用银行家算法,P
2,P
4,P
1,P
3,P
5、P
4,P
2,P
1,P
5,P
3、P
4,P
5,P
2,P
3,P
1都是安全序列的,可以真正实施资源分配。因此,本题答案选择A、C、E选项。