Operating Systems (Winter 2019) Course Outline: Difference between revisions

From Soma-notes
Line 12: Line 12:
** Nilofar Mansourzadeh (nilofarmansourzadeh at cmail.carleton.ca): Mon. 10:30-11:30 in HP 4125
** Nilofar Mansourzadeh (nilofarmansourzadeh at cmail.carleton.ca): Mon. 10:30-11:30 in HP 4125
** Poe Kgengwenyane (TshepoKgengwenyane at cmail.carleton.ca):
** Poe Kgengwenyane (TshepoKgengwenyane at cmail.carleton.ca):
** Saad Hasan (saadhasan3 at cmail.carleton.ca):
** Iqra Mcilveen (iqramcilveen at cmail.carleton.ca): Mon. 8:30-9:30 in HP 4125
** Iqra Mcilveen (iqramcilveen at cmail.carleton.ca): Mon. 8:30-9:30 in HP 4125
** Steven Porretta (StevenPorretta at cmail.carleton.ca):
** Steven Porretta (StevenPorretta at cmail.carleton.ca):

Revision as of 20:03, 7 January 2019

Course Information

  • Course Number: COMP 3000
  • Term: Winter 2019
  • Title: Operating Systems
  • Institution: Carleton University, School of Computer Science
  • Instructor: Anil Somayaji (anil.somayaji at carleton.ca): Wed. 13:30-14:30 in HP 5137
  • Teaching Assistants:
    • Ahmed Lezzaik (AhmedLezzaik at cmail.carleton.ca): Thurs. 11:00-12:00 in HP 4125
    • Jacob Boertjes (jacobboertjes at cmail.carleton.ca): Tues. 11:30-11:30 in HP 4125
    • Lauren Wise (laurenwise@cmail.carleton.ca at cmail.carleton.ca): Mon. 14:30-15:30 in HP 4125
    • Nilofar Mansourzadeh (nilofarmansourzadeh at cmail.carleton.ca): Mon. 10:30-11:30 in HP 4125
    • Poe Kgengwenyane (TshepoKgengwenyane at cmail.carleton.ca):
    • Iqra Mcilveen (iqramcilveen at cmail.carleton.ca): Mon. 8:30-9:30 in HP 4125
    • Steven Porretta (StevenPorretta at cmail.carleton.ca):
    • William Findlay (williamfindlay at cmail.carleton.ca): Wed. 11:30-12:30 in HP 4125
  • Lectures: Mon. and Wed. 16:05-17:25 in HS 1301
  • Tutorials (in HP 4155):
    Monday 13:05-14:25 PM (Nilofar, Saad, Steven)
    Wednesday 8:35-9:55 (Ahmed, Iqra, Saad)
    Wednesday 10:05-11:25 (Poe, Nilofar, William)
    Wednesday 14:35-15:55 (Lauren, Jacob, Steven)
  • Course Website: http://homeostasis.scs.carleton.ca/wiki/index.php/Operating_Systems_%28Winter_2019%29

Official Course Description

Operating system implementation course stressing fundamental issues in design and how they relate to modern computer architectures. Assignments involve the modification and extension of a multitasking operating system.

Learning Outcomes

By the end of this course, students should:

  • be able to write C code that uses low-level Linux services and should be able to implement simple Linux kernel extensions (modules),
  • have a strong conceptual model of how an operating system works that allows them to determine the relative role of application and operating system code when debugging software, and
  • understand the basic use and architecture of virtual-machine based cloud architectures.

Note that in order to achieve these objectives students should have come into this course with a strong background in C programming and general application development.

Grading

The marking scheme for this course are:

  • 20% for tutorial participation
  • 20% for the assignments
  • 30% for the Midterm, February 13 during class
  • 30% for the Final Exam (during the final exam period)

Sometimes I also calculate grades using alternative marking schemes at the end of the semester, assigning the highest grade for each student from any of the marking schemes. Thus your final grade may be higher than might be suggested by strict following of the above scheme.

Communication

This wiki page is the canonical source of information on this course. Please refer to it for updates. When significant changes are made to this document it will be either announced in lecture and/or posted in the course discussion forum.

Course discussions will be on cuLearn. While you may discuss assignments there, do not post outright answers to them. You may post in either the Questions and Answers forum or the General Discussion forum.

You may get an account on class wiki so you can edit content there. Email Prof. Somayaji to get one with your preferred username and email address to which a password should be sent. (Note this is not a requirement.)

Collaboration

Collaboration on all work is allowed except for the two tests. Collaboration, however, should be clearly acknowledged.

For assignments, while you may get help from others and even collaboratively solve technical problems, the code and answers submitted should all be your own work. For example, you may not divide an assignment into parts, give a part to another student or anyone else to solve, and then submit that work as your own. You have to have participated in the creation of every part of your submitted work. An easy way to make sure this happens is never share files regarding coursework or copy and paste answers into email. Instead, meet together to work on an assignment and then separate to write up your solutions.

