CS3060 Operating Systems Theory

Syllabus Summer 2017

Dr. Brian Durney
Office: CS520C
Phone: 801-863-6390
Email: bdurney@uvu.edu
Office Hours: MWF 10:00-11:30

Course Objectives

If you learn the material for this course you should be able to:

  1. Describe the basic functions of an operating system
  2. Describe the major components of an operating system
  3. Explain the basic algorithms for scheduling, memory management, and process management
  4. Write reasonably complex programs on a Unix-style operating system.

Course Philosophy

The premise for this course is that you learn by doing. In addition to attending class, you will need to read, answer questions, write programs, and get as much practice as you can working with operating systems concepts.


Operating System Concepts  9th ed., by Silberschatz, Galvin, and Gagne, published by Wiley.


If you have any disability which may impair your ability to successfully complete this course, please contact the Accessibility Services office, 801-863-8747, LC 312. Academic accommodations are granted for all students who have qualified documented disabilities. All services are coordinated with the Accessibility Services office.


Grades will be based on the following, possibly subject to adjustment during the semester:

Programming Assignments 60%
Quizzes 20%
Final Exam 20%

Grading scale:
90% to 92% A- 93% and above A
80% to 82% B- 83% to 86% B 87% to 89% B+
70% to 72% C- 73% to 76% C 77% to 79% C+
60% to 62% D- 63% to 66% D 67% to 69% D+
59% and below F

NOTE: The percentages shown in Canvas aren't necessarily the percentages I use to determine course grades. I post scores on Canvas so that students can check their individual scores, but I don't base grades on the percentages shown in Canvas. Canvas has limited options and doesn't allow me to set up grades the way I do in my spreadsheet.

Project and Assignments

Programming assignments are a very important part of this class, because writing these programs will help you understand operating systems concepts better than simply reading about them.

Late Policy—There will be a 10% penalty per calendar day late. Nothing turned in more than 5 days late will be accepted. For example, if 100 points are possible on an assignment, and a student turns in the assignment two days late, 20 points will be subtracted from the score the student would have received for turning in the work on time.

Do not copy someone else's code or files or allow someone else to copy yours. You are welcome, and encouraged, to discuss assignments with others, get help from other students, and so on, but not by showing your code, looking at someone else's code, or working on assignment code together. There are no group projects in this course.

If I find copied code, I will deduct a penalty from the scores of all students whose work contains the copied code, which could result in a score of zero for an assignment. That means that if you let another student read your code you might not get any credit on the assignment. Repeated incidents of copied code will result in more severe penalties, possibly including a failing grade for the course.

Cheating (including copied code) and suspected cheating will be reported to the Office of Student Conduct.

It's important to carefully follow the specifications for programming assignments. Failure to follow the specifications can result in losing points and/or a delay in grading your assignment. I will not give any credit for code that does not produce any observable output.

Please check your files before turning them in. If you submit the wrong tar file, forget to include a file, or need to resubmit for some other reason, there will be a resubmission penalty of at least 10%. There is no penalty for resubmitting an assignment before the due date.

Exams and Quizzes

There will be four twenty-question quizzes and a final exam.

The quizzes will be given in Canvas. You can use your textbook and web resources on quizzes. Quizzes will have the same late policy as programming projects: 10% penalty per day, no credit for more than five days late. (The last quiz will only be available until the last day of the term.)

The final exam will be given in the class room during the time scheduled for this course. You can find the date and time in the course schedule.