30 消息队列

news/2024/5/18 13:26:04

原理

在这里插入图片描述
操作系统可以通过页表映射在共享区创建一块共享内存,也可以申请一个队列。A进程和B进程可以向这个队列发送数据块,两个进程接收数据块来通信

函数

申请数据块
在这里插入图片描述
参数中的key来自于ftok函数
在这里插入图片描述
删除消息队列
在这里插入图片描述

同样消息队列也有数据结构管理,可以获取
在这里插入图片描述在这里插入图片描述

消息队列也是通过key来区分

发送消息和消息结构
在这里插入图片描述在这里插入图片描述

接收消息
在这里插入图片描述

查看消息队列命令

ipcs -q

在这里插入图片描述

删除消息队列

ipcrm -q smsqid

IPC内核数据结构设计

在这里插入图片描述

system v的每个通信方式都有一个ipc_perm的结构,里面储存了共享资源的信息,包括key值。内核里ipc是一个模块,有一个ids结构体内的指针指向了ipc_id的数组,这个里面有一个类型为指针的柔性数组,定义了一个kern_ipc_perm结构,里面就是内核管理ipc资源的属性,数组里保存的都是每一个ipc结构的指针,当需要具体的某一类资源,如共享内存,返回给用户层shmid,就是数组下标,线性递增的,从0开始,当到达最大值又会回归0继续增加。用户通过shmid告诉系统哪个资源,系统通过key标识唯一来遍历数组。找到后通过强转为共享内存类型的perm返回。多态的形式


http://www.mrgr.cn/p/65816732

相关文章

service类型及功能简介+pod类型

功能定义及简介: 定义:K8s 中的Service是一种抽象,用于定义一组Pod的逻辑集合,并为它们提供统一的网络入口。Service充当了Pod的负载平衡器和服务发现器,为应用程序提供了稳定的网络地址,使得应用程序可以访问与之关联的Pod而无需了解其具体的IP地址或端口。 功能:Servi…

记一次自己的蠢币操作

今天在Hyper-V上安装了一个Ubuntu 22.04的虚拟机,折腾了老半天安装完以后随便搜了一篇换apt源的博客,点击查看镜像源(Ubuntu 20.04) #添加清华源 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse deb-src https://mirrors.tuna…

Dubbo应用可观测性升级指南与踩坑记录

应用从dubbo-3.1.*升级到dubbo-*:3.2.*最新稳定版本,提升应用的可观测性和度量数据准确性。 1. dubbo版本发布说明(可不关注) dubbo版本发布 https://github.com/apache/dubbo/releases 【升级兼容性】3.1 升级到 3.2 2. 应用修改点 应用一般只需要升级dubbo-s…

微信小程序酒店选择日期和入住人数(有效果图)

