4.17 Gestion des IPCS
Aller à la navigation
Aller à la recherche
IPCS
Tout afficher:
# ipcs IPC status from /dev/mem as of mer 16 mai 14:53:58 DFT 2012 T ID KEY MODE OWNER GROUP Message Queues: q 0 0x4107001c -Rrw-rw---- root printq
Shared Memory: m 404750336 0xffffffff --rw------- root sys m 1048577 0x78000021 --rw-rw-rw- root system m 1048578 0x7800001e --rw-rw-rw- root system m 811597827 0xffffffff --rw------- root sys m 746586116 0xffffffff --rw------- root sys m 2097157 0xffffffff --rw------- root sys m 479199238 0xffffffff --rw------- root sys m 2097159 0xffffffff --rw------- root sys m 479199240 0xffffffff --rw------- root sys m 2097161 0xffffffff --rw------- root sys Semaphores: s 3145728 0xffffffff --ra------- root system s 1 0x620122ea --ra-r--r-- root system s 2 0x010121b1 --ra------- root system s 3 0x0101c6e7 --ra-ra-ra- root sys s 98566163 0xa1003186 --ra-ra-ra- root sys
Afficher les sémaphores:
# ipcs -s
Afficher les messages
# ipcs -q
Afficher les mémoires partagé
# ipcs -m
Suppression d'un IPCS
ipcrm -m $IPC_ID
Suppression d'un IPCS particulier
La méthode la plus simple pour visualiser les process attchées à une shared memory est la suivante :
# ipcs -ma IPC status from /dev/mem as of Fri May 28 14:12:49 DFT 2004 T ID KEY MODE OWNER GROUP CREATOR CGROUP NATTCH SEGSZ CPID LPID ATIME DTIME CTIME
Shared Memory: m 262144 0x58000910 --rw-rw-rw- root system root system 1 134217728 81966 364798 11:17:02 11:17:03 11:17:02 m 1 0xe4663d62 --rw-rw-rw- imnadm imnadm imnadm imnadm 1 96 270476 270476 17:55:25 17:55:27 17:55:22 m 2 0x9308e451 --rw-rw-rw- imnadm imnadm imnadm imnadm 1 97948 270476 270476 17:55:25 17:55:27 17:55:22 m 3 0x52e74b4f --rw-rw-rw- imnadm imnadm imnadm imnadm 1 36028 270476 270476 17:55:25 17:55:27 17:55:23 m 4 0xc76283cc --rw-rw-rw- imnadm imnadm imnadm imnadm 1 42268 270476 270476 17:55:25 17:55:27 17:55:24 m 5 0x298ee665 --rw-rw-rw- imnadm imnadm imnadm imnadm 1 2844 270476 270476 17:55:25 17:55:27 17:55:23 m 6 0xffffffff --rw-rw---- root system root system 1 4096 122952 122952 14:10:56 14:10:56 17:55:32 m 7 0x0d0016bd --rw-rw-rw- root system root system 3 1440 335974 319522 14:12:44 14:12:44 0:52:30 m 786440 0x00001515 --rw-rw-rw- root system root system 0 16 516188 520352 13:10:42 13:10:42 15:20:51 m 524297 0xffffffff --rw------- root system root system 0 40960 172222 299204 13:33:31 13:33:32 13:33 #
Dans ce cas précis nous prenons l' ID =7 Il faut ensuite mettre cette valeur en Hexa ( 7)
# kdb ...... 0> ipc IPC info Select the display: 1) Message Queues 2) Shared Memory 3) Semaphores Enter your choice: 2 1) all shmid_ds 2) select shmid_ds Enter your choice: 2 Shared Memory ID (in hex): 7 Shared memory ID 00000007 @ F10000AF60000498 uid............. 00000000 gid............. 00000000 cuid............ 00000000 cgid............ 00000000 mode............ 000081B6 seq............. 0000 key............. 000000000D0016BD shm_segsz....... 00000000000005A0 shm_lpid........ 000000000004E022 shm_cpid........ 0000000000052066 shm_nattch...... 0000000000000003 shm_cnattch..... 0000000000000003 shm_atime....... 0000000040B72CBC shm_dtime....... 0000000040B72CBC shm_ctime....... 00000000408C412E shm_handle...... 0000000000006E3E shm_extshm...... 00000000 shm_next........ 0000000000000000 shm_prev........ 0000000000000000 orig_shmid...... 00000000 cur_shmid....... 00000000 crid............ 00000000 vhat_next....... 0000000000000000 vhat_prev....... 0000000000000000 (0)>q
La valeur qui nous intéresse est celle correspondant à shm_handle: 6E3E
Sur l'output du svmon -Pw, rechercher le VSID = 6e3e ( En minuscule ) et vous trouverez autant de process que la valeur du NATTCH. Il se peut que vous ayez la valeur NATTCH=0, cela veut dire qu'il n'y a aucun process d'attache, mais que la shared memory peut-etre utilisée par des nouveaux process pour acceder aux données de cette dernière .