阅读以下关于利用信号量机制解决进程同步与互斥方面的应用实例,回答问题1至问题3。
[说明]
在多道程序系统中,进程是并发执行的。这些进程间存在着不同的相互制约关系,主要表现为同步和互斥两个方面。信号量机制是解决进程间同步与互斥的有效方法。下面是信号量应用实例。
下图所示代码是在μC/OS-II操作系统上运行的一个应用的主函数。该函数创建了任务Task1和Task2,其中Task1实现从键盘读入一个字符的功能,Task2将该字符输出到屏幕,它们使用信号量和一个公共变量buffer来传递该字符。
主函数、Task1和Task2中所调用的函数原型说明如下:
a.创建一个信号量:OS EVENT*OSSemCreate(INT16Uvalue);
b.创建一个任务:INT8U OSTaskCreate(void(*task)(void*pd),void*pdata,OS_STK *ptos,INT8U prio);
c.开始执行多任务:void OSStart(void);
d.从键盘读入一个字符:char scanc();
e.输出一个字符至屏幕:void printc(char ch);
f.发出一个信号量:INT8U OSSemPost(OS EVENT*pevent);
g.等待一个信号量:void OSSemPend(OS_EVENT*pevent,INT16U timeout,INT8U *err)
请简述什么是临界资源?什么是临界区?访问临界资源应遵循哪些原则?
第2题
以下关于管程的叙述错误的是()。
A.管程是进程同步工具,解决信号量机制大量同步操作分散的问题
B.管程每次只允许一个进程进入管程
C.管程中的signal操作的作用和信号量机制中的V操作相同
D.管程是被进程调用的,管程是语法范围,无法创建和撤销
第3题
A.信号量机制是一种进程同步机制
B.使用信号量实现进程的同步时,信号量的初值必须设置为0
C.使用信号量机制实现进程互斥时,互斥信号量的初值为0
D.信号量机制中的P,V操作是由原语来实现的,且P,V操作必须在同一进程中成对出现
第7题
机制是一种解决进程同步和互斥的有效工具;当其值为-2,表示当前阻塞队列中有(26)个等待进程。
(57)
A.线程
B.管程
C.信号量
D.临界资源
第8题
解决进程同步与互斥问题时,对信号量进行P原语操作是在下列哪类代码区完成的?
A.进入区
B.临界区
C.退出区
D.剩余区
第9题
实现进程同步时,每一个消息与一个信号量对应,进程______可把不同的消息发送出去;
A.在同一信号量上调用P操作
B.在不同信号量上调用P操作
C.在同一信号量上调用V操作
D.在不同信号量上调用V操作
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!