SCOB031
SCOB031
SCOB031
Module
Outline
(SCOB031)
2024
Module
Outline
Module Title Operating Systems
Module Code SCOB031 Credits 16
Exit Level 7 Notional Hours 160
Pre-requisites All level I and II modules Co-requisites Nil
Department Computer Science School SMCS
Assessments
Formative Summative
Module
Description
The theory and concepts related to operating system design are presented from both
the developer and user perspective. Core concepts covered include process
management, memory management, file systems, Input/Output system management
including device drivers, distributed systems, and multi-user concepts which includes
protection, isolation and security. Process management focuses on threads,
scheduling, and synchronization. Memory management include paging, segmentation,
and virtual memory. Various versions and similar or related techniques will also be
discussed.
Learners will examine how these concepts are implemented in several current open-
source operating systems such as Linux and UNIX. Learners can also explore
proprietary operating systems such as the Windows platform. Learners will complete
several assignments that require the design and the implementation of operating
system programs and processes
using high-level programming languages.
Module
Objectives
Functions of the Operating Systems (OS)
An overview of a computer system is discussed. An illustrative diagram will be used to
show where the OS is housed in a computer system and its significance will be
depicted and explained. The roles and functions of the OS will be discussed in
general terms and different OS will be presented.
Process
The concept of a process is fundamental for an OS; as such the states of a process
and process scheduling techniques will be discussed in detail. These two processes
are fundamental and do affect resource allocation at different levels in a computer
system. Furthermore, the module will explore lightweight processes commonly known
as the treads. The module will also demonstrate how these reduce context switching
time.
Memory Management
A very fundamental aspect of every OS is memory management. Memory is a limited
resource hence the need to manage it through the adoption of effective and efficient
memory management techniques. The module will therefore, discuss memory
management strategies in the context of the behaviour of programs and the properties
of hardware.
File Systems
The design of file systems is affected by the physical constraints of disks. Various
models and approaches that have been either implemented or proposed will be
discussed.
Distributed Systems
The idea of distributed systems brings about a host of challenges. It presents OS
designers with a complex set of challenges which affect all the challenges discussed
above. For example, designers have to optimize the design of distributed systems
through the use of efficient and effective distributed memory management techniques,
distributed file systems, and management distributed processes in a distributed
manner.
Learning Outcomes
Upon the completion of the module, learners will be able to:
Reference Material
Prescribed Material
Supplementary Material
1. Operating Systems, 3/E, Harvey M. Deitel, Deitel & Associates, Inc. Paul J.
Deitel, Deitel & Associates, Inc. David R. Choffnes, Deitel & Associates,
Inc. ISBN-10: 0131828274 • ISBN-13: 9780131828278, ©2004 • Prentice
Hall
• Paper, 1272 pp, Published 26 Feb 2004
2. Operating Systems Design and Implementation: International Edition, 3/E,
Andrew S Tanenbaum, Albert S Woodhull, ISBN-10: 0135053765 • ISBN-13:
9780135053768, ©2006 • Pearson • Paper, 1080 pp, Published 29 Sep 2008
Student Feedback
i. Tests and quizzes will be marked and returned within two weeks
ii. All poorly done assessments will be revised in class
iii. Semester marks will be posted on blackboard
iv. Final marks will be published in accordance to the university policy
The module will be taught through lectures, tutorials, assignments and projects.
Lectures will generally introduce the theoretical concepts
Tutorials will give learners an opportunity to interact with their peers and
with a tutor who has a sound knowledge of the subject
Practicals will help learners to consolidate the theory and provide them with
hands on experience
Private study is encouraged. Learners should revise material presented in
lectures, read prescribed and supplementary textbooks, and also gain
practice at solving practical problems
The semester project will help the learners to research and solve real
world problems. The project will give learners opportunities to interact
and self-assess themselves. It will also motivate and build their
confidence.
Tentative Schedule of
Lectures
Lecture Week Topic/Activity
Section One: Overview and Introduction to OS
Copying of text from other learners or from other sources (for instance the study
guide, prescribed material or directly from the internet) is not allowed – only brief
quotations are allowed and then only if indicated as such.
You should reformulate existing text and use your own words to explain what you
have read. It is not acceptable to retype existing text and just acknowledge the source
in a footnote – you should be able to relate the idea or concept, without repeating the
original author to the letter.
The aim of the assignments is not the reproduction of existing material, but to
ascertain whether you have the ability to integrate existing texts, add your own
interpretation and/or critique of the texts and offer a creative solution to existing
problems.
Be warned: students who submit copied text will obtain a mark of zero for the
assignment and disciplinary steps may be taken by the Faculty and/or
University. It is also unacceptable to do somebody else’s work, to lend your
work to them or to make your work available to them to copy – be careful and
do not make your work available to anyone!