Principles of Operating Systems
CMSC 421 - Spring 2019
Homework 2
50 points total
Due by 11:59PM EDT on Wednesday, March 13th
Please provide written responses to the following questions. Each response
should be about a paragraph or two in length — there is no need to write us
a book for each, just be sure to answer the question thoroughly. Each
question is worth 10 points.
-
Explain the concept of Interprocess Communication (IPC). Compare and contrast
the two main methods of IPC: shared memory and message passing. What is the
role of sockets in IPC and what type of IPC mechanism (of the two above) do
they represent?
-
Explain the concept of system calls and how they work in an OS. Give a
concrete example of a task that requires multiple system calls to be called to
complete in a modern computer system and identify which system calls would need
to be called (potential tasks you could use include things like copying a file or
reading a web page from a remote server).
-
Describe what a context switch is. Be sure to include different reasons that a
context switch may occur in a system and what data within the system needs to be
swapped out during the context switch. How does the data swapped out differ when
switching between two threads within a single process and between two separate
processes.
-
Describe parallelism and concurrency. Be sure to clearly define the difference
between these two concepts.
-
Briefly explain what a mutex lock and a counting semaphore are. Describe at least
one situation where each of these synchronization primitives could be used with
multiple threads in a process.
You must submit a PDF file of the answers to these questions on the Homework
2 assignment on Blackboard. You may prepare your responses in any word
processing application of your choosing, but you must submit a PDF file.
Do not submit Microsoft Word/Apple Pages/LibreOffice
documents with your responses. You must convert to a PDF file before
submitting or you will lose points.
Last modified