Computer Science


Operating Systems: COMPSCI 340 & SOFTENG 370 Semester 2 2016, City Campus


This page is no longer maintained. Information on the current offering can be found on Canvas. The Canvas link for this course can be found here.

Introduction

An operating system is the software which makes a raw computer more or less usable by people. To most people who use computers, the operating system is indistinguishable from the hardware; they never experience the machine by itself. It is the operating system's job to communicate with the people who use it, to look after their files, to do sensible things when they do silly things, and generally to look after all the jobs that must be done but which are too complicated (at the moment) to be built into the hardware.

This course tries to look at general principles of operating systems, but we do look at some low level details as well. You are expected to be a competent programmer in a language such as Java or C++. Some assignments this year will use Python.

The course information document with the same information as on this website.

The Canvas syllabus page.

Contents of the course

  • Introduction to operating systems
  • Operating system history
  • Virtual machines
  • Processes, threads and process states
  • Real-time processes
  • The problems of concurrency and some of the solutions
  • Communicating processes
  • Deadlock
  • Devices
  • Memory management
  • Virtual memory
  • File systems
  • Networked operating systems
  • Distributed operating systems
  • Protection and Security

Top
Assessment

Type

% of final mark

Exam

70

Test - date : Tuesday 23rd August, 9am - 10am

10

Three assignments

20

The Operating Systems course is classed as a practical course. This means you have to pass both the practical component - the assignments, and the theory component - the test and exam, as well as getting an overall pass, to pass the paper.

The pass mark for the practical component is 25%. This means if for some reason you cannot do an assignment you should still be able to gain the practical pass. Of course if you have a practical mark of only 25% then you have to get more in the theory component in order to pass. You also miss out on any learning benefit you would have had from doing all of the assignments. The test and final exam always have significant questions taken from the work done in the assignments.

The pass mark for the theory component and the overall pass marks are approximately 50%.

Either Canvas or the Assignment Drop Box system will be used for the submission of assignments. This will be detailed in the assignment specifications.

Top
Lectures

Lectures are held at the following times and places (as of the time this document was prepared):

  • Tuesday 9am 201N-346 (HSB)

  • Thursday 10am 301-G050 (Chem)

  • Friday 11am 301-G050 (Chem)

Lecture Topics

  • Introduction to the course - OS structure

  • History of OSs - up to batch systems


  • History of OSs - time-sharing systems, PCs, the Web and smaller OSs

  • C programming and Operating Systems

  • Virtualization, Processes and threads - implementation

  • PCBs, Process states, Process creation

  • Running, waiting and stopping

  • Scheduling

  • Real-time scheduling

  • The problem of concurrency - locks and semaphores

  • Readers/writers, monitors

  • Dining Philosophers, Equivalence of concurrency constructs

  • IPC, Distributed concurrency control


  • Deadlock

  • File Systems

  • Representing files on disk

  • File allocation techniques

  • Versioning File Systems

  • Distributed File Systems

  • NFS & AFS

  • Distributed services

  • Memory management, Pages, Segments


  • Virtual memory, page faults

  • Page allocation algorithms

  • Protection and the access matrix

  • Capabilities and Access Control Lists

  • Cryptography and Authentication, Kerberos

  • Intro to mobile security

  • Device drivers

  • Linux modules and general device services

  • Disks as special devices, disk scheduling

Top
Handling illness or absence
  • If you must leave for family emergencies etc., PLEASE talk to the lecturer, or somehow get a message to the department. Very few problems are so urgent that we cannot be told quite quickly.

  • For problems affecting assignments or tests, see the lecturer, as soon as reasonably possible.

  • For illness during exams (or other problems that affect exam performance) students MUST contact the University within ONE WEEK of the last affected examination, to apply for an aegrotat pass (for illness) or compassionate pass (other problems).
    THE ONE WEEK LIMIT IS STRICTLY ENFORCED.

Refer to the "Exams affected by personal circumstances (aegrotat and compassionate consideration)" section of the University websit for further information. https://www.auckland.ac.nz/en/for/current-students/cs-academic-information/cs-examination-information/cs-aegrotat-and-compassionate-consideration.html

Top
Online presence

All lecture notes, assignment handouts, other documents, and lecture recordings for both COMPSCI 340 and SOFTENG 370 will be available on Canvas.

Your coursework grades for the assignments and the test will also be on Canvas.

There is a class Piazza page, accessible through Canvas.

Top
Academic Integrity

The University of Auckland will not tolerate cheating, or assisting others to cheat, and views cheating in coursework as a serious academic offence. The work that a student submits for grading must be the student's own work, reflecting his or her learning. Where work from other sources is used, it must be properly acknowledged and referenced. This requirement also applies to sources on the world-wide web. A student's assessed work may be reviewed against electronic source material using computerised detection mechanisms. Upon reasonable request, students may be required to provide an electronic version of their work for computerised review.

Please refer to http://www.auckland.ac.nz/uoa/home/about/teaching-learning/honesty.

Top
Harassment

Every member of the University has a right to dignity and respect. Please see the policy on harassment: https://www.auckland.ac.nz/en/for/current-students/cs-student-support-and-services/cs-personal-support/bullying-and-harassment.html

Top Top
Contacts
Top


Apply now!


Handbook

Postgraduate study options

Computer Science Blog



Please give us your feedback or ask us a question

This message is...


My feedback or question is...


My email address is...

(Only if you need a reply)

A to Z Directory | Site map | Accessibility | Copyright | Privacy | Disclaimer | Feedback on this page