production
Skip to Content

CS3026: OPERATING SYSTEMS (2023-2024)

Last modified: 23 Jul 2024 10:43


Course Overview

This course discusses core concepts and architectures of operating systems, in particular the management of processes, memory and storage structures. Students will learn about the scheduling and operation of processes and threads, problems of concurrency and means to avoid race conditions and deadlock situations. The course will discuss virtual memory management, file systems and issues of security and recovery. In weekly practical session, students will gain a deeper understanding of operating system concepts with various programming exercises.






Course Details

Study Type Undergraduate Level 3
Term First Term Credit Points 15 credits (7.5 ECTS credits)
Campus Aberdeen Sustained Study No
Co-ordinators
  • Dr Raja Akram
  • Dr Kamaran Fathulla

Qualification Prerequisites

  • Either Programme Level 3 or Programme Level 4

What courses & programmes must have been taken before this course?

What other courses must be taken with this course?

None.

What courses cannot be taken with this course?

None.

Are there a limited number of places available?

No

Course Description

Comparative and historical studies of operating systems.

  • OS structure and services: system calls, system programs, virtualisation.
  • Processes and threads: scheduling, operation, co-operation and communication. Synchronisation, semaphores and deadlock handling.
  • Memory management: logical and physical address spaces, swapping, segmentation and paging. File systems, directory structure, and storage allocation. Protection and security. Comparing and contrasting examples and case studies from a variety of operating systems.
  • File systems, directory structure, and storage allocation. Protection and security.
  • Comparing and contrasting examples and case studies from a variety of operating systems.

Contact Teaching Time

Information on contact teaching time is available from the course guide.

Teaching Breakdown

More Information about Week Numbers


Details, including assessments, may be subject to change until 30 August 2024 for 1st term courses and 20 December 2024 for 2nd term courses.

Summative Assessments

Computer Programming Exercise

Assessment Type Summative Weighting 25
Assessment Weeks Feedback Weeks

Look up Week Numbers

Feedback
Learning Outcomes
Knowledge LevelThinking SkillOutcome
ConceptualAnalyseUnderstanding & ability to analyse: process & thread management methods; scheduling algorithms; concurrency & resource competition; virtual memory management; file system & I/O management
ConceptualEvaluateAbility to recognize & apply OS features in design & implementation of applications (e.g., thread programming, process comms, managing concurrency via semaphores & monitors), & to assess communicate
FactualUnderstandKnowledge and understanding of core principles and concepts of modern operating systems in terms of architecture and abstractions such as processes, memory management, and storage management

Theory and Programming Assessments

Assessment Type Summative Weighting 25
Assessment Weeks Feedback Weeks

Look up Week Numbers

Feedback
Learning Outcomes
Knowledge LevelThinking SkillOutcome
ConceptualAnalyseUnderstanding & ability to analyse: process & thread management methods; scheduling algorithms; concurrency & resource competition; virtual memory management; file system & I/O management
ConceptualEvaluateAbility to recognize & apply OS features in design & implementation of applications (e.g., thread programming, process comms, managing concurrency via semaphores & monitors), & to assess communicate
FactualUnderstandKnowledge and understanding of core principles and concepts of modern operating systems in terms of architecture and abstractions such as processes, memory management, and storage management

Exam

Assessment Type Summative Weighting 50
Assessment Weeks Feedback Weeks

Look up Week Numbers

Feedback
Learning Outcomes
Knowledge LevelThinking SkillOutcome
ConceptualAnalyseUnderstanding & ability to analyse: process & thread management methods; scheduling algorithms; concurrency & resource competition; virtual memory management; file system & I/O management
ConceptualEvaluateAbility to recognize & apply OS features in design & implementation of applications (e.g., thread programming, process comms, managing concurrency via semaphores & monitors), & to assess communicate
FactualUnderstandKnowledge and understanding of core principles and concepts of modern operating systems in terms of architecture and abstractions such as processes, memory management, and storage management

Formative Assessment

There are no assessments for this course.

Resit Assessments

Exam

Assessment Type Summative Weighting 100
Assessment Weeks Feedback Weeks

Look up Week Numbers

Feedback
Learning Outcomes
Knowledge LevelThinking SkillOutcome
Sorry, we don't have this information available just now. Please check the course guide on MyAberdeen or with the Course Coordinator

Course Learning Outcomes

Knowledge LevelThinking SkillOutcome
ConceptualEvaluateAbility to recognize & apply OS features in design & implementation of applications (e.g., thread programming, process comms, managing concurrency via semaphores & monitors), & to assess communicate
ConceptualAnalyseUnderstanding & ability to analyse: process & thread management methods; scheduling algorithms; concurrency & resource competition; virtual memory management; file system & I/O management
FactualUnderstandKnowledge and understanding of core principles and concepts of modern operating systems in terms of architecture and abstractions such as processes, memory management, and storage management

Compatibility Mode

We have detected that you are have compatibility mode enabled or are using an old version of Internet Explorer. You either need to switch off compatibility mode for this site or upgrade your browser.