Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> sistemi >> Unix >> .

Unix Shared Memory Tutorial

Memoria condivisa permette ai processi che non sono collegati a condividere lo stesso spazio indirizzo . Il programmatore ha bisogno di sincronizzare l'accesso della memoria condivisa in modo che un processo non inizia a leggere la memoria prima di un altro processo ha terminato la scrittura della memoria . Funzioni semaforo sono simili alle chiamate di funzione per la memoria condivisa . Funzioni di memoria condivisi possono essere usati per creare , abilitare l'accesso e staccare la memoria condivisa. Istruzioni
1

Creare memoria condivisa utilizzando la seguente chiamata di funzione :

int shmget ( key_t key_name , shmem_size size_t , int shmemflag ) ;

includere file sys /. shm.h , sys /types.h e sys /ipc.h
2

collegare la memoria condivisa di uno spazio di indirizzamento e permettono l'accesso ad essa con la seguente chiamata di funzione :

void * shmaat (int shmem_id , const void * shmem_addr , int shmemflag ) ;
3

Staccare la memoria condivisa dal processo con la seguente chiamata di funzione :

int shmctl (int shmem_id , int cmd , struct shmemid_ds * buf ) .
4

definire la struttura shmemid_ds con almeno tre membri tra cui shmem_perm.uid , shmem_perm.gid e shmem_perm.mode


 

sistemi © www.354353.com