linux学习
文章平均质量分 80
嵌入式弼马温
小小猴哥,努努力。
西电本硕,嵌入式知识分享。
展开
-
Linux多进程进阶---进程间通信《总结》(五)
进程间通信(IPC, Inter-Process Communication)在多进程或多线程编程中至关重要,它允许不同进程之间共享数据、发送信号或同步。原创 2024-05-22 17:25:18 · 542 阅读 · 1 评论 -
Linux多进程进阶---进程间通信《消息队列》(四)
实现原理:具有相同IPC命名空间(structipc_namespace)的进程能够同时访问IPC命名空间相同内存空间。:整型数,用来索引(哈希表)IPC对象,检索失败创建IPC对象并返回标识ID,检索成功返回标识ID。3.可以通过消息优先级机制,实现对重要的消息优先处理。2.可以实现多个进程同时进行写入与读出,可以实现并发处理。:整型数,用来索引(radix树)IPC对象,:消息队列继承IPC对象,提供一些通用信息。Key,标识ID,IPC对象。1.不受进程的生命周期影响。单独展示msgctl的用法。原创 2024-05-22 17:21:03 · 354 阅读 · 1 评论 -
Linux多进程进阶---进程间通信《内存共享》(三)
共享内存不同于内存映射区,它不属于任何进程,并且不受进程生命周期的影响。通过调用Linux提供的系统函数就可得到这块共享内存。使用之前需要让进程和共享内存进行关联,得到共享内存的起始地址之后就可以直接进行读写操作了,进程也可以和这块共享内存解除关联, 解除关联之后就不能操作这块共享内存了。在所有进程间通信的方式中共享内存的效率是最高的。功能:创建一个新的共享内存段,或者获取一个已存在的共享内存段的标识符。key:用于唯一标识共享内存段的键值。原创 2024-05-08 23:16:14 · 1011 阅读 · 1 评论 -
Linux多进程进阶---进程间通信《内存映射》(二)
高效的数据访问与共享的基石在现代计算体系结构中,内存映射是一项核心技术和编程策略,它极大地提升了数据访问的效率,促进了进程间的高效通信。本文旨在深入浅出地介绍内存映射的基本概念、工作原理、应用场景以及其实现机制,帮助读者理解这一强大工具的精髓。原创 2024-05-08 21:36:45 · 797 阅读 · 1 评论 -
Linux多进程进阶---进程间通信《管道》(一)
Linux环境编程中进程间通信的重要性和方法:进程间通信是通过传输数据或共享信息来实现的,包括数据交换、共享资源、进程同步和消息传递。Linux系统提供了四大类进程间通信方法:管道、SystemVIPC、POSIXIPC和套接字。其中管道适用于具有亲缘关系的进程,SystemVIPC有消息队列、信号量和共享内存,POSIXIPC通过文件实现消息队列、信号量和共享内存。本质就是不用的进程可以访问相同的内存区域。原创 2024-05-08 20:17:26 · 1151 阅读 · 2 评论 -
Linux多线程进阶--手搓线程池(c版本)
/ 线程池结构体// 任务队列// 容量// 当前任务个数// 队头 -> 取数据// 队尾 -> 放数据// 管理者线程ID// 工作的线程IDint minNum;// 最小线程数量int maxNum;// 最大线程数量// 忙的线程的个数// 存活的线程的个数// 要销毁的线程个数// 锁整个的线程池// 锁busyNum变量// 任务队列是不是满了// 任务队列是不是空了// 是不是要销毁线程池, 销毁为1, 不销毁为0。原创 2024-05-07 16:51:47 · 620 阅读 · 0 评论 -
Linux网络编程(二)
在网络通信中最重要的决定信息的流向的就是:IP地址+端口号。原创 2024-05-04 23:56:31 · 371 阅读 · 0 评论 -
Linux网络编程(一)
mac地址:48位全球唯一的网络设备省份标识。ARP:IP地址—》mac地址RARP:mac地址–》IP地址ppp协议:拨号协议。原创 2024-05-04 17:54:31 · 299 阅读 · 0 评论