wyk5 linux ipc msg, Studia PŚK informatyka, Semestr 5, semestr 5, Programowanie Współbieżne, Wykłady, wyklady
[ Pobierz całość w formacie PDF ]
Programowanie Współbieżne
Komunikacja między procesowa IPC
IPC
W systemie V są 3 rodzaje komunikacji między
procesowej.
kolejki komunikatów
●
semafory
●
pamięć wspólna
●
IPC
Kolejka
komunikatów
Pamięć
wspólna
Semafor
plik nagłówkowy
<sys/msg.h> <sys/sem.h> <sys/shm.h>
funkcja systemowa
tworzenia lub otwierania
msgget
semget
shmget
funkcja systemowa operacji
sterujących
msgctl
semctl
shmctl
funkcje systemowe
przesyłania
msgsnd
semop
shmat
msgrcv
shmdt
IPC
Jądro trzyma informacje na temat każdego kanału
komunikacji międzyprocesowej w strukturze:
#include <sys/ipc.h>
struct
ipc_perm
{
ushort
uid
; /* id użytkownika dla właściciela */
ushort
gid
; /* id grupy dla właściciela */
ushort
cuid
; /* id użytkownika dla twórcy */
ushort
cgid
; /* id grupy dla twórcy */
ushort
mode
; /* tryb dostępu */
ushort
seq
; /* numer koleiny */
key_t
key
; /* klucz */
}
IPC
●
Do pobierania wartości tej struktury służą funkcje
msgctl
,
semctl
oraz
shmctl
Wszystkie trzy funkcje do tworzenia kanału
komunikacji IPC
msgget
,
semget
oraz
shmget
pobierają klucz
key_t
a zwracają identyfikator kanału.
●
[ Pobierz całość w formacie PDF ]