[TUTORIAL] Shared Memory dalam Linux Bahasa C

4:49 PM , 0 Comments

Hai =))

Kali ini, saya akan menjelaskan tentang shared memory dalam linux menggunakan bahasa C.
Preprocessor Directives yang diperlukan adalah
#include <sys/types.h>
#include <sys/ipc.h> 
#include <sys/shm.h> 
#include <sys/stat.h> 
#include <unistd.h>
Misal, saya akan membagikan struct yg saya buat pada server kemudian akan bisa otomatis terbaca di client.
struct Memory{
    int isi;
};
int main{
    key_t sharedKEY;
    int sharedID;
    struct Memory *data;
    sharedKEY = ftok(".", 'x');
    sharedID = shmget(sharedKEY,sizeof(struct Memory),IPC_CREAT | 0666);
    if (sharedID < 0) {
        printf("*** shmget error (server) ***\n");
        exit(1);
    }
    data = (struct Memory *) shmat(sharedID, NULL, 0);
    data.isi = 100;
}
Kemudian client menuliskan program yg sama dengan server (tanpa data = ... ), maka data.isi pada client akan terisi 100.

Terima kasih, semoga bermanfaat..
Sampai ketemu pertemuan mendatang =))
#fantasticschematics 

0 comments:

Don't forget to follow our blog