- Docente: Renzo Davoli
- Credits: 12
- SSD: INF/01
- Language: Italian
- Moduli: Renzo Davoli (Modulo 1) Ozalp Babaoglu (Modulo 2)
- Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
- Campus: Bologna
- Corso: First cycle degree programme (L) in Computer Science (cod. 8009)
-
from Oct 03, 2024 to May 16, 2025
Learning outcomes
The objective of the course is to illustrate the structure and the methods to build modern multitaking operating systems. This course also explains how to install, program and administer an operating system.
Course contents
- Operating Systems: definition and history
- Concurrent Programming
- Structure of an O.S.
- Scheduling
- Resource Management
- Main Memory Management
- Secondary Memory Management
- File Systems
- Security of Operating Systems
- the C language
- Programming Tools
- Shell scripting
- The Python Language
Readings/Bibliography
Suggested books (these books are quite equivalent)
- Silbershatz, Galvin, Gagne. Applied Operating System Concepts. Addison Wesley (any edition)
- Gary Nutt. Operating Systems - A modern Perspective. Addison Wesley
- Tanenbaum, Woodhill. Operating System Design and Implementation. Prentice Hall
- William Stallings. Operating Systems. Prentice Hall
- Michael Goldweber, Renzo Davoli µMPS3 Principles of Operation.
- Michael Goldweber, Renzo Davoli Student Guide to the Pandos Operating System.
- Richard Stevens. Advanced Programming in UNIX. Addison-Wesley
- Eric Steven Raymond. The Art of Unix Programming. Addison-Wesley
- G. Andrews. Concurrent Programming. Benjamin/Cummings, 1991.
Teaching methods
- Lectures
- Theoretical Recitations
- Recitations on Programming, system call usage, scripting.
- Laboratory Project
- Discussions on the project
the attendance to this class will require the preliminary participation
of all the students to the Modules 1 and 2 of the Safety rules on study
places, which can be followed remotely in e-learning via the following
link: [https://elearning-sicurezza.unibo.it/ ]
Assessment methods
- written test
- Laboratory project
- programming tests in the laboratory
Teaching tools
Video projector, blackboard, Internet.
This course is proprietary software free, i.e. we'll use libre (FLOSS) software only. Students can deepen their understanding at any level and they are free to use the knowledge acquired in this course.
Links to further information
http://www.cs.unibo.it/~renzo/so/
Office hours
See the website of Renzo Davoli
See the website of Ozalp Babaoglu
SDGs



This teaching activity contributes to the achievement of the Sustainable Development Goals of the UN 2030 Agenda.