嵌入式day30

news2024/9/22 5:25:27
管道 --- 半双工通信方式

单工             //广播 --- 单一方向的数据通道

半双工         //对讲机 --- 同一时刻 只能有一个方向

全双工         //手机电话 --- 同一时刻两个方向都可以通信

无名管道 只能用于 亲缘关系进程间

有名管道

是一种特殊的文件

1.存在于 内存中

2.在系统中 有一个对应名称

3.看文件大小 0bytes

fifo

mkfifo   管道名

mkfifo

在指定的pathname路径 + 名称下创建一个权限为mode的有名管道文件

参数:

pathname         创建的有名管道路径+名字

mode         文件权限 //0666

返回值:

成功         返回0

失败         返回-1

信号

本身并不能传递大量数据,信号是一种异步的通信方式

同步与异步:

1、说明的对象一定是两个

2、如果步调一致,则为同步

如果步调不一致,则为异步

信号被称为软中断(---软件层面上---实现一个类似中断过程)

signal

信号处理函数的注册(安装)函数

参数:

signum         //要处理的信号的编号

注:

不能被阻塞,处理和忽略         SIGKILL         SIGSTOP

handler         //要对这个信号做怎样的处理 ---handler是一个函数指针,指向信号处理函数

                     //SIG_IGN ---忽略

                     //SIG_DFL ---默认操作

返回值:

成功         表示上一次设置的信号处理函数的入口地址

失败         SIG_ERR //表示失败

注:此处SIGNIT应为SIGINT

kill

通过该函数可以给pid进程发送信号为sig的系统信号

参数:

pid         要接受信号的进程pid

sig         当前程序要发送的信号编号

---------------------

嵌入式学习第三十天,今天学习了关于有名管道和信号这两种管道通信方式,有名管道即有名字的特殊的文件,其可以实现不同.c间的通信,而信号只能发出指定的信号,其中有两个较为特殊的信号,即SIGKILL         SIGSTOP,这两个不能被阻塞,处理和忽略。后面继续加油!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2048649.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GNN(一)

一、GNN应用领域 芯片设计 场景分析与问题推理 道路交通,动态流量预测 知识图谱 化学医疗等场景 物理模型相关 二、图的基本组成 利用神经网络的目的就是整合特征 图的邻接矩阵 每个像素点周围都有邻居 GAN中数据格式不固定,例如社交网络中人物关…

Processing练习之自动绘制

