Ask Operating System Expert

Project

Objectives:

1. Become familiar with Programming Assignment

2. Work with multiple processes

3. Gain experience with process communication

These will be individual projects. The main purpose of this programming assignment, i.e. Project 1, is to become familiar with the programming of creating processes using system call (library) and inter-process communication.

For Project 1, you may choose any programming language, such as .NET, Visual C++, C, etc. as long as the programming language provides library or function to create a process such as fork() and exec() in C (C++). Because of this reason, Java is not allowed. Also, other OS, such as Unix or Linux, are possible. In any case, your final program should be compiled and running on GA's computer. To do that, you need to provide all materials as well as source code, such as run time module, integrated development environment (Visual Studio, .NET or C#), and any other program to run your program.

You are to implement a simple Question and Answer system for a teacher and students like online chatting. This program does not require GUI, nor user interactions. Your program should consist of at least four processes as seen in the Figure 1. The main process is the ‘Manager (i.e., teacher)'. It should create three other processes (children processes as students) and manage the discussion.

489_Figure.jpg


The desired output sequence is as follows:

1. Start your program (Manager process for a teacher)

2. Display PID of Manager process

3. Input the number of students (i.e., how many child processes). It should be equal or greater than 3.

4. Create children processes as students.

5. Display PIDs of children processes: for example
# 1st student's PID is 123
# 2nd student's PID is 234
# 3rd student's PID is 345
. . .
6. Manager sends message "Start Q and A" to each student (i.e., each child process)

7. Each child process (student) send their PID as student ID to a manager process.

8. Manager process display each student ID.

9. Each child process (student) sends a question to manager process (This should be standard input using keyboard typing)

10. Manager process display each question: for example
# 1st student asks "What is 1 + 1?"
# 2nd student asks "What is CS?"
# 3rd student asks "What year is this?"

11. Any child process can answer for the question.

12. Manager process judges if the answer is correct or wrong: for example

# 1st student answer is correct (go to Step 13) Or # answer is wrong (go to Step 10)

13. If all students' questions are answered correctly, manager process sends kill signal to all children processes.

14. Finally, exit manger process.

The procedure mentioned above is just simple one. You can add or modify the procedure as long as your program does not disobey the main requirements.

Two important things that should be decided before you code:

- Which language I use.
- Which communication method I use.

Write-up

You should submit a write-up as well as your program. Your write-up should include any known bugs, limitations, and assumptions in your program. This write-up should be in text-format and titled as ‘README'. It should be submitted along with your code. GA will use the ‘README' file to compile (or install) and run your program. If the GA has trouble with your program then he will contact you to makeup it.

It uses unix commands such as forks and pipe. I need solution to this project

Operating System, Computer Science

  • Category:- Operating System
  • Reference No.:- M91847027
  • Price:- $40

Priced at Now at $40, Verified Solution

Have any Question?


Related Questions in Operating System

Research types of operating systems that are currently

Research types of operating systems that are currently available and provide a scenario in which the operating system you chose would be appropriate to be used in this situation. Explain why you think the choice you made ...

Question research hex editors available for mac os and

Question : Research hex editors available for Mac OS and Linux. Based on the documentation, how easy would validating these tools be? Select at least two hex editors for each OS, and discuss what you would do to validate ...

Foundation of information technologyresearch types of

Foundation of Information Technology Research types of operating systems that are currently available and provide a scenario in which the operating system you chose would be appropriate to be used in this situation. Expl ...

Assignment -building a multi-threaded web server using c

Assignment - Building a multi-threaded web server using C and p threads, following the model from the lecture. Your program will have one thread acting as a dispatcher thread, listening fornetwork connections with reques ...

Question you are a security administrator responsible for

Question: You are a security administrator responsible for providing secure configuration requirements for new laptop deployments. After reading Module 2 of Certified Secure Computer User v2exercises, apply the configura ...

Question what do you see as the major differences between

Question : What do you see as the major differences between UNIX/Linux and other operating systems, such as Windows and Mac OS X? The response must be typed, single spaced, must be in times new roman font (size 12) and m ...

Question description of lasa in this assignment you will

Question: Description of LASA: In this assignment, you will select a real-world operating system (can be for a PC, server, tablet, handheld, or embedded device). You will introduce the operating system and its components ...

Discussion question this research assignment will give

Discussion Question : This research assignment will give further information on the nature and workings of multi-tasking and multi-processing operating systems. All information reported in this assignment is to be in the ...

Taskyour job in this assignment is to create two virtual

Task Your job in this assignment is to create two Virtual machines each running a different but the latest distribution of Linux e.g. Ubuntu Server and CentOS. Each of these VM's is to offer services to a user base. The ...

State the required answer precisely and then provide proper

State the required answer precisely and then provide proper explanation. It is not enough to provide one- word or one-line answers. Briefly describe the following concepts and indicate how they are related in the context ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As