Question: Replicate the producer - consumer code from below, compile and run. Note: please type the code in your C program/c++ 1. #include #include #include #include

Replicate the producer - consumer code from below, compile and run.

Note: please type the code in your C program/c++

1.

#include

#include

#include

#include

#include

#include

#include

int main()

{

/* the size (in bytes) of shared memory object */

const int SIZE = 4096;

/* name of the shared memory object */

const char *name = "OS";

/* strings written to shared memory */

const char *message_0 = "Hello";

const char *message_1 = "World!";

/* shared memory file descriptor */

int fd;

/* pointer to shared memory obect */

char *ptr;

/* create the shared memory object */

fd = shm_open(name,O_CREAT | O_RDWR,0666);

/* configure the size of the shared memory object */

ftruncate(fd, SIZE);

/* memory map the shared memory object */

ptr = (char *)

mmap(0, SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);

/* write to the shared memory object */

sprintf(ptr,"%s",message_0);

ptr += strlen(message_0);

sprintf(ptr,"%s",message_1);

ptr += strlen(message_1);

return 0;

}

2.

#include

#include

#include

#include

#include

#include

int main()

{

/* the size (in bytes) of shared memory object */

const int SIZE = 4096;

/* name of the shared memory object */

const char *name = "OS";

/* shared memory file descriptor */

int fd;

/* pointer to shared memory obect */

char *ptr;

/* open the shared memory object */

fd = shm_open(name, O_RDONLY, 0666);

/* memory map the shared memory object */

ptr = (char *)

mmap(0, SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);

/* read from the shared memory object */

printf("%s",(char *)ptr);

/* remove the shared memory object */

shm_unlink(name);

return 0;

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!