Linux系统编程:进程间通信(IPC)——管道 有名管道 信号 消息队列 共享内存 信号量

进程间通信IPC


✨✨✨✨✨✨

概述

  • 进程是一个独立的资源分配单元,不同进程之间相互独立。不同的进程需要进行信息的交互和状态的传递等,因此需要进程间通信( IPC:Inter Processes Communication )

  • 示意图:在这里插入图片描述

  • 进程间通信的功能:

    • 数据传输:一个进程需要将它的数据发送给另一个进程。
    • 通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件(如进程终止时要通知父进程)。
    • 资源共享:多个进程之间共享同样的资源。为了做到这一点,需要内核提供互斥和同步机制。
    • 进程控制:有些进程希望完全控制另一个进程的执行(如 Debug 进程),此时控制进程希望能够拦截另一个进程的所有陷入和异常,并能够及时知道它的状态改变。
  • Linux 操作系统支持的主要进程间通信的通信机制:

在这里插入图片描述


✨✨✨✨✨✨

传送门?:

进程间通信(IPC):软中断信号(signal)

进程间通信(IPC):无名管道(pipe)和有名管道(named pipe)

进程间通信(IPC):消息队列(message)

进程间通信(IPC):共享内存(shared memory)和信号量(semaphore)

Linux网络IPC: Socket套接字的介绍和使用


版权声明:本文为weixin_49638344原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。