Operating Systems 2014F: Assignment 3

From Soma-notes
Revision as of 22:08, 18 September 2014 by Soma (talk | contribs) (→‎Questions)
Jump to navigation Jump to search

This assignment is not yet finalized.

Please submit the answers to the following questions via CULearn by midnight on Wednesday, September 24, 2014. There 10 points in ?? questions.

Submit your answers as a single text file named "<username>-comp3000-assign3.txt" (where username is your MyCarletonOne username). The first four lines of this file should be "COMP 3000 Assignment 3", your name, student number, and the date of submission. You may wish to format your answers in Markdown to improve their appearance.

No other formats will be accepted. Submitting in another format will likely result in your assignment not being graded and you receiving no marks for this assignment. In particular do not submit an MS Word or OpenOffice file as your answers document!

Don't forget to include what outside resources you used to complete each of your answers, including other students, man pages, and web resources. You do not need to list help from the instructor, TA, or information found in the textbook.

Questions

  1. [1] For what types of workloads does SJF deliver the same turnaround times as FIFO?
  2. [1] For what types of workloads and quantum lengths does SJF deliver the same response times as RR?
  3. [1] What happens to response time with SJF as job lengths increase?
  4. [2] What happens to response time with RR as quantum lengths increase? Explain in words and write an equation that gives the worst-case response time, given N jobs.
  5. [2] "Preemptive schedulers are always less efficient than non-preemptive schedulers." Explain how this statement can be true if you define efficiency one way and how it is false if you define efficiency another way.
  6. [2] Explain two ways in which standard OS schedulers (such as those in Linux or Windows) are not fair to processes and why this is a good thing!
  7. [1] MLFQ-type schedulers are more common in systems with single users while systems that support multiple users tend to use more lottery-type schedulers. Why might this be?