linux——进程间通信IPC

进程间通信

  • 存储
  • IPC七种方法
      • 无名管道
      • 有名管道
      • 信号量
      • 信号
      • 消息队列
      • 共享内存
      • socket套接字

存储

CPU(寄存器)、缓存cache、内存、外存;
存储大小从小到大;
进程运行在内存中,为了更高效的运行多个进程,则物理内存映射成虚拟内存,实现内存空间的扩大;注意,这里不是简单的扩容,是利用内存管理算法进行高效的映射。
就比如一个嵌入式系统中,运行的物理内存是4g,每个进程都有4g的连续的运行内存,其实就是算法发挥了作用;真实的物理内存有可能只占了3g,从而实现每个进程都有4g的内存的使用。但是每个进程间都有公共的部分,这公共的部分,就是基于内核文件系统的部分。所以进程间通信,必然会经过内核,陷入内核。

IPC七种方法

IPC目的:
1、数据传输
2、共享数据
3、通知事件
4、资源共享
5、进程控制机制

无名管道

又称匿名管道,特点:
1、单向通信;半双工
2、存在于亲缘关系的进程;父子进程间通信
3、有大小限制 4K;
4、基于数据流,即文件,依赖于文件系统,区别于字节流
补充:

你可能感兴趣的:(嵌入式驱动工程项目开发,linux,运维,服务器)