Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

SCOB031

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 6

Faculty of Science and Agriculture

School of Mathematical and Computational


Sciences

Department of Computer Science

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

Module Facilitator Mapunya SS


Office 1022 Mathematical and Computational Sciences Building
Email sekgoari.mapunya@ul.ac. za Telephone +27152682797

Consultation Tuesday : 12:50-14:30 Lecture Tuesdays 11H10–12H50 hrs


Friday: 12:50-13:30 Periods (L)
Fridays 11H10–12H50 hrs
(L)
Important Quiz 01 Semester First Semester Module
Dates Test 01
Quiz 02
Test 02
Structure of Two contact Lecture periods per week and
the Module One Tutorial per week

Assessments
Formative Summative

Quizzes Semester Project 20%


Tests Quizzes 10%
Research Tests 20%
Assignments Assignments 10%
Examination 40%

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:

 Describe and design the implementation of OS


 Explain the functions of threads and implement programs which make use of
threads
 Distinguish between threads and processes and draw illustrative diagrams
 Explain the process of locks, semaphores, and monitors in synchronizing
multithreaded systems. Furthermore, learners are expected to implement
these multithreaded programs
 Demonstrate how processes and threads are scheduled at a user level
 Describe a deadlock situation in OS and explain in detail how these
deadlocks can be either avoided or managed.
 Describe the concept of virtual memory and demonstrate how it is
implemented diagrammatically
 Describe and implement memory management techniques
 Describe and implement concurrent systems and demonstrate how these
processes are synchronized to avoid deadlock situations
 Explain files systems and security techniques employed in OS
 Implement and examine queuing theory and other performance
evaluation techniques
 Discuss and outline the envisioned features and function of the next generation
Of
future OS techniques of the following platforms and computing paradigms:
LINUX, UNIX, Windows, Macintosh, Distributed Real time systems,
embedded systems, PDA, Mobile systems, etc
 Demonstrate the functionality of any of the advanced
techniques, approaches or systems

CRITICAL CROSS FIELD OUTCOMES:


Upon the completion of this module, a learner would have attained the following life
skills:

 Analytical and problem solving skills.


 Managerial and good design techniques
 Team building leadership skills
 An inquisitive and research inclined mind
 Good, effective communication and presentation skills
 Ability to solve cross cutting challenges
 Time and life management skills
 Being ethical, accountable and social responsive

Reference Material

Prescribed Material

1. Operating Systems: Internals and Design Principles: International Edition,


7/E, William Stallings, ISBN-10: 0273751506 • ISBN-13: 9780273751502,
©2011
• Pearson Higher Education • Paper Bound with Access Card, 816
pp, Published 19 May 2011
2. Modern Operating Systems: Pearson New International Edition, 3/E,
Andrew S. Tanenbaum, rije University, Amsterdam, The
Netherlands,
ISBN-10: 1292025778 • ISBN-13: 9781292025773, ©2013 • Pearson • Paper,
1056 pp, Published 23 Jul 2013
3. Operating Systems: Internals and Design Principles, 8/E, William Stallings,
ISBN-10: 0133805913 • ISBN-13: 9780133805918, ©2015 • Prentice Hall •
Cloth, 840 pp
4. Modern Operating Systems, 4/E, Andrew S. Tanenbaum, Vrije University,
Amsterdam, The Netherlands, Herbert Bos, ISBN-10: 013359162X • ISBN-13:
9780133591620, ©2015 • Prentice Hall • Paper, 1104 pp

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

Regulations and guidelines


 Lectures and tutorials are mandatory. Some formative assessments may
not be announced
 Learners are encouraged to be punctual and not to walk out during the
course of the lecture
 Cell phones should be either on silent or vibrate mode and any calls can be
answered outside the lecture hall. A learner is encouraged to walk quietly and
answer his or her phone outside.
 Use of Facebook, twitter, whatsapp and all other social media is prohibited
during lecture, tutorial and consultation sessions

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

Lecture 1 Overview and


Lecture 2 introduction OS
Structure
Section Two: Process and Process
Management
Lecture 3
Lecture 4 Processes
Lecture 5 Threads
Lecture 6 CPU Scheduling
Lecture 7 Process synchronization
Dead locks
Section Three: Memory Management Concepts

Lecture 8 Main Memory

Lecture 9 Virtual Memory


Section Four: File Systems Management

Lecture 10 File System Interface


Lecture 11 File Systems
Lecture 12 Implementation Mass
Lecture 13 storage structure
I/O systems

WARNING AGAINST PLAGIARISM

ASSIGNMENTS ARE INDIVIDUAL TASKS AND NOT GROUP ACTIVITIES.


(UNLESS EXPLICITLY INDICATED AS GROUP ACTIVITIES)

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!

You might also like