题24
题目
Q:速度最快的进程通信方式是 ( )。
A. 消息传递
B. Socket
C. 共享内存
D. 管道
分析
A:消息传递需要在内核和用户空间中进行数据的拷贝, 而且需要对消息进行格式化和排队, 这些都会增加通信的开销。
套接字 (Socket) 通常用于不同机器之间的进程通信, 需要经过传输层以下的协议栈, 而且可能涉及数据的加密和压缩, 这些都会降低通信的速度。
共享内存允许多个进程直接访问同一块物理内存, 不需要任何数据的拷贝和中介, 是最快的进程通信方式。
管道需要在内核和用户空间进行数据的拷贝, 而且一般是单向传输, 降低了通信的效率。
解
C