Students

COMP2291 – Operating Systems

2024 – Session 2, In person-scheduled-weekday, North Ryde

General Information

Download as PDF
Unit convenor and teaching staff Unit convenor and teaching staff Convenor, Lecturer
Richard Han
Lecturer
Damian Jurd
Credit points Credit points
10
Prerequisites Prerequisites
COMP1010 or COMP125
Corequisites Corequisites
Co-badged status Co-badged status
Unit description Unit description

This unit will introduce the concept of an operating system and describe its software architecture and interaction with modern computer hardware. The unit will cover topics on resource management of the central processing unit (CPU), memory, storage, network communication, and Input/Output (I/O) devices. Students will learn concepts such as multitasking, processes, address spaces, isolation, scheduling, concurrency, fairness, multithreading, synchronization, deadlock, virtual memory, interrupts, computer architecture, signals, kernels, user-space, file systems, the layered network stack, security, and virtualisation. The performance tradeoffs in the design of various components of the operating system will be discussed.

Important Academic Dates

Information about important academic dates including deadlines for withdrawing from units are available at https://www.mq.edu.au/study/calendar-of-dates

Learning Outcomes

On successful completion of this unit, you will be able to:

  • ULO1: Demonstrate an ability to apply resource management concepts and principles to application design and execution (CPU, memory, storage/files, network/I/O, processes).
  • ULO2: Develop software programs that support concurrency and multi-threading.
  • ULO3: Develop a simple device driver that demonstrates the connection between operating systems and hardware.
  • ULO4: Explain the structure/architecture and function of an Operating System.
  • ULO5: Demonstrate an understanding and ramifications of security and fault isolation.
  • ULO6: Demonstrate an understanding of virtualisation concepts.

General Assessment Information

Week 1

The unit has two different scheduled class types:

  • Lecture. Lectures begin in week 1. Attendance is recommended but not compulsory. Lectures are generally available via the ECHO360 to livestream or to view at a later date not withstanding technical issues.
  • Workshop. Workshops begin in week 1. Workshop classes offer the opportunity for students to engage in hands-on activities in order to apply what has been learned from the readings and lecture materials. Students will complete a short quiz associated with the workshop activity each week that contributes to your final mark. This quiz be completed and submitted in-class.

Note that while the practical material is structured to follow the lecture material, students need to keep in mind that there will not always be a one to one mapping between the lecture topics and workshop exercises. This is because of a need for some practical sessions to introduce new tools and techniques before following on from the related concepts from the readings and lecture materials.

Assessments

The assessment is divided into four major components, namely midterm exam, final exam, weekly quizzes, and the coding assignment. The weightings of each component are designated above. The midterm exam will be held in the workshops during week 7. The Final exam will be held in rooms designated by the university during the exam period. Exams will be on iLearn. More details will be posted on iLearn later in the term. Weekly quizzes will be due on iLearn. These will likely include short answer, fill in the blank, and multiple choice type of questions. 

The coding assignment will be divided into two major subcomponents or labs, with lab 1 due mid semester (week 7) and lab 2 due at the end of the term (week 13). Each lab will have multiple stages due at different times leading up to their final due dates. Each lab will also have a viva component as part of the assessment where you will be asked to explain your code. See iLearn for more details. Lab assignments will primarily use the C programming language, but may include other components involving Makefiles, scripting, etc.  

Unless otherwise noted, all deadlines are by the Friday of the week stated.

Late Assessment Submission

For any late submission of time-sensitive tasks, such as scheduled tests/exams, performance assessments/presentations, and/or scheduled practical assessments/labs, students need to submit an application for Special Consideration through ask.mq.edu.au.  The Special Consideration Policy aims to support students who have been impacted by short-term circumstances or events that are serious, unavoidable and significantly disruptive, and which may affect their performance in assessment. If you experience circumstances or events that affect your ability to complete the assessments in this unit on time, please submit a Special Consideration request.

Our Late policy is summarized below.

Assessments where Late Submissions will be accepted

  • Project – YES, but Special Consideration must be requested and granted
  • In-class exercises - YES, but Special Consideration must be requested and granted
  • Mid-semester exam - YES, but Special Consideration must be requested and granted
  • Final exam - YES, but Special Consideration must be requested and granted.  A supplementary exam is typically scheduled and administered by the university.

Requirements to Pass this Unit 

Whilst there are a number of learning activities and assessments that make up the unit, in order to pass the unit the only requirement is that you achieve a total mark equal to or greater than 50%.

There are no hurdle requirements for the unit. 

Written Assessments:

If you experience circumstances or events that affect your ability to complete the project assessments in this unit on time, or if you miss the mid-semester exam or final exam, please submit a Special Consideration request through ask.mq.edu.au.

Weekly practice-based tasks:

To pass the unit you need to demonstrate ongoing development of skills and application of knowledge in 7 out of 10 of the weekly practical classes. If you miss a weekly practical class due to a serious, unavoidable and significant disruption, contact your convenor and tutor ASAP as you may be able to attend another class that week. If it is not possible to attend another class, you should still contact your unit convenor and tutor for access to class material to review in your own time.

