Students
Tuition Fee
Start Date
Medium of studying
On campus
Duration
Details
Program Details
Degree
Bachelors
Major
Computer Science | Network Security | Software Engineering
Area of study
Information and Communication Technologies | Engineering
Education type
On campus
Course Language
English
About Program

Program Overview


Introduction to COMP2291 Operating Systems

The COMP2291 unit introduces the concept of an operating system, describing its software architecture and interaction with modern computer hardware. This unit covers topics on resource management, including the central processing unit (CPU), memory, storage, network communication, and Input/Output (I/O) devices.


General Information

  • Unit Convenor and Teaching Staff: Richard Han, Lecturer, and Endrowednes Kuantama
  • Credit Points: 10
  • Prerequisites: COMP1010
  • Corequisites: None
  • Co-badged Status: COMP6291
  • Unit Description: This unit introduces the concept of an operating system, describing its software architecture and interaction with modern computer hardware. Students 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 virtualization.

Learning Outcomes

On successful completion of this unit, students 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.
  • Explain the structure/architecture and function of an Operating System.
  • Demonstrate an understanding and ramifications of security and fault isolation.
  • Demonstrate an understanding of virtualization concepts.

General Assessment Information

The assessment is divided into four major components: midterm exam, final exam, weekly quizzes, and a coding assignment.


  • Midterm Exam: 20%, held in week 7 during practicals.
  • Final Exam: 20%, held during the exam period.
  • Weekly Quizzes: 10%, due weekly on Sundays at 11:55 pm.
  • Coding Assignment: 50%, due in week 7 and week 13.

Assessment Tasks

Mid-semester Exam

  • Assessment Type: Examination
  • Indicative Time on Task: 20 hours
  • Due: Week 7
  • Weighting: 20% This exam assesses students' mastery of coursework material, focusing on applying resource management concepts and explaining the structure and function of an Operating System.

Final Exam

  • Assessment Type: Examination
  • Indicative Time on Task: 20 hours
  • Due: Exam Period
  • Weighting: 20% The final exam assesses students' understanding of resource management, Operating System structure and function, security, fault isolation, and virtualization concepts.

Quiz

  • Assessment Type: Quiz/Test
  • Indicative Time on Task: 10 hours
  • Due: Weekly on Sundays at 11:55 pm
  • Weighting: 10% The quiz is a formative assessment measuring students' knowledge and comprehension of unit materials, covering multiple learning outcomes.

Assignment

  • Assessment Type: Practice-based task
  • Indicative Time on Task: 48 hours
  • Due: Week 7 and Week 13
  • Weighting: 50% The assignment is a semester-long programming task where students apply their skills to create operating system components or modules, demonstrating understanding of resource management, concurrency, device drivers, security, and virtualization.

Delivery and Resources

  • Classes: Two hours of lectures and a two-hour practical workshop each week.
  • Textbook and Reading Materials: "Operating Systems Concepts" by Silberschatz, Gagne, and Galvin, and "The C Programming Language" by Brian W. Kernighan and Dennis M. Ritchie.
  • Unit Websites: The unit is administered via iLearn, with announcements, assignments, and content posted there.
  • Technologies Used and Required: This is a BYOD (Bring Your Own Device) unit, requiring students to bring their own laptop to workshops.

Unit Schedule

The tentative weekly schedule includes:


  • Week 1: Introduction to C and OS
  • Weeks 2-3: Processes, threads, synchronization, and deadlock
  • Week 4: CPU Scheduling
  • Weeks 5-6: Virtual memory
  • Weeks 7-8: Input/Output
  • Weeks 9-10: Storage and File Systems
  • Week 11: Networking and Security
  • Week 12: Virtual Machines
  • Week 13: Review

Policies and Procedures

Macquarie University policies and procedures are accessible from Policy Central. Students should be aware of the Academic Appeals Policy, Academic Integrity Policy, Academic Progression Policy, Assessment Policy, and Special Consideration Policy.


Student Support

Macquarie University provides a range of support services, including academic support, IT support, accessibility and disability support, mental health support, and social support.


Changes from Previous Offering

There are no significant changes from prior offerings.


See More
How can I help you today?