Module Details

Operating systems: operating systems 2

MF0370

Course
Operating systems: operating systems 2
Code
MF0370
Academic Year
2026/2027
Curriculum Year
2025/2026
Degree Programme
CHEMISTRY
Curriculum
000 - CORSO GENERICO
Course coordinator
Lecturers
Credits
6
Lecture Hours
48
Scientific Disciplinary Sector (SSD)
INF/01 - Computer Science
Course Type
Single-subject learning activity
Course Delivery
OBB - Obbligatoria
Year
2
Teaching period
Secondo Semestre
Campus
VERCELLI
Teaching language
Italian
Course Contents
The course examines advanced aspects of operating systems, with particular emphasis on virtualisation technologies, file systems, and input/output management.
Reference Texts
Tanenbaum, A. S., & Bos, H. (2023). Modern Operating Systems (5th ed.). Pearson. (Also available in Italian as I moderni sistemi operativi.)
Doherty, J. (2016). SDN and NFV Simplified. Pearson.
Silberschatz, A., Galvin, P. B., & Gagne, G. (2019). Sistemi operativi. Concetti ed esempi. Pearson. (Italian edition).
Jain, S. M. (2020). Linux Containers and Virtualization: A Kernel Perspective. Apress.
Learning Outcomes
This module develops an in-depth understanding of the design and implementation of file systems and input/output subsystems within modern operating systems. Students will examine the principal techniques used to manage and abstract hardware resources and secondary storage, and will evaluate the architectural choices underlying contemporary operating system design. The module further introduces virtualisation technologies as a natural extension of the resource abstraction and sharing mechanisms provided by the operating system.
Prerequisites
Students are expected to have successfully completed the following prerequisite courses: Architetture degli Elaboratori 1 e 2, Sistemi Operativi 1.
Teaching Methods
Teaching consists of classroom lectures covering the fundamental theoretical concepts, supported by illustrative examples. The topics addressed are further explored through practical demonstrations and exercises designed to provide a concrete understanding of the techniques and solutions presented during the lectures. Throughout the module, students are exposed to worked examples and discussion questions similar in style and content to those used in the assessments. Bibliographic references, lecture materials, exercises and sample examination papers are made available through the DIR online learning platform.
Additional Information
The assessment is designed to verify that students can demonstrate not only a sound understanding of the theoretical principles covered in the module, but also the ability to apply them to the analysis of practical scenarios. To this end, examination questions may require students to interpret the behaviour of the mechanisms studied, compare alternative technical solutions, and justify specific design choices. The overall aim is to assess an integrated understanding of the operating system as a coordinated set of mechanisms for the management and abstraction of hardware resources.
Students with disabilities, Specific Learning Difficulties (SpLDs), or other special educational needs may request dedicated support services and reasonable adjustments through the University's Student Support Services. Further information is available at the following address: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa. Following consultation with the relevant University support service, students are encouraged to contact the module leader to discuss any teaching- and assessment-related adjustments that may be required.
Assessment Methods
Assessment is based on a compulsory written examination and an optional oral examination. The written examination includes both theoretical and application-oriented questions designed to assess students’ understanding of the principles and technical solutions covered in the module, as well as their ability to apply this knowledge to the analysis of practical scenarios. Students who achieve a mark of at least 15/30 in the written examination are eligible to take the oral examination. Students obtaining a mark between 18/30 and 27/30 may choose not to take the oral examination and have the mark achieved in the written examination recorded as their final grade.
The oral examination provides an opportunity to assess a more advanced level of understanding of the topics covered in the module. In particular, it evaluates the ability to relate the different mechanisms studied, justify design choices, and place them within the broader context of operating system architecture.
The final mark, expressed on a 30-point scale, is determined on the basis of the accuracy and completeness of the answers provided, the ability to organise and communicate acquired knowledge effectively, the ability to apply theoretical concepts to practical situations and critically evaluate alternative solutions, and the appropriate use of specialist terminology.
No textbooks, lecture notes, or other teaching materials may be consulted during the examination. The results of the written examination will be communicated to students through the DIR online learning platform.
As the module is taught in Italian and most teaching materials are provided in Italian, Erasmus and other incoming international students may agree alternative assessment arrangements with the module leader, where appropriate, in order to accommodate their linguistic needs while ensuring that the intended learning outcomes are assessed fairly and consistently.
Detailed Syllabus
1) Input/Output Subsystems: classification of I/O devices, performance characteristics, hardware and software architecture of I/O systems, CPU–device interaction techniques, interrupt handling, Direct Memory Access (DMA), and device drivers.
2) Secondary Storage and Storage Systems: magnetic disks and solid-state drives (SSDs), physical and logical data organisation, storage performance, disk scheduling algorithms, RAID architectures, and reliability management techniques.
3) File Systems: file and directory concepts, linking mechanisms, data access methods, file allocation strategies, directory management, internal file system organisation, and file system operations.
4) Virtual File Systems (VFS): architecture and design, pathname traversal, caching and buffering mechanisms, and performance evaluation.
5) Special-Purpose and Distributed File Systems: FUSE, the Google File System (GFS), and the Hadoop Distributed File System (HDFS).
6) Hardware Resource Virtualisation: virtualisation requirements, hypervisors, and the virtualisation of CPU, memory, I/O devices, and networking resources.
7) Operating System-Level Virtualisation: containers, namespaces, cgroups, container runtimes, and container engines.
8) Cloud Computing: the relationship between cloud computing and virtualisation, cloud service models, and deployment models.
Expected Learning Outcomes
Knowledge and Understanding: students will develop a thorough understanding of the principles, techniques and architectural solutions employed by modern operating systems for managing file systems, secondary storage, input/output subsystems, and virtualised resources.
Application of Knowledge and Understanding: students will be able to apply the concepts and techniques covered in the module to practical problems and realistic scenarios, explaining the behaviour of operating system mechanisms and evaluating alternative implementation approaches.
Independent Judgement: students will be able to analyse and critically evaluate different design and implementation choices adopted in modern operating systems, assessing their strengths, limitations and suitability for particular requirements and operating environments.
Integrated Systems Perspective: students will develop a holistic view of a modern operating system, understanding how its major subsystems interact and how design decisions affect overall performance, reliability and resource utilisation.
Communication Skills: students will be able to discuss and explain operating system concepts using appropriate technical language, clearly describing the mechanisms and design principles underlying file systems, input/output subsystems and virtualisation technologies.
Learning Skills: students will acquire the skills required for the independent study of advanced topics in operating systems, virtualisation technologies and modern software infrastructures, enabling them to engage with technical documentation, research literature and emerging technologies beyond the scope of the module.
Last update:09-09-2026 00:14:31