0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

进程间的通讯方式

嵌入式应用开发 来源:嵌入式应用开发 作者:嵌入式应用开发 2022-12-29 16:47 次阅读

1.管道模型通讯

管道模型与软件生命周期模型——瀑布模型(Waterfall Model)很相似。所谓的瀑布模型,其实就是将整个软件开发过程分成多个阶段,往往是上一个阶段完全做完,才将输出结果交给下一个阶段。从管道的这个名称可以看出来,管道是一种单向传输数据的机制,它其实是一段缓存,里面的数据只能从一端写入,从另一端读出。如果想互相通信,我们需要创建两个管道才行。

管道又可以分为:匿名管道和命名管道。

poYBAGOtUwKAQ0zfAAA46IVlUJE936.png

一方面,我们能够看到,管道里面的内容被读取出来,打印到了终端上;另一方面,echo 那个命令正常退出了,也即交接完毕,前一个项目组就完成了使命,可以解散了。管道通信,我们可以看出,瀑布模型的开发流程效率比较低下,因为团队之间无法频繁地沟通。而且,管道的使用模式,也不适合进程间频繁的交换数据。

2.消息队列

消息队列可以理解为发邮件,每一封邮件都视为一个独立的数据单元,也就是消息体,每个消息体都是固定大小的存储块,在字节流上不连续。

poYBAGOtU0mAPppJAADVUcI8zGk703.png

3.共享内存

每个进程都有自己独立的虚拟内存空间,不同的进程的虚拟内存空间映射到不同的物理内存中去。这个进程访问 A 地址和另一个进程访问 A 地址,其实访问的是不同的物理内存地址,对于数据的增删查改互不影响。

poYBAGOtU4KAa7EAAAE7rjuHG64344.png

4.信号

信号可以在任何时候发送给某一进程,进程需要为这个信号配置信号处理函数。当某个信号发生的时候,就默认执行这个函数就可以了。这就相当于咱们运维一个系统应急手册,当遇到什么情况,做什么事情,都事先准备好,出了事情照着做就可以了。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4984

    文章

    18300

    浏览量

    288838
  • 进程
    +关注

    关注

    0

    文章

    194

    浏览量

    13876
  • 通讯方式
    +关注

    关注

    0

    文章

    9

    浏览量

    2155
收藏 人收藏

    评论

    相关推荐

    进程间通信的消息队列介绍

    消息队列是一种非常常见的进程间通信方式
    的头像 发表于 04-08 17:27 117次阅读

    浅谈Linux的进程

    进程和程序的区别: 进程是动态的,程序是静态的 一、进程的创建(fork()函数) int main(){ pid_t pid; pid=fork(); if(pid
    的头像 发表于 01-28 15:54 101次阅读
    浅谈Linux的<b class='flag-5'>进程</b>

    进程进入等待状态有哪几种方式

    进程进入等待状态的方式有多种,下面将详细介绍。 一、阻塞等待状态 阻塞等待状态是指进程由于某些原因无法继续执行,需要等待特定事件的发生。以下是几种常见的阻塞等待状态: I/O操作:当进程
    的头像 发表于 11-17 11:19 845次阅读

    进程间通信的原理

    一.为什么进程间需要通信? 1).数据传输 一个进程需要将它的数据发送给另一个进程; 2).资源共享 多个进程之间共享同样的资源; 3).通知事件 一个
    的头像 发表于 11-10 17:05 409次阅读
    <b class='flag-5'>进程</b>间通信的原理

    进程间通信方式总结

    进程间通信(IPC): 进程间通信的方式有很多,这里主要讲到进程间通信的六种方式,分别为:管道、FIFO、消息队列、共享内存、信号、信号量。
    的头像 发表于 11-09 09:25 381次阅读
    <b class='flag-5'>进程</b>间通信<b class='flag-5'>方式</b>总结

    分页方式中可以每个进程分配一个页表吗

    在分页方式下,每个进程分配一个页表会有什么问题? 不卖关子了,每个进程分配一个页表会有空间上的缺陷,因为操作系统上可以运行非常多的进程,那不就意味着页表数量非常多! 1B(Byte 字
    的头像 发表于 10-09 17:06 694次阅读
    分页<b class='flag-5'>方式</b>中可以每个<b class='flag-5'>进程</b>分配一个页表吗

    常见的进程间通信方式

    进程间通信 如果两个进程,想要知道对方在干嘛,或者进行协调运行,就需要进程间通信。下面介绍一下常见的进程间通信方式。 无名管道: 管道是一种
    的头像 发表于 10-08 15:48 833次阅读
    常见的<b class='flag-5'>进程</b>间通信<b class='flag-5'>方式</b>

    PCB进程的创建和终止过程

    PCB进程控制块 独立运行基本单位的标志:创建进程时创建PCB,进程结束时回PCB,进程随之消亡。系统是通过PCB,感知进程的存在。PCB已
    的头像 发表于 10-08 15:36 783次阅读

    支持总线方式的常用的通讯方式有哪些?

    支持总线方式的常用的通讯方式有哪些
    发表于 09-25 07:06

    工厂生产车间管理看板系统应该选择什么通讯方式

    工厂看板系统通常采用有线通讯方式,这种通讯方式稳定可靠,但是有线连接方式因为受到线缆长度等因素的限制,导致无法覆盖较大区域内的所有生产线。并
    的头像 发表于 09-12 16:43 671次阅读
    工厂生产车间管理看板系统应该选择什么<b class='flag-5'>通讯</b><b class='flag-5'>方式</b>

    OpenHarmony—应用HSP开发指导

    方式使用应用HSP提供的能力,从而实现应用自身所需要的功能。 注意事项 应用HSP的代码会运行在开发者应用的进程中,调用相关代码时,需要做好异常捕获与容错处理,防止由于应用
    发表于 09-11 19:02

    采集设备都有哪几种方式实现通讯及如何选择

    采集设备都有哪几种方式实现通讯及如何选择   采集设备通讯可以通过不同的方式实现,例如: 串口通讯:使用串口传输数据,
    的头像 发表于 08-16 09:42 447次阅读

    伺服电机如何选择脉冲、模拟量、通讯三种控制方式

    伺服电机控制方式有脉冲、模拟量和通讯这三种,在不同的应用场景下,我们该如何选择伺服电机的控制方式呢?
    发表于 05-16 15:56 2796次阅读
    伺服电机如何选择脉冲、模拟量、<b class='flag-5'>通讯</b>三种控制<b class='flag-5'>方式</b>?

    Modbus通讯协议的几种实现方式

    版权要求,不用支付额外费用、硬件要求简单容易部署、使用广泛便于系统集成。Modbus采用半双工的通讯方式,由1个子站和多个从站组成,允许多个设备连接在同一个网络上进行通讯。   2. LabVIEW实现
    发表于 05-05 16:19