📅  最后修改于: 2023-12-03 14:54:50.136000             🧑  作者: Mango
UGC NET CS 2016 年 8 月 – II 的问题 27是一道关于操作系统的问题。其主要考察内容包括进程同步、远程过程调用(RPC)和进程间通信(IPC)的相关知识。
共享内存用于实现两个并发进程之间的通信。在使用共享内存时,以下哪项不需要互斥?
A. 信号灯(semaphore) B. 临界区(critical section) C. 互斥锁(mutex) D. 进程间通信(IPC)
答案选D,即进程间通信(IPC)。
当使用共享内存时,需要对共享内存进行保护以避免数据竞争。因此,使用临界区和互斥锁都可以实现对共享内存的互斥访问。而信号灯是一种良好的机制,可用于保护共享资源,因为当一个进程访问一个共享资源时,其他进程必须等待一个信号来指示共享资源已释放并且它们可以使用共享资源。因此,选项A是需要互斥的一种机制。
与此不同的是,IPC 并不是一种需要互斥的机制。IPC作为一种进程间通信的机制,主要是通过进程间的消息传递实现通信。这种机制不需要共享内存区域,因此在使用时也不需要进行互斥操作。所以,选项D是本题正确答案。
本题是一道考察操作系统进程同步、IPC 和共享内存的题目。对于这道题,需要了解常用的 IPC 机制和其和共享内存的差别,以及每种机制需要进行互斥操作的情况。
参考代码:
## 问题描述
共享内存用于实现两个并发进程之间的通信。在使用共享内存时,以下哪项不需要互斥?
A. 信号灯(semaphore)
B. 临界区(critical section)
C. 互斥锁(mutex)
D. 进程间通信(IPC)
## 解析
答案选D,即进程间通信(IPC)。
...
## 结论
...
参考代码: