Skip to Main Content (Press Enter)

Logo UNIBG
  • ×
  • Home
  • Degrees
  • Courses
  • People
  • Outputs
  • Organizations
  • Third Mission
  • Projects
  • Expertise & Skills

UNI-FIND
Logo UNIBG

|

UNI-FIND

unibg.it
  • ×
  • Home
  • Degrees
  • Courses
  • People
  • Outputs
  • Organizations
  • Third Mission
  • Projects
  • Expertise & Skills
  1. Courses

OPERATING SYSTEMS - 21061-MOD1

courses
ID:
21061-MOD1
Dettaglio:
SSD: Data Processing Systems Duration: 48 CFU: 6
Located in:
DALMINE
Url:
Course Details:
COMPUTER SCIENCE AND ENGINEERING - 21-270/PERCORSO COMUNE Year: 2
Approval Status:
Draft
Year:
2025
Course Catalogue:
https://unibg.coursecatalogue.cineca.it/af/2025?co...
  • Overview
  • Syllabus
  • Degrees
  • People
  • Other

Overview

Date/time interval

Secondo Semestre (23/02/2026 - 06/06/2026)

Syllabus

Course Objectives

At the end of this module, the student gains knowledge about fundamental design and implementation ideas in engineering software for operating systems. Through appropriate lectures and labs, the student will also acquire the basic knowledge of concurrent programming and multi-threading using the Java programming language.

Course Prerequisites

Preliminary concepts of object-oriented programming in Java. Ability to use code editors and compilers.


Teaching Methods

Learning takes place through lectures, practical exercises and tutoring.

Assessment Methods

The exam includes a written test. The written test includes 4 open-ended questions (3 exercises on the theoretical aspects of the course, and one exercise on the cuncurrent programming in Java). The written test lasts two hours. Only those who obtain a score higher than 18/30 are admitted to the oral test. The oral test consists in the discussion of the written test and related questions. The final mark of the overall integrated course is given by the average sum of the scores achieved in the two modules.


Contents

Theoretical principles, architecture styles, functionality and management policies of operating systems; basic introduction to concurrent programming with the Java language.


Main topics: process management (creation, synchronization, and communication); processor scheduling; deadlock prevention, avoidance, and recovery; main-memory management; virtual memory management (swapping, paging, segmentation and page-replacement algorithms); control of disks and other input/output devices; file-system structure and implementation; and multi-threading and synchronization aspects in the Java programming language. The last topic include the sub-tpics: multi-threading in the Java platform (Thread objects, defining and starting a thread, pausing and interrupting a thread, thread joins), thread interference and memory consistency errors, synchronization and mutual exclusion problem, liveness properties of a program (starvation, deadlock, livelock), typical concurrency problems (producer-consumer, readers-writer, the dining philosophers, the coke machine, etc.), synchronization mechanisms and their practical realization with the package library java.util.concurrent (semaphores, intrinsic object locks and synchronized methods/blocks, lock objects and condition variables), coordination idioms (guarded blocks, locking, atomic access). Each of these sub-topic is illustrated with practical code examples as solutions to typical concurrency problems and guided exercises in labs.


Online Resources

  • E-learning
  • Leganto - Reading lists

More information

In case of epidemiological emergencies, the teaching and exam methods could change according to the measures of the competent authorities.

Degrees

Degrees

COMPUTER SCIENCE AND ENGINEERING - 21-270 
Bachelor's Degree
3 years
No Results Found

People

People (2)

SCANDURRA Patrizia
AREA MIN. 09 - Ingegneria industriale e dell'informazione
Gruppo 09/IINF-05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Settore IINF-05/A - Sistemi di elaborazione delle informazioni
Componente del Presidio della Qualità
SCANDURRA Patrizia
AREA MIN. 09 - Ingegneria industriale e dell'informazione
Gruppo 09/IINF-05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Settore IINF-05/A - Sistemi di elaborazione delle informazioni
Professori Associati
No Results Found

Other

Main module

C.I. OPERATING SYSTEMS + DATABASES
  • Use of cookies

Powered by VIVO | Designed by Cineca | 26.4.5.0