Manpages

NAZWA

ipcrm − usuwa kolejkę komunikatów, zbiór semaforów lub id pamięci współdzielonej

SKŁADNIA

ipcrm [ −M klucz | −m id | −Q klucz | −q id | −S klucz | −s id ] ...

przestarzałe użycie:

ipcrm [ shm | msg | sem ] id ...

OPIS

ipcrm usuwa z systemu obiekty komunikacji międzyprocesowej Systemu V (IPC) oraz skojarzone z nimi struktury danych. Aby usunąć takie obiekty, należy być superużytkownikiem lub twórcą albo właścicielem tego obiektu.

Istnieją trzy typy obiektów IPC Systemu V: pamięć współdzielona, kolejki komunikatów i semafory. Usuwanie obiektu typu kolejka komunikatów lub semafor jest natychmiastowe (niezależnie od tego, czy jakiś proces wciąż trzyma identyfikator IPC tego obiektu). Obiekt typu pamięć współdzielona jest usuwany tylko wtedy, gdy wszystkie obecnie połączone procesy usuną (shmdt(2)) ten obiekt z ich wirtualnej przestrzeni adresowej.

Obsługiwane są dwa style składni. Stara, historyczna składnia linuksowa składa się trzyliterowego słowa kluczowego, mówiącego, jakiej klasy obiekt ma być usunięty, po którym następuje jeden lub więcej identyfikatorów obiektów tego typu.

Składania zgodna z SUS pozwala na podanie zera lub więcej obiektów wszystkich typów w pojedynczym wywołaniu. Obiekty mogą być określone albo przez klucz, albo przez identyfikator (patrz niżej). Zarówno klucze, jak i identyfikatory mogą być podane w postaci dziesiętnej, szesnastkowej (zaczynającej się od ’0x’ lub ’0X’) lub ósemkowej (zaczynającej się od ’0’)

OPCJE

−M shmkey

usuwa segment pamięci współdzielonej utworzony z kluczem shmkey, gdy tylko ostatni proces się od niego odłączy.

−m shmid

usuwa segment pamięci współdzielonej identyfikowany przez shmid, gdy tylko ostatni proces się od niego odłączy.

−Q msgkey

usuwa kolejkę komunikatów utworzoną z kluczem msgkey.

−q msgid

usuwa kolejkę komunikatów identyfikowaną przez msgid.

−S semkey

usuwa semafor utworzony z kluczem semkey.

−s semid

usuwa semafor identyfikowany przez semid.

Szczegóły usuwania są opisane w msgctl(2), shmctl(2) i semctl(2). Identyfikatory i klucze mogą być znalezione za pomocą ipcs(8).

UWAGI

W swojej pierwszej implementacji linuksowej, ipcrm używało przestarzałej składni pokazanej w sekcji SKŁADNIA. Od tego czasu została dodana funkcjonalność obecna w innych implementacjach *niksowych, mianowicie możliwość usuwania zasobów przez podanie klucza (a nie tylko identyfikatora) oraz zgodność składni polecenia. Dla zachowania wstecznej zgodności poprzednia składnia jest wciąż obsługiwana.

ZOBACZ TAKŻE

ipcs(8), msgctl(2), msgget(2), semctl(2), semget(2), shmctl(2), shmdt(2), shmget(2), ftok(3)