一、ipcs
1. 功能
显示 Linux 中进程间通信设施的状态,其中包括消息队列、共享内存和信号量的信息。
2. 使用方法
-
【格式】
ipcs [resource...] [output-format]
ipcs [resource] -i <id> -
【选项说明】
| resource | 说明 |
|---|---|
| -a | 显示系统内所有的 IPC 资源信息(默认选项) |
| -q | 显示消息队列资源信息 |
| -m | 显示共享内存资源信息 |
| -s | 显示信号量资源信息 |
| output-format | 说明 |
|---|---|
| -t | 显示 IPC 资源被访问的详细时间 |
| -p | 显示 IPC 资源的创建者以及最近访问过 IPC 资源的进程 ID |
| -c | 显示 IPC 资源的创建者和所有者 |
| -l | 显示 IPC 资源的限制信息 |
| -u | 显示当前 IPC 资源的使用情况,若后面有 --human 选项,则以人易读的格式显示 |
| -b | 显示 IPC 资源的字节大小 |
3. 应用
【示例一】:显示系统内所有的 IPC 资源信息

【示例二】:只显示消息队列资源信息

【示例三】:显示上图中 msqid 为262144的消息队列的详细信息

【示例四】:显示当前系统中消息队列的限制信息

【示例五】:以人易读的格式显示当前系统中消息队列的使用情况

二、ipcrm
1. 功能
通过指定 ID 删除 IPC 资源,同时将与 IPC 对象关联的数据一并删除,只有超级用户或 IPC 资源的创建者能够删除。
2. 使用方法
-
【格式】
ipcrm [options]
ipcrm <shm|msg|sem> <id> [...] -
【选项说明】
| options | 说明 |
|---|---|
| -m | 删除用 shmid 标识的共享内存段 |
| -M | 删除用 key 创建的共享内存段 |
| -q | 删除用 msqid 标识的消息队列 |
| -Q | 删除用 key 创建的消息队列 |
| -s | 删除用 semid 标识的信号量 |
| -S | 删除用 key 创建的信号量 |
| -a | 全部删除 |
| -v | 解释正在进行的操作 |
3. 应用
【示例一】:通过 msqid 删除消息队列

【示例二】:通过 key 删除消息队列

本文介绍Linux中进程间通信(IPC)的管理和控制,包括使用ipcs命令查看消息队列、共享内存和信号量状态,以及使用ipcrm命令删除IPC资源。详细解释了各命令的参数和应用示例。
889

被折叠的 条评论
为什么被折叠?



