Operating Systems   Assignment 3: Linux System Calls – Shared Memory   Write two C++ programs (server.cpp, client_1.cpp ) as described below: First program (server.cpp): Accepts 4 words (strings) as command-line arguments. Creates a shared memory segment for storing data of the following structure type: struct  shareddata{     int code;     string words[4]; }; Saves the command-line arguments in the shared memory (words), but before it should ensure that number of arguments is 4. If number of command-line arguments is invalid, exit the program.   Generate a random number ( 1 or 2) and store it in the shared memory segment (code). Hint: use the rand() function to generate the number, the number generated should be 1 or 2 ONLY.     Second program (client_1.cpp): Client_1 will access the shared memory created by the server. It will check the value of the code number (code) and find the following based on the code value:     Code action 1 Find and display the word with maximum length 2 Find and display the word with minimum length   Destroy the shared memory segment.     Hints: Refer to the following link to understand the concept of struct-type in C++ and how pointers work with struct-type                     https://www.geeksforgeeks.org/structures-in-cpp/

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

Operating Systems

  Assignment 3: Linux System Calls – Shared Memory

 

Write two C++ programs (server.cpp, client_1.cpp ) as described below:

  • First program (server.cpp):
  1. Accepts 4 words (strings) as command-line arguments.
  2. Creates a shared memory segment for storing data of the following structure type:

struct  shareddata{

    int code;

    string words[4];

};

  1. Saves the command-line arguments in the shared memory (words), but before it should ensure that number of arguments is 4.

If number of command-line arguments is invalid, exit the program.

 

  1. Generate a random number ( 1 or 2) and store it in the shared memory segment (code).

Hint: use the rand() function to generate the number, the number generated should be 1 or 2 ONLY.

 

 

  • Second program (client_1.cpp):
  • Client_1 will access the shared memory created by the server. It will check the value of the code number (code) and find the following based on the code value:

   

Code

action

1

Find and display the word with maximum length

2

Find and display the word with minimum length

 

  • Destroy the shared memory segment.

 

 

Hints:

  • Refer to the following link to understand the concept of struct-type in C++ and how pointers work with struct-type

                    https://www.geeksforgeeks.org/structures-in-cpp/

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY