Class webpage and communication

Note: We will be using iLearn for assignments, and Piazza for Discussions/help.


Course textbook

Catalog Description

Covers the principles and practice of operating system design. Includes concurrency, memory management, file systems, protection, security, command languages, scheduling, and system performance.

Assignments, Projects and Exams

You have 4 slack days that you can use on any one assignment (homework or project) or combination of assignments. For group assignments, 1 day is assessed to each partner. Penalty is 15% per late day after that.


Exam Dates will be on the course Assignments page. No alternative make up exam will be given without a documented excuse such as a major health issue.

Getting help from instructors and TA

During instructor or TA office hours, please feel free to stop in any time without an appointment. Any other time, please call or email the instructor to make an appointment at some other mutually convenient time. You may also try to "drop in" for help, but please keep in mind that we may not be able to accommodate you.

Please come to us early if you feel you are having trouble keeping up. If you do your part (put in the effort, start early on assignment, come to class), we will do our best to help you stay on top.

Grade Breakdown

Grades will be weighted as follows:

Component Weight
Projects (40%) 40%
Home works (4 total @5% each) 20%
Exam (1) 16%
Final Exam (Exam 2) 24%
Class Participation and Extra credit 4%
Please note the following:
  • Grades will be assigned relative to the rest of the class; however,
  • You must pass both projects and exams/homeworks to pass the class

    Academic Integrity

    Academic integrity is fundamentally about ethical behavior. Appropriate collaboration and research of previous work is an important part of the learning process. However, not all collaboration or use of existing work is ethical. The overarching principles which should guide you when determining whether or not it is appropriate to use a source or collaborate with a classmate involve answering these questions:
    • Does this fit within the spirit of the assignment/activity?

      In any ethical decision there is always judgment involved. Some assignments and activities involve collaborating with a team, in others you are asked to work individually. You are expected to have some common sense and to use it.

    • Does this help me or someone else in the class to improve our skills and/or understanding of class material?

      As a guiding principle, talking about concepts is usually good, talking about specific answers or approaches to problems is usually not.

    • Does this misrepresent my own (or someone else's) capabilities and understanding of materials for the purpose of grading?

      Attribution of sources is a key idea here; if you use work which is not your own, that work should be cited. For this class, citation is not required to be in a specific format, but any citation should clearly identify the author and source of any work which is not your own. Refer to the university policy on plagiarism and cheating.

    • Have any specific instructions been given for this assignment?

      Not all assignments are the same. On some you will be given explicit instructions about what level of collaboration is appropriate, and you are expected to abide by those restrictions even if you disagree with them.

    If you are at all uncertain about an action, whether it be working with another student, researching existing code, or something else, you are always welcome to ask the instructor for clarification.

    The severity of sanctions imposed for an academic integrity violation will depend on the severity of the transgression and ascertained intent of the student. Penalties may range from failing the assignment to failing the course. Again, actions will adhere to the Academic Honesty policies of BCOE and UCR.