0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ipcs命令:用于查看Linux进程间通信设施的状态

Linux爱好者 来源:Linux爱好者 作者:恋猫大鲤鱼 2021-02-02 11:10 次阅读

1.命令简介

ipcs 命令用于查看 Linux 进程间通信设施的状态,包括消息列表、共享内存和信号量的信息。可以帮助开发人员定位进程间通信中出现的问题。

注意,本文描述的是 util-linux 版 ipcs,和其它版本(如 POSIX 版)的实现可能会有出入。

2.命令格式

ipcs[resource-option][output-format]
ipcs[resource-option]-iid

3.命令选项

-i,--idID
详细显示指定资源 ID 的 IPC 信息。使用时需要指定资源类型,资源包括消息队列(-q)、共享内存(-m)和信号量(-s)
-h,--help
显示帮助信息
-V,--version
显示版本信息

IPC 资源类型选项:
-q,--queues
显示活动的消息队列信息
-m,--shmems
显示活动的共享内存信息
-s,--semaphores
显示活动的信号量信息
-a,--all
显示系统内所有的IPC信息。命令的默认选项

输出格式选项:当指定多个时,以最后一个为准。
-c,--creator
查看IPC的创建者和所有者
-l,--limits
查看IPC资源的限制信息
-p,--pid
查看IPC资源的创建者和最后操作者的进程ID
-t,--time
查看最新调用 IPC 资源的详细时间。包括 msgsnd()和 msgrcv()对 message queues 的操作,shmat()和 shmdt()对shared memory 的操作,以及 semop()对 semaphores 的操作
-u,--summary
查看IPC资源状态汇总信息

显示大小单位控制选项:只对选项-l, --limits 生效
-b,--bytes
以字节为单位显示大小
--human
以可读的格式显示大小

4.常用示例

(1)显示所有IPC信息。

(2)显示共享内存指定ID的信息。

[root@TENCENT64/]#ipcs-m-i32769

SharedmemorySegmentshmid=32769
uid=0gid=0cuid=0cgid=0
mode=0666access_perms=0666
bytes=12000lpid=2784cpid=1077nattch=3
att_time=ThuDec2710322018
det_time=ThuDec2710322018
change_time=FriJul2013412018

(3)查看 IPC 的创建这和最最后操作者的进程 ID。

------MessageQueuesPIDs--------
msqidownerlspidlrpid

------SharedMemoryCreator/Last-opPIDs--------
shmidownercpidlpid
0root70223364
32769root7025296

其中 lspid 代表最近一次向消息队列中发送消息的“进程号”,lrpid 对应最近一次从消息队列中读取消息的“进程号”。但请注意:此处的进程号是弱进程号,既它有可能代表的是线程号,如果进程中是起的线程对消息队列发送、接收消息,则此处 pid 对应的均是线程号。可以采用ps -AL | grep pid来查找该线程对应的进程 id。


参考文献

[1] ipcs(1) manual
[2] Index of /pub/linux/utils/util-linux/
[3] ipcs和ipcsrm 命令的使用方法
[4] 工作中常用的Linux命令:ipcs/ipcrm命令
[5] ipcs命令详解——共享内存、消息队列、信号量定位利器

责任编辑:xj

原文标题:每天一个 Linux 命令(111):ipcs 命令

文章出处:【微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11364

    浏览量

    211026
  • 命令
    +关注

    关注

    5

    文章

    703

    浏览量

    22202
  • 通信设施
    +关注

    关注

    0

    文章

    7

    浏览量

    6612

原文标题:每天一个 Linux 命令(111):ipcs 命令

文章出处:【微信号:LinuxHub,微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    相关推荐

    Linux ip命令常用操作

    Linux ip命令常用操作 在Linux系统中,ip命令用于管理网络接口和路由的强大工具。相比于旧的 ifconfig
    的头像 发表于 02-19 10:23 164次阅读

    Linux实时查看日志的四种命令详解

    如何在Linux中实时查看日志文件的内容?那么有很多实用程序可以帮助用户在文件更改或不断更新时输出文件的内容。在Linux中实时显示文件内容的常用命令是tail
    的头像 发表于 01-13 10:45 843次阅读
    <b class='flag-5'>Linux</b>实时<b class='flag-5'>查看</b>日志的四种<b class='flag-5'>命令</b>详解

    深入解析Linux程序与进程

    什么是程序 一组计算机能识别和执行的指令,用于指导计算机执行特定任务或解决特定问题。程序通常由代码、数据和资源文件组成,涉及语法、算法和数据结构。为二进制文件 什么是进程 是一个具有独立功能的程序
    的头像 发表于 12-18 11:01 195次阅读
    深入解析<b class='flag-5'>Linux</b>程序与<b class='flag-5'>进程</b>

    Linux高频命令终极指南

    500M # 保留1年 journalctl --vacuum-time 1years 巡检命令 CPU //查看
    的头像 发表于 12-05 16:53 302次阅读

    深入Linux进程管理:提升效率与稳定性的关键方法

    基本概述 2.进程状态 3.进程优先级 4.进程命令 5. 控制作业 6.进程
    的头像 发表于 11-22 11:05 414次阅读
    深入<b class='flag-5'>Linux</b><b class='flag-5'>进程</b>管理:提升效率与稳定性的关键方法

    一文搞懂Linux进程的睡眠和唤醒

    一、常见的进程状态与理解 在操作系统内部,有专门用来管理进程的结构体,叫做struct task_struct,也称作进程控制块(PCB),主要包含描述
    发表于 11-04 15:15

    Linux实用命令大全

    Linux实用命令大全
    的头像 发表于 10-23 13:50 344次阅读
    <b class='flag-5'>Linux</b>实用<b class='flag-5'>命令</b>大全

    Linux lsof命令的基本用法

    linux 系统中,一切皆文件。通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以 lsof 命令不仅可以查看进程打开的文件、目录,还可以
    的头像 发表于 10-23 11:52 552次阅读
    <b class='flag-5'>Linux</b> lsof<b class='flag-5'>命令</b>的基本用法

    Jtti:如何查看yum命令的错误日志来诊断问题?

    Linux系统中,当yum命令无法正常工作时,查看错误日志是诊断问题的重要步骤。以下是一些方法,可以帮助你查看和分析yum命令的错误日志:
    的头像 发表于 10-14 15:51 366次阅读

    Linux查看IP地址的方法

    ifconfig是一个网络管理工具,用于配置、控制和查询网络接口。在许多旧的Linux发行版中,ifconfig是查看和配置网络接口的主要工具。
    的头像 发表于 08-07 15:16 8111次阅读
    在<b class='flag-5'>Linux</b>中<b class='flag-5'>查看</b>IP地址的方法

    Linux中cut命令的实用示例

    Linux command cut 用于文本处理。您可以使用此命令通过选择列从文件中提取部分文本。
    的头像 发表于 08-05 15:14 403次阅读

    nginx重启命令linux步骤是什么?

    ./nginx -s reload 即可   方法二:查找当前nginx进程号,然后输入命令:kill -HUP 进程号 实现重启nginx服务   Nginx的整体架构:   Nginx里有一个 master
    发表于 07-10 16:40

    进程通信的消息队列介绍

    消息队列是一种非常常见的进程通信方式。
    的头像 发表于 04-08 17:27 368次阅读

    Linux的shutdown命令介绍

    )。 Linux 系统有 7 个运行级别: 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动; 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登
    发表于 04-08 06:12

    linux命令概述

    电子发烧友网站提供《linux命令概述.pdf》资料免费下载
    发表于 03-11 09:18 3次下载