Note that a Special Consideration should only be applied for if you miss more than three of the weekly practical classes.

Assessment Tasks

Name Weighting Hurdle Due
Quiz 10% No Weekly
Mid-semester exam 20% No Week 7
Assignment 50% No Checkpoint: Sep 8 11:59pm, Final submission: Nov 3 11:59pm
Final exam 20% No Exam Period

Quiz

Assessment Type 1: Quiz/Test
Indicative Time on Task 2: 10 hours
Due: Weekly
Weighting: 10%

 

The Quiz is an in-class test. It is a formative assessment that can be used to measure students’ knowledge and comprehension of unit materials. Quiz Question types include multiple choice, matching items, true/false, short answer and many more. Quizzes allow for formative assessment feedback on basic conceptual competence and therefore usually span multiple learning outcomes.

 


On successful completion you will be able to:
  • Demonstrate an ability to apply resource management concepts and principles to application design and execution (CPU, memory, storage/files, network/I/O, processes).
  • Demonstrate an understanding and ramifications of security and fault isolation.
  • Demonstrate an understanding of virtualisation concepts.

Mid-semester exam

Assessment Type 1: Examination
Indicative Time on Task 2: 20 hours
Due: Week 7
Weighting: 20%

 

An examination allows us to individually and securely assess student's mastery of the coursework material.

 


On successful completion you will be able to:
  • Demonstrate an ability to apply resource management concepts and principles to application design and execution (CPU, memory, storage/files, network/I/O, processes).
  • Explain the structure/architecture and function of an Operating System.
  • Demonstrate an understanding and ramifications of security and fault isolation.
  • Demonstrate an understanding of virtualisation concepts.

Assignment

Assessment Type 1: Practice-based task
Indicative Time on Task 2: 48 hours
Due: Checkpoint: Sep 8 11:59pm, Final submission: Nov 3 11:59pm
Weighting: 50%

 

A semester-long programming task where students put all their skills to work creating operating system components or modules.

 


On successful completion you will be able to:
  • Demonstrate an ability to apply resource management concepts and principles to application design and execution (CPU, memory, storage/files, network/I/O, processes).
  • Develop software programs that support concurrency and multi-threading.
  • Develop a simple device driver that demonstrates the connection between operating systems and hardware.
  • Demonstrate an understanding and ramifications of security and fault isolation.
  • Demonstrate an understanding of virtualisation concepts.

Final exam

Assessment Type 1: Examination
Indicative Time on Task 2: 20 hours
Due: Exam Period
Weighting: 20%

 

An examination allows us to individually and securely assess student's mastery of the coursework material.

 


On successful completion you will be able to:
  • Demonstrate an ability to apply resource management concepts and principles to application design and execution (CPU, memory, storage/files, network/I/O, processes).
  • Explain the structure/architecture and function of an Operating System.
  • Demonstrate an understanding and ramifications of security and fault isolation.
  • Demonstrate an understanding of virtualisation concepts.

1 If you need help with your assignment, please contact:

  • the academic teaching staff in your unit for guidance in understanding or completing this type of assessment
  • the Writing Centre for academic skills support.

2 Indicative time-on-task is an estimate of the time required for completion of the assessment task and is subject to individual variation

Delivery and Resources

Classes

Each week, you have a two-hour lecture and a two-hour workshop class. For details of scheduled classes, consult eStudent

In weeks 1-6, Richard Han is scheduled to lecture, while in weeks 7-13 Damian Jurd is scheduled to lecture.

Note that practical classes (lab sessions) commence in week 1. The week-by-week details of the workshop classes will be available from iLearn.

You must participate in workshop practical class that you are enrolled in.

Textbook and Reading Materials

Required Text Book 

  • "Operating Systems Concepts" 10th edition, by Silberschatz, Gagne and Galvin. 2021.

We will assign weekly readings from the textbook during lecture and/or on iLearn. The text book is available in electronic form online, or you can purchase a printed copy from a book seller of your choice. Is this available in the Library? 

Recommended Text 

  • "The C Programming Language" 2nd edition, Brian W Kernighan and Dennis M Ritchie, Prentice-Hall 1988.

This small book is the classic reference on C programming. 

Unit Websites

