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

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

3天内不再提示

进程间的通讯方式

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

1.管道模型通讯

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

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

poYBAGOtUwKAQ0zfAAA46IVlUJE936.png

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

2.消息队列

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

poYBAGOtU0mAPppJAADVUcI8zGk703.png

3.共享内存

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

poYBAGOtU4KAa7EAAAE7rjuHG64344.png

4.信号

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

审核编辑:汤梓红

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

    关注

    5065

    文章

    18998

    浏览量

    302640
  • 进程
    +关注

    关注

    0

    文章

    201

    浏览量

    13942
  • 通讯方式
    +关注

    关注

    0

    文章

    9

    浏览量

    2162
收藏 人收藏

    评论

    相关推荐

    Python中多线程和多进程的区别

    Python作为一种高级编程语言,提供了多种并发编程的方式,其中多线程与多进程是最常见的两种方式之一。在本文中,我们将探讨Python中多线程与多进程的概念、区别以及如何使用线程池与
    的头像 发表于 10-23 11:48 274次阅读
    Python中多线程和多<b class='flag-5'>进程</b>的区别

    PLC多种通讯方式汇总学习~

    PLC的通讯功能是其连接设备、控制系统和外部系统的重要组成部分。PLC支持多种通讯方式,本文将讲述PLC常见的通讯方式及其优缺点,别再傻傻分
    的头像 发表于 09-25 09:09 217次阅读
    PLC多种<b class='flag-5'>通讯</b><b class='flag-5'>方式</b>汇总学习~

    三菱PLC有哪些通讯方式

    随着工业自动化技术的快速发展,PLC(可编程逻辑控制器)作为工业自动化系统的核心控制设备,其通讯方式的多样性和高效性对于整个系统的运行效率起着至关重要的作用。三菱PLC作为市场上的知名品牌,凭借其
    的头像 发表于 06-17 17:04 2342次阅读

    上位机与下位机之间的通讯方式

    设备状态,执行具体任务。两者之间的通讯不仅涉及到数据的传输,还关系到命令的执行和反馈的收集。本文将深入探讨上位机与下位机之间的通讯方式,以期为相关领域的技术人员提供参考。
    的头像 发表于 06-06 11:23 3437次阅读

    逆变电源通讯方式大全,支持加密功能

    逆变器作为电站的核心部件,在不同应用场景下的通讯方式应该如何选择和应用呢?逆变器的通讯方式和应用场景2.14G通讯通讯
    的头像 发表于 05-08 11:47 648次阅读
    逆变电源<b class='flag-5'>通讯</b><b class='flag-5'>方式</b>大全,支持加密功能

    进程通信的消息队列介绍

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

    线程是什么的基本单位 进程与线程的本质区别

    的代码、数据以及用于执行这些代码的上下文信息。一个进程可以由一个或多个线程组成,从而并发执行多个任务。 本质区别: 资源拥有方式进程是资源分配的基本单位,每个进程拥有独立的内存空间、
    的头像 发表于 02-02 16:30 847次阅读

    浅谈Linux的进程

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

    什么是LoRa MESH?LoRa MESH技术通讯方式

    什么是LoRa MESH?LoRa MESH技术通讯方式  LoRa MESH是一种基于LoRa技术的无线通信网络,它利用低功耗广域网(LPWAN)技术实现广域传输和全覆盖的物联网应用。LoRa
    的头像 发表于 01-22 16:10 1791次阅读

    mcu线程和进程的区别是什么

    MCU线程和进程是嵌入式系统中常见的并行执行的概念,它们之间有许多区别,包括线程与进程的定义、资源管理、通信机制、执行方式等等。下面将详细介绍MCU线程和进程的区别。 一、定义与概念
    的头像 发表于 01-04 10:45 678次阅读

    你还是分不清多进程和多线程吗?一文搞懂!

    中同时运行多个独立的进程。每个进程都有自己独立的内存空间,可以同时执行不同的任务。多进程之间通过进程通信的
    的头像 发表于 12-19 16:07 533次阅读

    以太网通讯与485通讯性能对比

    以太网通讯与485通讯性能对比  以太网通讯和485通讯是两种常用的工业通讯方式,它们在性能方面
    的头像 发表于 12-11 17:07 2197次阅读

    PLC跨网段通讯的四种方法

    如果两台PLC分别属于不同网段,并且还有实时通讯的需求,那么这时可以考虑Profinet通讯方式,通过PN/PN Coupler网关来实现实时的数据交换功能。
    发表于 12-08 14:15 1694次阅读
    PLC<b class='flag-5'>间</b>跨网段<b class='flag-5'>通讯</b>的四种方法

    linux查看weblogic进程

    在Linux操作系统中,WebLogic是一种常用的Java应用服务器,用于部署和管理企业级Java应用程序。为了确保WebLogic服务器正常运行,有时我们需要查看WebLogic进程以了解其状态
    的头像 发表于 12-05 16:07 1790次阅读

    如何查看系统是否有僵尸进程

    进程中的指令已经执行完成,但是进程PCB结构还没有回收。   即子进程先于父进程退出后,子进程的PCB需要其父
    的头像 发表于 11-29 15:52 6831次阅读
    如何查看系统是否有僵尸<b class='flag-5'>进程</b>