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 |
|---|
Mathematical analysis
2° Year activated in the A.Y. 2026/2027
| Modules | Credits | TAF | SSD |
|---|
3° Year It will be activated in the A.Y. 2027/2028
| Modules | Credits | TAF | SSD |
|---|
One module to be chosen among the following| Modules | Credits | TAF | SSD |
|---|
Mathematical analysis
| Modules | Credits | TAF | SSD |
|---|
| Modules | Credits | TAF | SSD |
|---|
One module to be chosen among the following| Modules | Credits | TAF | SSD |
|---|
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 (2026/2027)
Teaching code
4S009887
Academic staff
Coordinator
Credits
6
Also offered in courses:
- Operating systems of the course Bachelor's degree in Human Centered Medical System Engineering
Language
Italian
Scientific Disciplinary Sector (SSD)
ING-INF/05 - INFORMATION PROCESSING SYSTEMS
Period
I semestre dal Oct 1, 2026 al Jan 29, 2027.
Courses Single
Authorized
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 best learn the topics covered in the course, it is necessary to have acquired knowledge and skills relating to:
- Computer architecture
- C programming
Program
Theory
---------
* Introduction: Structure and functions of an operating system.
* Process management: Memory image and process states. Context switching. Operations on processes. Cooperation and communication between processes.
* Scheduling: Long-term, medium-term 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. Techniques for prevention, detection and recovery.
* Main memory management: Logical and physical addressing, and address binding. Memory allocation techniques. Virtual memory management.
* Secondary memory management: Storage devices. File system.
Lab:
------------
* System calls for process and thread management
* System calls for inter-process communication
* System calls for inter-process synchronization
* System calls for memory sharing between processes
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: a theory test and a laboratory test. There are no midterm tests. The exam is the same for both attending and non-attending students.
Theory
---------
The theory exam consists of a two-hour written test, typically containing four questions, including two open questions and two exercises.
Laboratory
-------------------
The laboratory exam consists of solving programming exercises on the computer according to the specifications provided by the instructor. The student will be required to discuss and comment on the design choices made during a subsequent oral examination.
Evaluation criteria
To pass the exam, students must demonstrate that they:
- understand the principles underlying the functioning of an operating system
- be able to present their arguments in a precise and organic way without digressions
- know how to apply the knowledge acquired to solve application problems presented in the form of exercises, questions and projects.
Criteria for the composition of the final grade
Each test is worth a maximum of 33 points.
The final grade is calculated using the following formula: Theory Grade * 0.5 + Lab Grade * 0.5.
Honors will be awarded to those who achieve a final score higher than 30.
Exam language
Italiano