COMP2291 / COMP6291 is administered via iLearn (http://ilearn.mq.edu.au/)

This unit outline can be found in the university's unit guides 

We will use iLearn as our main platform for making announcements, posting assignments, releasing lecture slides and other content, conducting quizzes and exams, and posting results. We will use the announcements forums on iLearn to post important messages to the class. Students may ask questions in a separate general iLearn forum, where we will answer them. 

Lecture Recordings 

Digital recordings of lectures may be available. They will be linked from iLearn.

Technologies Used and Required

COMP2291 / COMP6291 is a BYOD (Bring Your Own Device) unit. You will be expected to bring your own laptop computer (Windows, Mac, or Linux) to the workshop, install and configure the required software, and incorporate secure practices into your daily work (and play!) routines.

Methods of Communication

All announcements about unit-related matters will be communicated through iLearn. It is the student's responsibility to ensure they check iLearn announcements, forums, and FAQ sections regularly.

Students are encouraged to use the iLearn forums to ask questions about unit content and concepts. Questions about specific details in an assessment submission may need to be sent via a private forum post in the first instance (details are provided in iLearn about how this is set up) so as not to be at risk of breaching the university's academic integrity policy.

Emails to the convenor, lecturer and/or tutors need to be preceded with a title identifying the class: COMP 2291 or 6291.  Any one-on-one commiunication with unit staff that is via email must be done through the student's official university email account (the one ending with '@students.mq.edu.au'). There may be occasions where unit staff will email a student directly to their @students.mq.edu.au email address. It is the student's responsibility to ensure they check their official university email regularly for communications from the university staff. 

Students may contact the convenor at the posted email above to have questions that cannot be otherwise answered by tutors or in the general forum, such as questions about policy in the class, but should avail themselves first of the general forum and tutors at their workshops to have technical questions about their assignments answered.

Results will be released on iLearn in a timely manner, subject to certain acceptable delays such as accommodating special consideration late assessments.

General Notes

In this unit, you should do the following:

  • Review lectures and unit contents, take notes and ask questions.
  • Complete your weekly tasks within the workshop session.
  • Ensure that you complete quizzes at the end of each week to ensure that you are staying on top of the course materials.
  • Read appropriate sections of the text, add to your notes and prepare questions for your teaching staff.
  • Work on any assignments that have been released.

Lecture notes will be made available each week, but these notes are intended as an outline of the lecture only and are not a substitute for your own notes or the recommended reading list.

Note that Workshops commence in week 1. Please note that you will be required to submit work every week. 

Students will attend weekly workshops in person, where they will receive additional explanations on class assignments and topics, and may take examinations, be asked to present stages in their labs, be asked to explain their code in vivas, etc. Students should use these workshops to ask questions of their tutor.

For general administrative questions relating to the unit, please email the unit convenor and current lecturer. Emails should be preceded in the title with "COMP 2291: " or "COMP 6291: ". For specific technical questions, first contact your workshop/practical tutor/TA, use the Unit Forum and/or use the School of Computing's Drop-In Centre. If your technical question cannot still be resolved, please email the current lecturer with "COMP 2291: " or "COMP 6291: " in the title.

Policies and Procedures

Macquarie University policies and procedures are accessible from Policy Central (https://policies.mq.edu.au). Students should be aware of the following policies in particular with regard to Learning and Teaching:

Students seeking more policy resources can visit Student Policies (https://students.mq.edu.au/support/study/policies). It is your one-stop-shop for the key policies you need to know about throughout your undergraduate student journey.

To find other policies relating to Teaching and Learning, visit Policy Central (https://policies.mq.edu.au) and use the search tool.

Student Code of Conduct

Macquarie University students have a responsibility to be familiar with the Student Code of Conduct: https://students.mq.edu.au/admin/other-resources/student-conduct

Results

Results published on platform other than eStudent, (eg. iLearn, Coursera etc.) or released directly by your Unit Convenor, are not confirmed as they are subject to final approval by the University. Once approved, final results will be sent to your student email address and will be made available in eStudent. For more information visit connect.mq.edu.au or if you are a Global MBA student contact globalmba.support@mq.edu.au

Academic Integrity

At Macquarie, we believe academic integrity – honesty, respect, trust, responsibility, fairness and courage – is at the core of learning, teaching and research. We recognise that meeting the expectations required to complete your assessments can be challenging. So, we offer you a range of resources and services to help you reach your potential, including free online writing and maths support, academic skills development and wellbeing consultations.

Student Support

Macquarie University provides a range of support services for students. For details, visit http://students.mq.edu.au/support/

The Writing Centre

The Writing Centre provides resources to develop your English language proficiency, academic writing, and communication skills.

The Library provides online and face to face support to help you find and use relevant information resources. 

Student Services and Support

Macquarie University offers a range of Student Support Services including:

Student Enquiries

Got a question? Ask us via the Service Connect Portal, or contact Service Connect.

IT Help

For help with University computer systems and technology, visit http://www.mq.edu.au/about_us/offices_and_units/information_technology/help/

When using the University's IT, you must adhere to the Acceptable Use of IT Resources Policy. The policy applies to all who connect to the MQ network including students.

Changes from Previous Offering

We value student feedback to be able to continually improve the way we offer our units. As such we encourage students to provide constructive feedback via student surveys, to the teaching staff directly, or via the FSE Student Experience & Feedback link in the iLearn page.

Student feedback from the previous offering of this unit was very positive overall, with students pleased with the clarity around assessment requirements and the level of support from teaching staff. As such, no change to the delivery of the unit is planned, however we will continue to strive to improve the level of support and the level of student engagement.


Unit information based on version 2024.03 of the Handbook