next up previous contents index return to home!
Next: Esercizi Up: Comunicazione fra processi Previous: Le IPC di System   Indice   Indice analitico

Un esempio

Come esempio di utilizzo della memoria condivisa secondo le primitive di IPC di System V portiamo un programma leggermente più complesso del solito. Il programma è composto da due task (padre e figlio) che giocano a tris, utilizzando la memoria condivisa per comunicare.

L'aspetto del programma che ci interessa è appunto la comunicazione attraverso memoria condivisa: in particolare, notare come per condividere l'ID della zona di memoria condivisa i due processi utilizzino la prima delle tre tecniche mostrate sopra (utilizzo di IPC_PRIVATE al posto della chiave), avvantaggiandosi della loro relazione padre/figlio (il padre crea la zona di memoria condivisa prima di fare la fork(), cosicché il figlio eredita l'ID).

Esempio



Giuseppe Lipari 2002-10-27