Chinaunix
标题:
如何根据共享内存段号码shmid查看pid
[打印本页]
作者:
hobby2273
时间:
2011-09-10 09:28
标题:
如何根据共享内存段号码shmid查看pid
通过ipcs -m可以看到共享内存段的信息, 但是Linux下如何根据shmid查看是哪些进程在使用这个共享内存段? 我知道在hpux下有个shminfo的命令, 但是在linux上没找到,请各位大侠指教:
[oracle@capaa ~]$ ipcs -m
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x00000000 917504 oracle 600 196608 2 dest
0x00000000 950273 oracle 600 196608 2 dest
0x00000000 983042 oracle 600 196608 2 dest
0x00000000 1015811 oracle 600 196608 2 dest
0x00000000 1081349 oracle 600 196608 2 dest
0x00000000 1179656 oracle 600 196608 2 dest
0x4cd26024 524300 oracle 640 562044928 55
0x00000000 1900559 oracle 600 12288 2 dest
0x00000506 1802260 oracle 666 16384 0
0x00000000 1835029 oracle 600 196608 2 dest
作者:
hobby2273
时间:
2011-09-11 16:26
顶起来, 各位大侠有知道的么?
作者:
dooza
时间:
2011-09-13 00:15
[oracle@test /home/oracle]
$ ipcs -m
—— Shared Memory Segments ——–
key shmid owner perms bytes nattch status
0×00000000 458752 oracle 640 30083645440 1 dest
0x0161dbac 491521 oracle 640 20084424704 784
在这个例子当中,可以看到有两个shared memory segment被分配。其中键值为458752的状态为dest(destroy),表示该shared memory segment已被标识为destroy,这是由于oracle的非正常关闭造成的。要注意的地方是nattch,表示连接在关联的共享内存段的进程数,这里的值为1,还有一个进程连接在这个shared memory segment上,如果贸然移除这个shared memory segment,可能存在一定的风险。可以通过以下方式查看该shared memory segment的详细信息:
[oracle@test /home/oracle]
$ ipcs -m -i 458752
Shared memory Segment shmid=458752
uid=501 gid=501 cuid=501 cgid=501
mode=01640 access_perms=0640
bytes=30083645440 lpid=10306 cpid=10941 nattch=1
att_time=Wed Aug 10 11:07:48 2011
det_time=Wed Aug 10 11:50:21 2011
change_time=Fri Apr 2 07:07:31 2010
其中一些关键参数说明如下:
■CPID 共享内存项的创建程序的进程标识。
■LPID 连接或者拆离共享内存段的最后一个进程的标识。
■ATT_TIME 最后一次与关联的共享内存段完成连接的时间。
■DET_TIME 最后一次与关联的共享内存段完成拆离的时间。
■CHANGE_TIME创建和改变相关项的时间。
作者:
hobby2273
时间:
2011-09-13 09:49
谢谢dooza的回复, 我知道在这种情况下可以通过ipcs -m -p pid返回的LPID查看进程,但是在正常的情况下, 比如一个oracle的shared memory segment, 可能nattch> 10, 这种情况下怎么根据shmid查看是哪些processes attach到这个shared memory segment呢? linux下有没有一个命令可以显示这些信息.
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2