Computer Networking: A Top-Down Approach (7th Edition)
Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN: 9780133594140
Author: James Kurose, Keith Ross
Publisher: PEARSON
Bartleby Related Questions Icon

Related questions

Question

C++

Part 1: Working With Process IDs

  1. Modify the getProcessID() function in the file named Processes.cpp
  1. The function must find and store the process's own process id
  2. The function must return the process id to the calling program. Note that the function currently returns a default value of -1.
    Hint: search for "process id" in the "System Calls" section of the Linux manual.

Take a screenshot of a sample output and upload the picture as part of your assignment submission.

Part 2: Working With Multiple Processes

  1. Modify the createNewProcess() function in the file named Processes.cpp as follows:
    1. The child process must print the message I am a child process!
    2. The child process must then return a string with the message I am bored of my parent, switching programs now
    3. The parent process must print the message I just became a parent!
    4. The parent process must then wait until the child process terminates, at which point it must return a string with the message My child process just terminated! and then terminate itself. Hint: search for "wait for process" in the "System Calls" section of the Linux manual.

Part 3: Working With External Commands

  1. Modify the replaceProcess() function in the file named Processes.cpp as follows:
    1. The parent process will use the fork() function to create a child process. This step has been done for you.
    2. The child process must then change its memory image to a different program by using the execvp system call (http://linux.die.net/man/3/execvp). The parameter args that has been passed to the replaceProcess() function is the array of parameters to be passed to execvp, telling it which program to execute and what parameters to pass to that program.

For example, the test code provided to you executes the "ls" (directory list) program with the parameter "-l" by setting the args array as follows:

char * args[3] = {(char * )"ls", (char * )"-l", NULL};


  1. Finally, in the parent process, you must make sure to invoke the necessary system call to wait for the child process to terminate. Once the child terminates, exit the program.

OUTPUT IN IMAGES

Transcribed Image Text:Part 1: Working With Process IDs Process ID: 3329 Part 2: Working With Multiple Processes I just became a parent! I am a child process! I am bored of my parent, switching programs now My child process just terminated! Part 3: Working With External Commands total 52 -rwxr-xr-x 1 ubuntu ubuntu 14570 Jan 20 20:21 Assignment_3_2 -rw-r--r-- 1 ubuntu ubuntu 1124 Jan 20 20:18 Assignment_3_2.cpp -rw-r--r-- 1 ubuntu ubuntu 4984 Jan 20 20:21 Assignment_3_2.o -rw-r--r-- 1 ubuntu ubuntu 378 Jan 20 20:18 Makefile -rw-r--r-- 1 ubuntu ubuntu 1466 Jan 20 20:20 Processes.cpp -rw-r--r-- 1 ubuntu ubuntu 495 Jan 20 20:18 Processes.h -rw-r--r-- 1 ubuntu ubuntu 5088 Jan 20 20:21 Processes.o -rw-r--r-- 1 ubuntu ubuntu 905 Jan 20 20:18 Processes_SK.cpp
Expert Solution
Check Mark
Knowledge Booster
Background pattern image
Similar questions
    Recommended textbooks for you
    Text book image
    Computer Networking: A Top-Down Approach (7th Edi...
    Computer Engineering
    ISBN:9780133594140
    Author:James Kurose, Keith Ross
    Publisher:PEARSON
    Text book image
    Computer Organization and Design MIPS Edition, Fi...
    Computer Engineering
    ISBN:9780124077263
    Author:David A. Patterson, John L. Hennessy
    Publisher:Elsevier Science
    Text book image
    Network+ Guide to Networks (MindTap Course List)
    Computer Engineering
    ISBN:9781337569330
    Author:Jill West, Tamara Dean, Jean Andrews
    Publisher:Cengage Learning
    Text book image
    Concepts of Database Management
    Computer Engineering
    ISBN:9781337093422
    Author:Joy L. Starks, Philip J. Pratt, Mary Z. Last
    Publisher:Cengage Learning
    Text book image
    Prelude to Programming
    Computer Engineering
    ISBN:9780133750423
    Author:VENIT, Stewart
    Publisher:Pearson Education
    Text book image
    Sc Business Data Communications and Networking, T...
    Computer Engineering
    ISBN:9781119368830
    Author:FITZGERALD
    Publisher:WILEY