Similarity between submitted assignments and projects that has not been appropriately documented will be treated as plagiarism - the same as copying on a midterm or a final - and will be submitted to the Dean for disciplinary action.

Course Notes/Multimedia

Audio and sometimes video from lectures will be available via the lecture pages on the main course website. These same pages will also contain notes created by fellow students (done for extra credit).

Do not rely upon the lectures and notes to cover all material related to this class. You are expected to keep up with the assigned textbook readings and material covered in the tutorials.

Required Textbooks

The course will be using the textbook Operating Systems: Three Easy Pieces. The chapters of this textbook are available for free online; you can also buy a full epub, PDF, or paper copy if you wish.

Individual chapters will be linked with the lectures associated with them. You should plan on reading the assigned chapters before coming to class, as the material in lectures will be easier to understand then. The lectures are designed to supplement the textbook, not replace them.

This course focuses much more on reading code rather than writing code. Thus, John Aycock's book, Reading and Modifying Code, is worth reading to better understand how reading code differs from writing code.

Course Software

In this course we will primarily working with Lubuntu, a low-resource variant of Ubuntu Linux distribution. You may use other Linux distributions in the tutorials to complete the assigned work; there will be differences, however, in some aspects (such as installing software), particularly if you use a distribution not based on Ubuntu or Debian.

University Policies & Resources

Undergraduate Academic Advisor

The undergraduate advisor for the School of Computer Science is available in Room 5302C HP, by telephone at 520-2600, ext. 4364 or by email at undergraduate_advisor@scs.carleton.ca. The advisor can assist with information about prerequisites and preclusions, course substitutions/equivalencies, understanding your academic audit and the remaining requirements for graduation. The undergraduate advisor will also refer students to appropriate resources such as the Science Student Success Centre, Learning Support Services and the Writing Tutorial Services.

Student Academic Integrity Policy

Every student should be familiar with the Carleton University student academic integrity policy. A student found in violation of academic integrity standards may be awarded penalties which range from a reprimand to receiving a grade of F in the course or even being expelled from the program or University. Some examples of offences are: plagiarism and unauthorized co-operation or collaboration. Information on this policy may be found in the Undergraduate Calendar.

Plagiarism

As defined by Senate, "plagiarism is presenting, whether intentional or not, the ideas, expression of ideas or work of others as one's own". Such reported offences will be reviewed by the office of the Dean of Science.

Unauthorized Co-operation or Collaboration

Senate policy states that "to ensure fairness and equity in assessment of term work, students shall not co-operate or collaborate in the completion of an academic assignment, in whole or in part, when the instructor has indicated that the assignment is to be completed on an individual basis".

Please see above for the specific collaboration policy for this course.

Requests for Academic Accommodation

You may need special arrangements to meet your academic obligations during the term. For an accommodation request, the processes are as follows:

Pregnancy obligation

Please contact your instructor with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details, visit the Equity Services website: https://carleton.ca/equity/wp-content/uploads/Student-Guide-to-Academic-Accommodation.pdf

Religious obligation

Please contact your instructor with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details, visit the Equity Services website: https://carleton.ca/equity/wp-content/uploads/Student-Guide-to-Academic-Accommodation.pdf

Academic Accommodations for Students with Disabilities

If you have a documented disability requiring academic accommodations in this course, please contact the Paul Menton Centre for Students with Disabilities (PMC) at 613-520-6608 or pmc@carleton.ca for a formal evaluation or contact your PMC coordinator to send your instructor your Letter of Accommodation at the beginning of the term. You must also contact the PMC no later than two weeks before the first in-class scheduled test or exam requiring accommodation (if applicable). After requesting accommodation from PMC, meet with your instructor as soon as possible to ensure accommodation arrangements are made. carleton.ca/pmc

Survivors of Sexual Violence

As a community, Carleton University is committed to maintaining a positive learning, working and living environment where sexual violence will not be tolerated, and is survivors are supported through academic accommodations as per Carleton's Sexual Violence Policy. For more information about the services available at the university and to obtain information about sexual violence and/or support, visit: https://carleton.ca/sexual-violence-support

Accommodation for Student Activities

Carleton University recognizes the substantial benefits, both to the individual student and for the university, that result from a student participating in activities beyond the classroom experience. Reasonable accommodation must be provided to students who compete or perform at the national or international level. Please contact your instructor with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. https://carleton.ca/senate/wp-content/uploads/Accommodation-for-Student-Activities-1.pdf

For more information on academic accommodation, please contact the departmental administrator or visit: https://students.carleton.ca/course-outline

Medical Certificate

The following is a link to the official medical certificate accepted by Carleton University for the deferral of final examinations or assignments in undergraduate courses. To access the form, please go to https://www.carleton.ca/registrar/forms