- 2025-01-04linux下进程或线程如何通信?
管道fifo无名管道(内存文件):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程之间使用。进程的亲缘关系通常是指父子进程关系。有名管道(FIFO文件,借助文件系统):有名管道也是半双工的通信方式,但是允许在没有亲缘关系的进程之间使用,管道是先进先出的
- 2024-12-29高性能计算-GPU编程模型(21)
1.GPU的内存模型GPU编程数据需要从CPU主存拷贝到GPU全局存储器,所有线程共享全局存储。开辟的全局存储器空间指针在CPU代码中不能解引用使用,应在计算完结果后再拷贝回CPU主存空间。线程块内共享存储。(1)线程私有的存储有寄存器、本地内存(2)线程块内有块内线程共享的共享内
- 2024-12-19获取任意一个进程的共享内存的fd对应的资源,增加引用,实现数据的接管——包含非export的内核函数的模块内使用
一、背景在之前的 memfd配合跨进程传输fd的例子及原理-CSDN博客博客里,我们讲了跨进程通过socket传递fd的底层实现原理,并且给了一个例子来替代socket传输和转换部分的逻辑,直接使用底层fd和file的接口来通过模块ko来实现跨进程的fd的转换和重新映射。这篇博客里,我们继续fd的
- 2024-12-18ARM学习(38)多进程多线程之间的通信方式
ARM学习(38)ARM学习(38)多进程多线程之间的通信方式一、问题背景笔者在调试模拟器的时候,碰到进程间通信的问题,一个进程在等另外一个进程ready的时候,迟迟等不到,然后通过调试发现,另外一个进程变量已经变化了,但是当前进程变量没变化,需要了解进程间通信的方式。如下图所示,子进
- 2024-12-09# issue 10 进程通信
一、进程间通信 IPC概念:InterProcessCommunication进程间通信,通过内核提供的缓冲区进行数据交换的机制。进程间通信意味着两个不同进程间可以交换数据,为了完成这一点,操作系统中应提供两个进程可以同时访问的内存空间。 进程A和B之间
- 2024-12-07[Linux]共享内存
共享内存共享内存允许两个或多个进程访问同一块物理内存空间,就好像它们对这块内存拥有共同的读写权限一样。这块共享的内存区域由操作系统内核负责管理和维护,进程通过特定的系统调用将其映射到自己的虚拟地址空间中,之后便可以像访问普通内存一样对其进行读写操作,从而实现进程间的
- 2024-12-04【进程】进程间通信
IPC,全称Inter-ProcessCommunication,即进程间通信,指的是在不同进程之间进行数据交换或同步操作的一种技术。在操作系统中,进程是资源分配和调度的基本单位,每个进程都有自己独立的地址空间和资源,因此进程之间不能直接访问彼此的内存区域。为了实现进程间的数据交换和同步,操作系统提
- 2024-11-29轻松理解操作系统 - 一文讲明 共享内存
大家好,我是菲英。在前面呢,我们了解了进程间通信模块的管道机制和消息队列机制:管道机制是什么?消息队列是什么?本期,我们就继续来了解进程间通信模块的共享内存机制。首先,为什么它是最快的进程间通信机制?因为,它是多个进程的一块虚拟内存映射到同一块物理内存区域来实现数据共
- 2024-11-24探索 Linux 的 `/dev/shm`:高效共享内存的秘密
探索Linux的/dev/shm:高效共享内存的秘密在Linux的日常使用中,你可能听说过/dev/shm这个目录,但它的用途和强大之处可能还不太清楚。其实,/dev/shm是一个内存文件系统(tmpfs),为我们提供了一种快速、高效的方式进行数据共享,尤其是在进程间通信的场景下。本文将通过简单的
- 2024-11-23linux-进程间通信
目录1.管道1.1无名管道1.2命名管道2.消息队列3.共享内存4.信号量一个完整的系统离不开各种各样的进程执行不同的任务,不同的任务之间存在着一些联系,为了能够保证进程之间的协调运作,使系统达到的理想的效果,需要进程之间传递信息。进程间通信目的:1.数据传输:一个进程需
- 2024-12-13mysql 的row_count函数和found_rows函数【转】
row_count()row_count函数返回的是当前连接中最近一次操作数据库的所影响的行数,增删改语句都能对它有效果。一定要是当前连接中,这个条件很重要!下面两条语句如果是用mysql客户端工具运行,一定要将两条sql全部选中一起运行才有效果。deletefromTwhereid=1;selectrow_count()
- 2024-11-26JDK17中关于ZGC的部分优化建议
ZGC是一个可扩展的低延迟垃圾回收器。ZGC在执行所有耗时操作时都是并发进行的,不会停止应用线程的执行超过一毫秒。它适用于需要低延迟的应用程序。暂停时间与使用的堆大小无关。ZGC对于从几百兆字节到16TB的堆大小都能良好工作。ZGC版本的选择ZGC存在两种版本,旧版本是不使用
- 2024-11-24深入理解数据库连接池:从概念到实践
深入理解数据库连接池:从概念到实践引言在现代Web应用开发中,数据库连接的管理是一个至关重要的环节。传统的数据库连接管理方式在高并发环境下存在性能瓶颈,而数据库连接池技术通过预先创建和管理数据库连接,显著提高了系统的性能和稳定性。本文将深入探讨数据库连接池的概念、优势
- 2024-11-24用星球助手下载帖子的手把手教程
当我们想要把星球里的帖子和附件下载到本地电脑上慢慢学习时,一篇一篇下载太麻烦了,耗时且无聊.用星球助手就非常方便啦.打开软件后,就是这样的界面.点击"新增",输入星球名字和网页链接.就像这样.最后,就是点击"启动"开启一键下载了.帖子,图片,附件,全都保存在
- 2024-11-24[Redis 基础知识] Redis Set 类型常用命令
(1)简介Redis的Set是String类型的无序集合。集合元素是唯一的,这就意味着集合中不能出现重复的数据。Redis中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。集合中最大的元素数为2^32-1(4294967295,每个集合可存储40多亿个元素)。(2)常用命令命令
- 2024-11-24RNN模型文本预处理--基本处理方法
文本处理的基本方法在自然语言处理(NLP)领域,文本处理是一项基础且重要的任务。它涉及将原始文本转换为计算机可处理的形式,以便执行诸如情感分析、文本分类、信息检索等多种应用。本文将介绍文本处理的几个基本方法:分词、词性标注和命名实体识别,并提供相应的Python代码示例。
- 2024-10-18C++使用共享内存实现进程间通信
C++使用共享内存实现进程间通信文件映射是一种实现进程间单向或双向通信的机制。它允许两个或多个本地进程间相互通信。为了共享文件或内存,所有的进程必须使用相同的文件映射的名字或是句柄。为了实现共享文件,第一个进程先调用CreateFile方法。接下来调用CreateFileMappin