效果图 app.vue onLaunch:function(options){this.defaultcache()}defaultcache(){// 入住信息缓存var arr this.getDateTime();var ReserVation {reservType:0,//1 人数 2日期InCheckin:{},//入离日期peopleArr:[{title:成人,num:2},{title:儿童,num:0},{title:宝子,num:1…

JavaScript 函数

函数这里有函数定义和函数调用,函数名称加上小括号这才叫函数调用。 可以先定义使用函数,再去调用函数,因为在真实执行的时候,它会将函数提升到顶部。 return后面不能再去加任何代码,只要return了后面

ChatGPT实用指南2024

随着ChatGPT技术的演进,越来越多的人开始在工作中利用此工具。以下是关于ChatGPT的实用指南,适合不太熟悉此技术的朋友参考。 一、ChatGPT概述 1. ChatGPT是什么? ChatGPT是基于OpenAI开发的GPT大型语言模型的智能对话工具。它能够通过自然语…

使用JXLS+Excel模板制作灵活的excel导出

前期一直卡在模板的批注上,改了很多遍的模板批注最终才成功导入,记录下方便以后寻找。 话不多说直接上代码: Report package com.example.jxls.common;import java.io.IOException; import java.io.InputStream; import java.io.OutputStr…

自己动手搞IPTV组播源-直播源

例如得到某地的组播地址,http://27.191.170.26:7000/rtp/239.254.200.45:8008,其中http://27.191.170.26:7000是我们要找的前缀IP,/rtp/239.254.200.45:8008是组播3.打开ip138.com,查找27.191.170.26的归属地,得知是河北唐山电信4.打开https://fofa.info/,输入语法:udpx…

京东商品详情数据采集API接口|附京东商品数据返回PHP多语言高并发

京东获得JD商品详情 API 返回值说明 item_get-获得JD商品详情 API测试 注册开通 jd.item_get 公共参数 名称类型必须描述keyString是调用key(必须以GET方式拼接在URL中)secretString是调用密钥api_nameString是API接口名称(包括在请求地址…

恶心透了的小日子,害人终害己,国货呼吁关注抵制日本核废水排放

​|日本排放核废水 日本政府决定将福岛第一核电站的核污染水经过处理后排放入海,这一决定引发了多方面的担忧和反对,特别是在周边国家,包括中国和韩国。关于日本排放核污染水这一新闻事件,我们必须首先认识到,核能利用…

上位机图像处理和嵌入式模块部署(树莓派4b使用pcl点云库)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 图像处理,大家都知道它有显著的优点和缺点。优点就是分辨率高,信息丰富。缺点就是,整个图像本身没有深度信息。…

BootstrapAdmin Net7:基于RBAC的后台管理框架,实现精细化权限管理与多站点单点登录

BootstrapAdmin Net7:基于RBAC的后台管理框架,实现精细化权限管理与多站点单点登录 摘要 随着企业信息化建设的不断深入,后台管理系统在企业运营中扮演着越来越重要的角色。本文介绍了一款基于RBAC(Role-Based Access Control)的…

代码随想录算法训练营day34

题目:860.柠檬水找零、406.根据身高重建队列、452. 用最少数量的箭引爆气球 参考链接:代码随想录 860.柠檬水找零 思路:本题思路比较容易想,主要对于5,10,20三种情况分别讨论,维护三个变量分别记录目前手中三种钞票…

实验2 NFS部署和配置

一、实训目的 1.了解NFS基本概念 2.实现NFS的配置和部署 二、实训准备 1.准备一台能够安装OpenStack的实验用计算机,建议使用VMware虚拟机。 2.该计算机应安装CentOS 7,建议采用CentOS 7.8版本。 3.准备两台虚拟机机(客户机和服务器机&…

Github账号注册

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

面试十八、容器适配器

容器适配器是一种特殊类型的容器,它们提供了一种不同于常规容器的接口和行为。容器适配器通常是建立在其他容器之上,通过改变接口或添加限制来满足特定的需求或解决特定的问题。 在 C 中,标准库提供了三种常见的容器适配器: 栈&am…

Docker(七):容器监控工具(Portainer、CAdvisor)

一:轻量级可视化监控工具Portainer 可视化监控工具, 可以通过docker安装,用于管理和监控docker,基本上的docker命令都有对应的按钮来操作。 # always 表示docker重启了该容器也跟着重启 docker run -d --name portainer -p 8000:8000 -p 90…

java 创建和请求sse服务

主要依赖 <!--spring-boot父工程--><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.2.RELEASE</version></parent><dependency><gro…

任务栏“居中”显示!这个美观又实用的小技巧

有网友表示,电脑任务栏的软件图标都是靠左显示的,不太美观,有木有办法让它们“居中”呢?其实是可以的,今天我就教大家如何设置,快来学一招吧! 1、首先,新建一个文件夹,名字/位置随意;2、右键点任务栏,选择【工具栏】-【新建工具栏】,选择刚才建的文件夹; 3、接着…

【昇腾产品应用】英码科技EA500I基于昇腾Mind SDK实现实时人体关键点检测

在教育、体育、安防、交通、医疗等领域中&#xff0c;实时人体关键点检测应用发挥着至关重要的作用&#xff0c;比如在体育训练时&#xff0c;实时人体关键点检测可以精确、实时地捕捉运动员的动作&#xff0c;从而进行动作分析和优化&#xff1b;在安防应用场景中&#xff0c;…