下列关于进程通信的叙述正确的有( )。 Ⅰ.基于消息队列的通信方式中,复制发送比引用发送效率高 Ⅱ.从进程通信的角度设计PCB应包含的项目,需要有消息队列指针、描述消息队列中消息个数的资源信号量、进程调度信息 Ⅲ.进程可以通过

admin2019-08-10  30

问题 下列关于进程通信的叙述正确的有(    )。
    Ⅰ.基于消息队列的通信方式中,复制发送比引用发送效率高
    Ⅱ.从进程通信的角度设计PCB应包含的项目,需要有消息队列指针、描述消息队列中消息个数的资源信号量、进程调度信息
    Ⅲ.进程可以通过共享各自的内存空间来直接共享信息
    Ⅳ.并发进程之间进行通信时,一定共享某些资源

选项 A、Ⅰ、Ⅳ
B、Ⅰ、Ⅲ
C、Ⅱ、Ⅲ
D、Ⅳ

答案D

解析 Ⅰ错误,当发送方发送一个较小的数据包时,发送方将数据复制至消息队列,然后接收方从消息队列中拷走,这称为复制发送;如果数据包较大,发送方只是把指向数据包的指针和数据包大小发送给接收者,接收者通过指针访问数据包,这称为引用发送。显然引用发送比复制发送更复杂,但不需要复制数据,所以引用发送效率高。
    Ⅱ错误,进程调度信息属于进程管理的内容,并非进程通信内容,这里还缺少一个实现消息队列互斥访问的互斥信号量。
    Ⅲ错误,各个进程有自己的内存空间、数据栈等,所以只能使用进程间通信(Inter ProcessCommunications,IPC),而不能直接共享信息。需要注意的是,这里的内存空间和进程通信中的共享的缓冲区是不一样。
    Ⅳ正确,并发进程之间进行通信时,必定存在资源共享问题。进程通信归结为三大类:
    (1)共享存储器系统,很明显共享了存储器资源。
    (2)消息传递系统,共享了消息文件。
    (3)管道通信,共享了管道文件。
转载请注明原文地址:https://kaotiyun.com/show/kuCi777K
0

最新回复(0)