#include #include #include "SharedMemory.h" //Shared-Memory-Segment erstellen oder öffnen – shmget() int shared_memory_init(key_t key){ memory_id = shmget(key, SHMMAXSIZE, IPC_CREAT | 0666); if(shmid == -1){ key++; shmfnk(key); return memory_id; } return 0; } //Shared-Memory-Segment id weiterreichen int get_shared_memory_id(){ return memory_id; } //Ein Shared-Memory-Segment abfragen, ändern oder löschen – shmctl() void delet_shared_memory(){ memory_id = shmctl(memory_id, IPC_RMID, 0); } //Shared-Memory-Segment an einen Prozess anbinden (attach) – shmat() void attach_process(void *myProcess){ if(( myProcess = shmat( memory_id, (char *)0, 0 )) < (char *)0 ){ perror("Fehler beim Ankoppeln des gemeinsamen Speicher Segments"); exit(-1); } } //Ein Shared-Memory-Segment loslösen – shmdt() void release_memory(){ int shmdt(void *myProcess); }