rendered paste body#include <sys/types.h>#include <sys/ipc.h>#include <sys/shm.h>#include <stdio.h>#include <stdlib.h>#include <errno.h>extern int errno; char *buffer;int main ( int argc, char *argv[] ){ key_t key; int shmid; int size; /*size of buffer*/ int id; int semaphoreSet; if ( argc != 2 ) { fprintf(stderr, "Usage: <.out> <N>\n"); exit(-1); } size = atoi(argv[1]) * sizeof(double); id = 9999; /* make the key if ((key = ftok("pc_create.c", 'P')) == -1) { fprintf(stderr, "ftok error. errno is: %d\n", errno); exit(1); }/* /* connect to the segment: */ if ((shmid = shmget(id, size, IPC_CREAT)) == -1) { fprintf(stderr, "shmget error. errno is: %d\n", errno); exit(1); } if((buffer = shmat(shmid, NULL, 0)) < 0) { fprintf(stderr, "shmat error. errno is: %d\n", errno); exit(1); } /* semaphore */ semaphoreSet = semget(id, 1, IPC_CREAT); If ( semaphoreSet == -1) { fprintf("semget error"); exit(1); } /*printf("%d\n", shmid);*/return 0;}