Computer Architecture and Operating Systems

University of Otago

Course Description

  • Course Name

    Computer Architecture and Operating Systems

  • Host University

    University of Otago

  • Location

    Dunedin, New Zealand

  • Area of Study

    Computer Programming, Computer Science

  • Language Level

    Taught In English

  • Prerequisites

    COMP 160 or COMP 103

  • Course Level Recommendations


    ISA offers course level recommendations in an effort to facilitate the determination of course levels by credential evaluators.We advice each institution to have their own credentials evaluator make the final decision regrading course levels.

    Hours & Credits

  • Credit Points

  • Recommended U.S. Semester Credits
    3 - 4
  • Recommended U.S. Quarter Units
    4 - 6
  • Overview

    Digital logic and circuits, micro-programming, and assembler language concepts, characteristics of operating systems, file systems, and resource allocation; Unix and its variants.

    The first part of this paper will cover the basics of computer architecture, including data representation, digital logic and devices, combinational and sequential circuits, structure of a computer, memory systems, data input and output, microprogramming and assembly language concepts. The second part will cover the concepts and fundamental principles of operating systems, including processes, interprocess communication, process scheduling, memory management, virtual memory, file systems, I/O management and resource allocation. These concepts will be illustrated with examples from the Linux operating system.

    Teaching Arrangements
    There are two 1-hour lectures and two 2-hour tutorials per week.

    Course Structure
    The first half of this paper covers Computer Architecture; the second half covers Operating Systems. The main topics taught in lectures include:
    - Data Representation
    - Logic and Combinatorial Logic
    - Sequential Logic
    -Computer Architecture
    - Instruction Sets and Addressing Modes
    - Assembly Language Techniques
    - Memory and Storage Systems
    - Input and Output
    - Control Unit and Microprogramming
    - Operating System Structure
    - Processes and Threads
    - Process Scheduling
    - Process Synchronisation
    - Deadlocks
    - Memory Management
    - Virtual Memory
    - File Systems
    - I/O Management
    - Resource Allocation

    The main topics covered in tutorials reflect those of the lectures.

    - Tutorial Quizzes and Class Interaction 10%
    - Two Practical Tests 10% each
    - Final Exam 70%

    Learning Outcomes
    This paper will enable students to:
    - Understand how a computer system is organised
    - Understand data representation and computing logic
    - Be familiar with computer architectures and instruction sets
    - Understand how an operating system is structured and works
    - Understand fundamental concepts and principles of operating systems
    - Be familiar with basic OS algorithms like process scheduling algorithms and resource allocation algorithms

    Stallings, W., Computer Organization and Architecture (8th Edition), Prentice Hall, 2009. (recommended)
    Silberschatz, A. et al, Operating System Concepts with Java (8th Edition), Wiley, 2011. (essential)

Course Disclaimer

Courses and course hours of instruction are subject to change.

Eligibility for courses may be subject to a placement exam and/or pre-requisites.

Some courses may require additional fees.

Credits earned vary according to the policies of the students' home institutions. According to ISA policy and possible visa requirements, students must maintain full-time enrollment status, as determined by their home institutions, for the duration of the program.

Please reference fall and spring course lists as not all courses are taught during both semesters.

Availability of courses is based on enrollment numbers. All students should seek pre-approval for alternate courses in the event of last minute class cancellations

Please note that some courses with locals have recommended prerequisite courses. It is the student's responsibility to consult any recommended prerequisites prior to enrolling in their course.