Skip to main content
CODE 98516
ACADEMIC YEAR 2022/2023
CREDITS
SCIENTIFIC DISCIPLINARY SECTOR ING-INF/05
LANGUAGE Italian
TEACHING LOCATION
  • GENOVA
SEMESTER Annual
TEACHING MATERIALS AULAWEB

OVERVIEW

The course provides an introduction to the structure and organization on modern operating systems and to databases.

AIMS AND CONTENT

LEARNING OUTCOMES

Students will be able to identify and describe the main functionalities of modern operating systems and an introduction to database design and management.

In particular, for databases, students will be able to use SQL for querying and managing data. 

TEACHING METHODS

The course is divided in two parts: databases in the first semester and operating systems in the second one.

Lectures will be complemented with hands-on sessions

SYLLABUS/CONTENT

Databases
1. Objective of a DBMS
2. Information Modeling: what to model and how
3. The Object Data Model and the Relational Data Model
4. SQL: A Relational Database Language for data definition and query
5. DBMS in action: SQLite

Operating systems
1. Introduction to the structure of operating systems.
2. Processes and Threads
3. Inter-process communications (signal, pipe, socket, shared memory, ...). Mutual exclusion and synchronization. Dekker's algorithm,  Peterson's  Algorithm. Hardware support to mutual exlcusion. The Producer-Consumer Problem. Sempahors. Monitors. Message Passing. The Readers-Writers Problem.
4. Deadlock and Starvation. Dealing with deadlocks: Detection, Prevention and Avoidance. Resourse Allocation Graphs. The Dining Philosophers' Problem.
5. Memory Management. Physical Memory vs Virtual Memory. Paging vs Segmentation.
6. Uniprocessor Scheduling. Lont-term. medium-term and short-term scheduling: FCFC, Round Robin, SPN, SRT, HRRN, Feedback.
7. I/O Management. DMA, Disk Scheduling.
8. The file system. Structure and attributes of files and directories.
9. Access Control.  Models, policies and mechanisms for access control. Access control in in Linux (ACL in Unix, setuid)

RECOMMENDED READING/BIBLIOGRAPHY

Databases
A. Albano, G. Ghelli, R. Orsini. Database essentials. http://fondamentidibasididati.it

Operating systems
Operating Systems: Internals and Design Principles. 8th edition di W. Stallings, Pearson

TEACHERS AND EXAM BOARD

Exam Board

ALESSANDRO ARMANDO (President)

ALESSIO MERLO

DANIELE D'AGOSTINO (President Substitute)

LESSONS

Class schedule

The timetable for this course is available here: Portale EasyAcademy

EXAMS

EXAM DESCRIPTION

The exam is divided in two parts.

Databases: Project discussion or oral exam.

Operating systems: Written exam

Exam schedule

Data appello Orario Luogo Degree type Note
07/06/2023 10:00 GENOVA Esame su appuntamento
07/06/2023 10:00 GENOVA Scritto + Orale
21/06/2023 10:00 GENOVA Scritto + Orale
21/06/2023 10:00 GENOVA Esame su appuntamento
07/07/2023 10:00 GENOVA Scritto + Orale
07/07/2023 10:00 GENOVA Esame su appuntamento
08/09/2023 10:00 GENOVA Esame su appuntamento
08/09/2023 10:00 GENOVA Scritto + Orale