案例代码如下: import processing.pdf.*; import java.util.Calendar; boolean savePDF false; int maxCount 5000; int currentCount 1; float[] xnew float[maxCount]; float[] ynew float[maxCount]; float[] rnew float[maxCount]; void setup(){ siz…

可视化工具VOFA数据格式介绍

目录 概述 1 认识VOFA 1.1 VOFA特点 1.2 应用简介 2 数据格式介绍 2.1 FireWater格式 2.2 JustFloat格式 概述 本文主要介绍使用可视化工具VOFA打印数据的方法,该工具可以支持字符串类型和float类型的数据可视化操作,使用者只需按照协议要求填充数…

C++ stack、queue、priority_queue【介绍、常用接口、模拟实现】

0.容器适配器 0.1什么是适配器 适配器是一种设计模式,该种模式是将一个类的接口转换成客户希望的另外一个接口。 0.2 STL标准库中stack和queue的底层结构 虽然stack和queue中也可以存放元素,但在STL中并没有将其划分在容器的行列,而是将其…

RabbitMQ 消息可靠保障

RabbitMQ 消息可靠保障 消息的可靠性保证生产端到交换机和队列的可靠性保障解决思路A-确认机制解决思路B-备份交换机 MQ 服务器宕机导致消息丢失消费端消息的可靠性保障 消费端限流 消息的可靠性保证 实际项目中 MQ 的流程一般是:生产端把消息路由到交换机&#xf…

树 状 数 组

可差分信息&#xff1a;如果知道部分的信息&#xff0c;用整体的信息和部分的信息就可以求出剩余部分的信息&#xff0c;那么这个信息是可差分的 P3374 【模板】树状数组 1 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include <iostream> #include <vector> u…

【微信小程序】微信小程序开发前的准备

在正式开发微信小程序之前&#xff0c;需要先进行开发前的准备工作&#xff0c;包括&#xff1a; 注册微信小程序开发账号获取微信小程序AppID安装微信开发者工具创建微信小程序项目 一、注册微信小程序开发账号 1. 点击注册按钮 使用浏览器打开 https://mp.weixin.qq.com/…

铁电存储器(FM24W256)I2C读写驱动(3):基于HAL库实现硬件I2C读写

0 参考资料 FM24W256&#xff08;Cypress公司生产&#xff09;数据手册 1 基于HAL库实现硬件I2C读写 1.1 硬件I2C初始化 FM24W256支持最高1MHz的I2C频率&#xff0c;本例也配置为1MHz&#xff0c;相关初始化代码如下&#xff1a; /*** brief 使用硬件I2C的E2P初始化** retur…

【Linux】yum、vim、gcc/g++的使用

目录 一、Linux 软件包管理器 yum 什么是软件包 关于 rzsz 查看软件包★ 如何安装软件★ 如何卸载软件★ Linux 开发工具 二、Linux编译器-vim使用 vim的基本概念 vim的基本操作 vim正常模式命令集 vim末行模式命令集 vim操作总结 如果在vim界面不小心按了Ctrl …

[Meachines] [Medium] solidstate Apache JAMES RCE+POP3邮件泄露+定时任务权限提升

信息收集 IP AddressOpening Ports10.10.10.51TCP:22&#xff0c;25&#xff0c;80&#xff0c;110&#xff0c;119&#xff0c;4555 $ nmap -p- 10.10.10.51 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 7.4p1 Debian 10deb9u…

Processing练习之变换颜色

案例代码如下&#xff1a; import generativedesign.*; import processing.pdf.*; import java.util.Calendar; boolean savePDFfalse; int tileCountX 2; //jianbianshuliang int tileCountY10;//hangshu color[] colorsLeft new color[tileCountY]; color[] colorsRightne…

管道与信号量

一、基本知识 1、管道&#xff0c;是特殊的文件&#xff08;基于内核&#xff08;内存&#xff09;上创建&#xff09;&#xff1b;以前的文件是在硬盘上创建。 2、工作方向 单工&#xff1a;数据方向单一&#xff0c;广播 半双工&#xff1a;同一时刻只能有一个方向&#…

算法【Java】 —— 滑动窗口

滑动窗口 在上一篇文章中&#xff0c;我们了解到了双指针算法&#xff0c;在双指针算法中我们知道了前后指针法&#xff0c;这篇文章就要提到前后指针法的一个经典的使用 —— 滑动窗口&#xff0c;在前后指针法中&#xff0c;我们知道一个指针在前&#xff0c;一个指针在后&a…

Page与自定义Components生命周期

自定义组件 自定义组件一般可以用@component,装饰,在结构体里面用build方法定义UI,或者用@builder装饰一个方法,来作为自定义组件的构造方法 而页面page一般用@Entry,和@component结合起来使用 页面生命周期方法: onPageShow:页面每次显示时触发 onPageHide:页面每次隐藏时…

【LeetCode每日一题】——662.二叉树最大宽度

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 广度优先搜索 二【题目难度】 中等 三【题目编号】 662.二叉树最大宽度 四【题目描述】 给…

《python语言程序设计》2018版第7章第05题几何:正n边形,一个正n边形的边都有同样的长度。角度同样 设计RegularPolygon类

结果和代码 这里只涉及一个办法 方法部分 def main():rX, rY eval(input("Enter regular polygon x and y axis:"))regular_num eval(input("Enter regular number: "))side_long eval(input("Enter side number: "))a exCode07.RegularPol…

C++入门——01类与对象

1.类 1.1.类的引入 C语言中&#xff0c;结构体中只能定义变量&#xff0c;在C中&#xff0c;结构体内不仅可以定义变量&#xff0c;也可以定义函数。 struct Student {void SetStudentInfo(const char* name, const char* gender, int age){strcpy(_name, name);strcpy(_gen…

微信公众号批量上传、发布文章管理系统(Python版)

功能亮点 一键批量操作文章自动排版支持自定义文章数量适用于多号操作支持文章管理、查询、查看支持查询当前状态 适用对象 公众号运营批量文章上传发布矩阵号管理 部分关键代码及步骤 微信公众号后台的设置与开发栏目中的基本配置里获取appid和appsecret。 获取微信公众号…

软件测试 - 测试用例(设计测试用例的思路、万能公式、测试用例设计的方法)

一、测试用例 1.1 概念 测试用例&#xff08; Test Case &#xff09;是为了实施测试而向被测试的系统提供的一组集合&#xff0c;这组集合包含&#xff1a;测试环 境、操作步骤、测试数据、预期结果等要素。 1.2 编写测试用例 1&#xff09;excel 表格编写 笔试题的测试用例…