Assignment 6: System Calls & Processes
In this activity, you may work in pairs or individually. You may not use ChatGPT or similar tools in any way, shape, or form on this activity. If there is any indication that one of those tools was used, you will received an automatic zero. Instead, working with your peer to do your best answering the questions throughout. Many of the questions are are open-ended, and thus have many possible answers, so I would expect them to vary widely between submissions.
Learning Objectives
Students will be able to…
- Identify the other layers of the OS that the system call layer interfaces with.
- Identify the functionality in the services layer that the system call layer exposes.
- Understand the separation of interface from implementation in the system calls system.
- Use the state diagram to predict the state transitions a process makes during its lifetime.
- Describe the steps the operating system takes during a context switch.
- Explain how a programmer uses the fork() system call to create a child process.
- Implement the Producer-Consumer problem using shared-memory bounded-buffers or message passing system calls.
- Compare the overhead involved with each implementation, in terms of memory space and number of system calls made.
Instructions
For this assignment, you will complete the worksheet linked below covering topics on System Calls and Processes. You will make a copy of the worksheet and complete your work within your worksheet copy. Note that if you are working with a partner, you will only submit one copy of the worksheet between the two of you.
As with the previous assignment, I encourage you to spend some time thinking through these questions, working them out of paper (making notes and drawing pictures, where necessary). Though there are a lot of questions, no single question should take that much time. If you have done your reading, and think through the models that are provided, you should be able to answer them relatively quickly.
📄 Link to the Worksheet in Google Docs: Google Docs Link
Submitting Your Work
Your work must be submitted to Anchor for degree credit and to Gradescope for grading.
- Complete the work in your copy of the Google Doc.
- After you have completed your answers, export it as a pdf document.
- Submit your pdf document to Gradescope using the appropriate link (one one person per pair needs to upload).
- Upload the pdf document to Anchor using the form below (both individuals must upload their own copy to Anchor).
This assignments is used with permission: © Victor Norman at Calvin University, 2023 vtn2@calvin.edu Version 2.1.1 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.