嵌入式 Linux进程间通信(五)——进程间通信简介
2017-03-26 12:43
302 查看
嵌入式 Linux进程间通信(五)——进程间通信简介
一、进程间通信简介
Linux的进程通信方式基本上是从Unix平台上的进程通信方式继承而来的。在Unix发展过程中,贝尔实验室和BSD(加州大学伯克利分校的伯克利软件发布中心)是Unix发展的主要贡献者,但两者在进程间通信方面的侧重点有所不同。贝尔实验室对Unix早期的进程间通信方式进行了系统的改进和扩充,形成了 “system V IPC”,通信进程局限在本地计算机内;BSD则跳过了进程通信局限在本地计算机的限制,形成了可以在计算机间进行通信的基于套接口(socket)的进程间通信机制。Linux则继承了贝尔实验室的system V IPC和BSD Socket两者进程间通信机制。Linux进程间通信方式包括:管道、FIFO、信号、System V消息队列、System V信号灯、System V共享内存、Socket通信。
进程间通信的目的:A、数据传输:进程间需要相互传输数据B、共享数据:多个进程间操作共享数据
C、通知事件:进程间需要通知某个事件的发生
D、资源共享:多个进程之间共享同样的资源,需要内核提供锁和同步机制
E、进程控制:有些进程需要完全控制另一个进程的执行(如Debug进程)
二、多进程编程的优缺点
1、优点
A、每个进程互相独立,不影响主程序的稳定性,子进程崩溃没关系B、通过增加CPU,就可以容易扩充性能
C、可以尽量减少线程加锁/解锁的影响,极大提高性能
D、每个子进程都有4GB地址空间和相关资源,总体能够达到的性能上限非常大
2、缺点
A、逻辑控制复杂,需要和主程序交互B、需要跨进程边界,如果有大数据量传送,就不太好,适合小数据量传送、密集运算
C、多进程调度开销比较大
本文出自 “生命不息,奋斗不止” 博客,转载请与作者联系!
相关文章推荐
- 嵌入式 Linux进程间通信(十一)——多线程简介
- 嵌入式 Linux进程间通信(五)——进程间通信简介
- 嵌入式 Linux进程间通信(十一)——多线程简介
- 七款嵌入式Linux操作系统简介
- Linux_嵌入式文件系统简介
- 嵌入式Linux开发简介
- 嵌入式 Linux 开发简介
- Linux 进程间通信(IPC)简介Linux 进程间通信(IPC)简介
- linux网络编程之进程间通信基础(二):死锁、信号量与PV原语简介
- 嵌入式 Linux进程间通信(八)——共享内存
- 嵌入式 Linux进程间通信(二)——exec族函数
- 七款嵌入式Linux操作系统简介
- 嵌入式 Linux环境进程间通信(五): 共享内存(上)
- 嵌入式Linux文件系统简介
- 嵌入式Linux开发简介
- 嵌入式Linux系统BSP简介
- 嵌入式成长轨迹4【嵌入式环境及基础】【嵌入式Linux软件开发入门】【Shell简介】
- 嵌入式Linux系统的Bootloader简介
- Linux进程间通信IPC的几种方式简介
- 嵌入式 Linux环境进程间通信(三):消息队列