Study-Unit Description

Study-Unit Description


CODE CSA2822

 
TITLE Operating Systems

 
UM LEVEL 02 - Years 2, 3 in Modular Undergraduate Course

 
MQF LEVEL Not Applicable

 
ECTS CREDITS 5

 
DEPARTMENT Computer Science

 
DESCRIPTION In this study-unit, issues involved in designing a general purpose multiprogrammed operating system are discussed, enabling students to understand and interact with the internals of an operating system. The unit covers topics such as the role of an operating system in providing a process abstraction, CPU scheduling, inter-process synchronisation and communication, memory management, virtual memory, file system facilities, I/O device handling, as well as adequate security and protection.

Study-unit Aims:

The aim of this unit is to discuss the issues involved in designing a general purpose multiprogrammed operating system, and to enable students to understand and interact with the internals of an operating system.

Learning Outcomes:

1. Knowledge & Understanding:

By the end of the study-unit the student will be able to:
- Understand the components and functions of an operating system,
- Understand abstractions provided by the operating system and the motivations behind them,
- Understand how computing resources are used by application software and managed by system software.

2. Skills:

By the end of the study-unit the student will be able to:
- Define the necessary components and functions of an operating system,
- Describe how operating systems have evolved over time from primitive batch systems to sophisticated multi-user systems,
- Compare and contrast the various ways of structuring an operating system,
- Describe how computing resources are used by application software and managed by system software,
- Describe the difference between processes and threads,
- Describe reasons for using interrupts, dispatching, and context switching to support concurrency in an operating system,
- Discuss the types of processor scheduling such as short-term, medium-term, long-term, and I/O,
- Summarize the range of mechanisms that can be employed at the operating system level to realize concurrent systems and describe the benefits and potential problems of each, as well as the various approaches to solving the problem of mutual exclusion in an operating system,
- Demonstrate understanding of classic concurrent programming problems,
- Explain memory hierarchy and cost-performance trade-offs,
- Explain the concept of virtual memory and how it is realized in hardware and software, including caching, paging, and segmentation,
- Describe the different ways of allocating memory to tasks, swapping and placement and replacement policies, citing the relative merits of each,
- Discuss the concept of thrashing, both in terms of the reasons it occurs and the techniques used to recognize and manage the problem,
- Discuss the principles of I/O hardware and its complexities.

Main Text/s and any supplementary readings:

Name: Operating System Concepts, 8th Edition.
Authors: A. Silberschatz, P. Galvin and G. Gagne.
Publisher: Wiley
ISBN-10: 0470128720
ISBN-13: 978-0470128725

 
STUDY-UNIT TYPE Lecture

 
METHOD OF ASSESSMENT
Assessment Component/s Sept. Asst Session Weighting
Examination (3 Hours) Yes 100%

 
LECTURER/S Joshua Ellul

 

 
The University makes every effort to ensure that the published Courses Plans, Programmes of Study and Study-Unit information are complete and up-to-date at the time of publication. The University reserves the right to make changes in case errors are detected after publication.
The availability of optional units may be subject to timetabling constraints.
Units not attracting a sufficient number of registrations may be withdrawn without notice.
It should be noted that all the information in the description above applies to study-units available during the academic year 2023/4. It may be subject to change in subsequent years.

https://www.um.edu.mt/course/studyunit