Module Details

Module Code: SOFT7006
Title: Operating Systems
Long Title: Operating Systems
NFQ Level: Intermediate
Valid From: Semester 1 - 2017/18 ( September 2017 )
Duration: 1 Semester
Credits: 5
Field of Study: 4814 - Computer Software
Module Delivered in: 9 programme(s)
Module Description: Operating system software has had to solve a number of fundamental problems in order to provide fair and efficient services to the applications that run on a computer system. This module examines the detail of and solutions to those problems as implemented in modern operating systems.
 
Learning Outcomes
On successful completion of this module the learner will be able to:
# Learning Outcome Description
LO1 Explain the solutions used in the scheduling of processes.
LO2 Discuss problems and solutions in virtual memory management schemes.
LO3 Outline the structure and management of a variety of file system types and input/output mechanisms.
LO4 Compare and contrast the solutions to process concurrency issues.
LO5 Use programs to emulate and investigate algorithms and methods used in solutions to operating systems problems.
Dependencies
Module Recommendations

This is prior learning (or a practical skill) that is strongly recommended before enrolment in this module. You may enrol in this module if you have not acquired the recommended learning but you will have considerable difficulty in passing (i.e. achieving the learning outcomes of) the module. While the prior learning is expressed as named MTU module(s) it also allows for learning (in another module or modules) which is equivalent to the learning specified in the named module(s).

12705 COMP6042 Operating Systems in Practice
12785 SOFT7006 Operating Systems
Incompatible Modules
These are modules which have learning outcomes that are too similar to the learning outcomes of this module. You may not earn additional credit for the same learning and therefore you may not enrol in this module if you have successfully completed any modules in the incompatible list.
12785 SOFT7006 Operating Systems
Co-requisite Modules
No Co-requisite modules listed
Requirements

This is prior learning (or a practical skill) that is mandatory before enrolment in this module is allowed. You may not enrol on this module if you have not acquired the learning specified in this section.

No requirements listed
 
Indicative Content
Process Management
CPU Scheduling algorithms; Threads, multi-threading.
Memory Management
Review of Paging scheme (storage efficiency, address mapping); Virtual memory (paged). Issues in virtual memory (page fault handling, resident set management, page replacement).
Concurrency
Mutual exclusion: (semaphores). Mutual exclusion and synchronisation, producer/consumer problem, readers/writers problem.
File Systems
I/O devices, organisation of I/O function, file directories, Disk structure, Disk Scheduling algorithms, Linux inodes, security and Linux permissions, free space management, space allocation methods. Description of FAT and NTFS file systems and RAID.
Laboratory Work
Use of programming language library functions to investigate system service implementations (e.g. As available for Python - https://docs.python.org/2/library/index.html). Use of short programs to emulate and investigate algorithms and methods discussed. For example: CPU scheduling algorithms, Paging address mapping, Page replacement, Producer/consumer problem, Readers/writers problem, Disk Scheduling, Disk space allocation.
Module Content & Assessment
Assessment Breakdown%
Coursework50.00%
End of Module Formal Examination50.00%

Assessments

Coursework
Assessment Type Short Answer Questions % of Total Mark 20
Timing Week 6 Learning Outcomes 1,2
Assessment Description
The purpose of the assessment is to evaluate the theoretical content that is delivered in class.
Assessment Type Project % of Total Mark 30
Timing Week 10 Learning Outcomes 5
Assessment Description
An assignment to investigate OS services & algorithms. This will involve the use of short programs to emulate and investigate algorithms and methods discussed. For example: CPU scheduling algorithms, Paging address mapping, Page replacement, Producer/consumer problem, Readers/writers problem, Disk Scheduling, Disk space allocation.
End of Module Formal Examination
Assessment Type Formal Exam % of Total Mark 50
Timing End-of-Semester Learning Outcomes 1,2,3,4
Assessment Description
End-of-Semester Final Examination
Reassessment Requirement
Repeat examination
Reassessment of this module will consist of a repeat examination. It is possible that there will also be a requirement to be reassessed in a coursework element.

The University reserves the right to alter the nature and timings of assessment

 

Module Workload

Workload: Full Time
Workload Type Contact Type Workload Description Frequency Average Weekly Learner Workload Hours
Lecture Contact Presentation of theory. Every Week 2.00 2
Lab Contact Investigation of lecture material. Every Week 2.00 2
Independent & Directed Learning (Non-contact) Non Contact Independent & directed learning. Every Week 3.00 3
Total Hours 7.00
Total Weekly Learner Workload 7.00
Total Weekly Contact Hours 4.00
Workload: Part Time
Workload Type Contact Type Workload Description Frequency Average Weekly Learner Workload Hours
Lecture Contact Presentation of theory. Every Week 2.00 2
Lab Contact Investigation of lecture material. Every Week 2.00 2
Independent & Directed Learning (Non-contact) Non Contact Independent & directed learning. Every Week 3.00 3
Total Hours 7.00
Total Weekly Learner Workload 7.00
Total Weekly Contact Hours 4.00
 
Module Resources
Recommended Book Resources
  • William Stallings. (2014), Operating Systems: Internals and Design Principles, 8th. Pearson, [ISBN: 9781292061351].
Supplementary Book Resources
  • Abraham Silberschatz, Peter Baer Galvin, Greg Gagne. (2013), Operating system concepts, 9th. Wiley, [ISBN: 9781118093757].
  • A.S. Tanenbaum. (2014), Modern Operating Systems: International Version, 4th. Pearson Education, [ISBN: 9781292061429].
This module does not have any article/paper resources
Other Resources
 
Module Delivered in
Programme Code Programme Semester Delivery
CR_KSDEV_8 Bachelor of Science (Honours) in Software Development 3 Mandatory
CR_KDNET_8 Bachelor of Science (Honours) in Computer Systems 3 Mandatory
CR_KITMN_8 Bachelor of Science (Honours) in IT Management 3 Mandatory
CR_KWEBD_8 Bachelor of Science (Honours) in Web Development 5 Mandatory
CR_KITSP_7 Bachelor of Science in Information Technology 3 Mandatory
CR_KCOMP_7 Bachelor of Science in Software Development 3 Elective
CR_KCOME_6 Higher Certificate in Science in Software Development 3 Elective
CR_KCMSD_8 Higher Diploma in Science in Cloud & Mobile Software Development 1 Mandatory
CR_KCLCO_8 Higher Diploma in Science in Cloud Computing 1 Mandatory