Find Jobs
Hire Freelancers

Online Q and A system

$10-30 USD

Assegnato
Pubblicato quasi 8 anni fa

$10-30 USD

Pagato al completamento
Project 1 – Online Q and A system 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. Manager Process(Teacher)Child 1 Process(#1 Student)Child 2 Process(#2 Student)Child 2 Process(#N Student). . . . Figure 1 Hierarchy of Processes 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. I will use the ‘README’ file to compile (or install) and run your program. If I have trouble with your program then he will contact you to makeup it.
Rif. progetto: 10867834

Info sul progetto

Progetto a distanza
Attivo 8 anni fa

Hai voglia di guadagnare un po'?

I vantaggi delle offerte su Freelancer

Imposta il tuo budget e le scadenze
Fatti pagare per il lavoro svolto
Delinea la tua proposta
La registrazione e le offerte sui lavori sono gratuite

Info sul cliente

Bandiera: UNITED STATES
bridgeport, United States
5,0
1
Metodo di pagamento verificato
Membro dal giu 26, 2016

Verifica del cliente

Grazie! Ti abbiamo inviato tramite email il link per richiedere il tuo bonus gratuito.
Non è stato possibile inviarti l'email. Riprova per piacere.
di utenti registrati di lavori pubblicati
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Caricamento anteprima
Autorizzazione per la geolocalizzazione concessa.
La tua sessione è scaduta ed è stato effettuato il log out. Accedi nuovamente per piacere.