Unix Shared Memory Tutorial

Unix Shared Memory Tutorial


Delt minne gjør at prosesser som ikke er relatert til å dele samme adresse plass. Programmereren må synkron tilgang til delt minne, slik at en prosess ikke starter å lese minne før en annen er ferdig å skrive til minnet. Semaphore funksjonene likner fungere samtaler for delt minne. Delt minnefunksjoner kan brukes til å opprette, gi tilgang til og koble delt minne.

Bruksanvisning

1 Opprett delt minne ved å bruke følgende funksjon samtale:

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

Inkluder filer sys / shm.h, sys / types.h og sys / ipc.h.

2 Fest delt minne til en adresse plass og gi tilgang til det med følgende funksjon samtalen:

void

shmaat (int shmem_id, konst tomrom shmem_addr, int shmemflag);

3 Løsne delt minne fra prosessen med følgende funksjon samtale:

int shmctl (int shmem_id, int cmd, struct shmemid_ds * buf);

4 Definer shmemid_ds struktur med minst tre medlemmer inkludert shmem_perm.uid, shmem_perm.gid og shmem_perm.mode.