Studying at the University of Verona
Here you can find information on the organisational aspects of the Programme, lecture timetables, learning activities and useful contact details for your time at the University, from enrolment to graduation.
Study Plan
The Study Plan includes all modules, teaching and learning activities that each student will need to undertake during their time at the University.
Please select your Study Plan based on your enrollment year.
1° Year
Modules | Credits | TAF | SSD |
---|
2° Year activated in the A.Y. 2023/2024
Modules | Credits | TAF | SSD |
---|
3° Year activated in the A.Y. 2024/2025
Modules | Credits | TAF | SSD |
---|
1 module among the following
Modules | Credits | TAF | SSD |
---|
Modules | Credits | TAF | SSD |
---|
Modules | Credits | TAF | SSD |
---|
1 module among the following
Modules | Credits | TAF | SSD |
---|
Altre attività formative: lo studente può scegliere tra le 2 seguenti opzioni:
a) 2 CFU di seminari - di cui 1 CFU al 1 anno e 1 CFU al 2 anno - e 7 CFU di tirocinio al 3 anno;
b) 9 CFU di tirocinio al 3 anno. Non sono previste ulteriori opzioni.
Legend | Type of training activity (TTA)
TAF (Type of Educational Activity) All courses and activities are classified into different types of educational activities, indicated by a letter.
Operating systems (2024/2025)
Teaching code
4S009887
Credits
6
Language
Italian
Scientific Disciplinary Sector (SSD)
ING-INF/05 - INFORMATION PROCESSING SYSTEMS
Courses Single
Authorized
The teaching is organized as follows:
Teoria
Laboratorio
Learning objectives
The course aims to introduce the principles of operating systems, regarding the software architecture of an operating system, the management and synchronization of processes and the management of the computing system resources. At the end of the course, students must demonstrate that they have:
- Knowledge and understanding related to the internal organization, functioning and services of an operating system. In particular, they will have understood: the main functions of an operating system in relation to users and application programs, the strategies used by the operating system to manage the resources of a computer, and the techniques used to implement the components of an operating system.
- Ability to apply the acquired knowledge to: develop applications with awareness of how the operating system manages processes, develop applications that use the primitives made available by the operating system, and develop and modify components of an operating system.
- Ability to autonomously evaluate the advantages and disadvantages of different design choices in the context of the services offered by an operating system.
- Ability to carry out a group laboratory project and to present the relative results, motivating the choices with appropriate language.
- Ability to develop the skills necessary to continue studying operating systems, addressing advanced issues related to distributed, real-time and embedded systems.
Prerequisites and basic notions
In order to better learn the topics covered in the course it is necessary to have acquired knowledge and skills related to:
- Computer architecture
- C programming
Program
Theory
---------
* Introduction: Structure and functions of an operating system.
* Process Management: in memory image and state of a process. Context switch. Process operations. Cooperation and communication between processes.
* Scheduling: Long, medium and short term scheduling. CPU scheduling with and without preemption.
* Synchronization between processes: Data consistency. Critical sections. Synchronization schemes and constructs.
* Deadlock: Conditions for triggering a deadlock. Prevention, detection and recovery techniques.
* Main memory management: Logical and physical addressing, and address binding. Memory allocation techniques. Virtual memory management.
* Secondary storage management: Storage devices. File system.
Lab:
------------
* System call for process and thread management
* System call for interprocess communication
* System calls for process synchronization
* System calls for shared memory
Bibliography
Didactic methods
The theory will be organized in lectures, exercises and self-assessment activities. The laboratory will be structured in practical exercises on the computer.
Learning assessment procedures
The exam consists of two tests, one in theory and one in the laboratory
Theory
---------
The exam of the theory part consists of a written test, containing multiple choice questions, open-ended questions and exercises.
Lab
-----------------
The examination of the laboratory part consists in developing and delivering a laboratory project according to the specifications provided by the teacher. The project will then be discussed in an oral exam.
Evaluation criteria
To pass the exam, the student must show
- they have understood the principles related to how an operating system works
- they are able to describe the concepts in a clear and exhaustive way without digressions
- they are able to apply the acquired knowledge to solve application scenarios described by means of exercises, questions and projects.
Criteria for the composition of the final grade
The final grade is obtained from the following formula: grade_theory*0.5 + grade_laboratory*0.5.
Exam language
Italiano