linux学习笔记--ipcs命令
来源:互联网 发布:秦美人翅膀进阶数据 编辑:程序博客网 时间:2024/06/05 03:29
最近在做共享内存这块,经常接触到ipcs这个命令,所以顺便来csdn做一下笔记,免得以后忘了哈。
我们知道,进程间通信,主要有几个方法:信号、共享内存、队列、管道、信号量、套接字。而ipcs就是查看当前进程通信内容的命令
主要有以下几个参数:
ipcs -a 是默认的输出信息 打印出当前系统中所有的进程间通信方式的信息
ipcs -m 打印出使用共享内存进行进程间通信的信息
ipcs -q 打印出使用消息队列进行进程间通信的信息
ipcs -s 打印出使用信号进行进程间通信的信息
ipcs -t 输出信息的详细变化时间
ipcs -p 输出ipc方式的进程ID
ipcs -c 输出ipc方式的创建者/拥有者
在我的fedora上直接输入ipcs,显示如下:
------------shared memory segments------------------共享内存
从左到右分别是key ,共享内存的标识id,所有者,操作权限,共享内存大小,当前占用的进程数,共享内存的状态
dest表示共享内存段已经删除,但是还有用户在使用它。
听起来云里雾里,于是参照了另外一篇csdn文章,看了觉得有点明白:
调用shmctl函数的IPC_RMID对共享内存段进行删除时,系统会首先查看一下该内存段是否有进程在调用。如果没有,则直接删除;如果内存还在为进程服务,则将其状态置为dest,等到关联的进程结束,内核再对其进行删除回收。
------------semaphore arrays--------------信号量(信号量数组)
nsem表示信号量数组中的信号量数
----------- message queues---------------消息队列
另外,我们可以用ipcrm命令去删除相应的进程通信方式:
ipcrm -M shmkey 移除用shmkey创建的共享内存段
ipcrm -m shmid 移除用shmid标识的共享内存段
ipcrm -Q msgkey 移除用msqkey创建的消息队列
ipcrm -q msqid 移除用msqid标识的消息队列
ipcrm -S semkey 移除用semkey创建的信号
ipcrm -s semid 移除用semid标识的信号
- linux学习笔记--ipcs命令
- linux学习笔记--ipcs命令
- linux ipcs 命令详解
- Linux ipcs命令
- linux命令--ipcs, ipcrm
- Linux ipcs 命令详解
- ipcs命令学习
- 关于linux命令ipcs--自学
- linux 命令之 ipcs、ipcrm
- Linux ipcs 命令和ipcrm命令详解
- Linux中的ipcs命令与ipcrm命令
- Linux ipcs 命令和ipcrm命令详解
- ipcs命令
- ipcs命令
- 命令IPCS
- ipcs命令
- ipcs 命令
- ipcs命令
- svn检查文件名中是否有空格
- GitHub 删除指定仓库
- 嵌入式Linux基础知识1(嵌入式Linux开发流程)
- C++面试笔记_1
- spring_scope作用域和使用外部属性文件和spEL表达式
- linux学习笔记--ipcs命令
- ubuntu14.04环境中github的安装与使用入门教程(最新,2016-06-03)
- Android View体系(十一)自定义ViewGroup
- Android考试系统
- jva 线程的生命周期和状态控制
- Android Studio开发中常见问题及解决(二)
- 写轮播需要注意的点
- Android Studio开发中常见问题及解决(一)
- iOS移动View点击事件(二)