首页 > 编程知识 正文

mount命令详解,lspci命令详解

时间:2023-05-06 18:54:07 阅读:163718 作者:537

基础指令学习目录主页

多进程通信的常用技术手段包括共享内存、消息队列和信号等。 Linux系统上的ipcs命令有助于检查当前系统中这三种类型的使用情况,并识别多进程通信中出现的通信问题。 现在也有介绍ipcs命令使用方法的帖子,但介绍并不简单全面。 以下,我将根据个人的使用经验详细介绍ipcs命令的使用方法。

在ipcs -h中,可以显示有关使用此命令的帮助。

通过ipcs -a命令,可以显示当前正在使用的共享内存、消息队列和信号的所有信息。 以下部分介绍了与此选项对应的结果:

1 .信号量是建立时分信号量和信号量的概念。 在此命令的查询结果中,Semaphore Arrays下的每行表示信号量偏移量。 此处,perms对应于信号量的权限,nsems对应于信号量的信号量数目。 有关创建信号量偏移的方法,可以询问semctl相关函数的使用方法。 2 .在消息队列消息队列中,在创建对应于msqid的队列时获得的id值、从消息中存在于当前队列中的消息的数量、以及当前所有消息从used_bytes占用的字节的数量各个消息的字节数等于总字节数除以消息数,如果消息数不为零,则无法得到消息队列内的消息

ipcs -p命令可以获取共享内存和消息队列相关的进程之间的消息。 该选项的说明如下:

1 .根据该命令结果,消息队列pids的msqid对应于前一个命令结果的消息队列id,能够根据id获取lspid、lrpid消息。 lspid表示最后发送至消息队列的消息的“进程号”,而lrpid对应于最后从消息队列读取的消息的“进程号”。 但是,请注意,此处的进程编号是弱的进程编号,可能表示线程编号。 如果在进程中启动的线程向消息队列发送和接收消息,则此处的pid对应于线程编号。 您可以使用ps -AL | grep pid查找与线程相对应的进程id。

ipcs -u命令提供每个资源使用情况的摘要信息,包括使用的信号数、信号数、消息队列中当前使用的消息数和使用的空间字节数。

使用ipcs -l命令可以显示每个资源的系统限制信息。 显示系统允许的最大信号量集和信号量限制、最大消息队列中的消息数等信息。

1 .其中,信号量集的最大个数为128,每个信号量集的信号量的最大个数为250,总信号量的最大个数为32000,同时调用每个信号量的次数为32。 这些参数是linux系统中的默认参数,对于限制参数也可以在一定程度上进行优化,在一定程度上提高性能。 具体的优化方法可以搜索相关帖子。 ipcs命令常用的功能已经详细说明,如果还有不明白的地方就一起探索。

----------------

作者: a小冲

来源: CSDN

原译: 3359 blog.csdn.net/Dalong yes/article/details/50616162

声明:本文为博主原创文章。 转载请附上博文链接! ipcs 1. 命令格式

IPCS [ resource-option ] (输出格式)

IPCS [资源-选项]-I id

2. 命令功能

提供IPC设备的信息

3 .使用方法

资源选项:

查看ipcs -m系统共享内存信息

查看ipcs -q系统消息队列信息

显示ipcs -s系统信号量信息

ipcs [-a]系统缺省输出信息并显示系统中的所有IPC信息

[ Martin @ localhost data ] $ http://www.Sina.com/----message queues---- keymsqidownerpermsused---- byted

0x00000000 196609 martin 600 524288 2 dest 0x00000000 327682 martin 600 393216 2 dest 0x00000000 491525 martin 600 2097152 2 dest ------ Semaphore Arrays --------key semid owner perms nsems

 

 输出格式控制:

  ipcs -c  查看IPC的创建者和所有者

  ipcs -l  查看IPC资源的限制信息

  ipcs -p  查看IPC资源的创建者和使用的进程ID

  ipcs -t  查看最新调用IPC资源的详细时间

  ipcs -u  查看IPC资源状态汇总信息

[martin@localhost data]$ ipcs -u --human------ Messages Status --------allocated queues = 0used headers = 0used space = 0B------ Shared Memory Status --------segments allocated 4pages allocated 1760pages resident 339pages swapped 0Swap performance: 0 attempts 0 successes------ Semaphore Status --------used arrays = 0allocated semaphores = 0

 

 额外格式控制:

  ipcs -l --human

    以人类可以阅读的方式显示size

[martin@localhost data]$ ipcs -l --human------ Messages Limits --------max queues system wide = 3644max size of message = 8Kdefault max size of queue = 16K------ Shared Memory Limits --------max number of segments = 4096max seg size = 16Emax total shared memory = 16Emin seg size = 1B------ Semaphore Limits --------max number of arrays = 128max semaphores per array = 250max semaphores system wide = 32000max ops per semop call = 32semaphore max value = 3276

 

ipcrm

1. 命令功能

  通过指定ID删除删除IPC资源,同时将与IPC对象关联的数据一并删除,只有超级用户或IPC资源创建者能够删除

2. 使用方法

  ipcrm -M shmkey

    移除用shmkey创建的共享内存段

  ipcrm -m shmid

    移除用shmid标识的共享内存段

  ipcrm -S semkey

    移除用semkey创建的信号量

  ipcrm -s semid

    移除用semid标识的信号量

  ipcrm -Q msgkey

    移除用msgkey创建的消息队列

  ipcrm -q msgid

    移除用msgid标识的消息队列

   

 

转载于:https://www.cnblogs.com/machangwei-8/p/10388824.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。