08574 - Operating Systems

Academic Year 2023/2024

  • Docente: Renzo Davoli
  • Credits: 12
  • SSD: INF/01
  • Language: Italian
  • Teaching Mode: Traditional lectures
  • Campus: Bologna
  • Corso: First cycle degree programme (L) in Computer Science (cod. 8009)

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


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
For the laboratory assignments:
  • 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
Further readings:
  • G. Andrews. Concurrent Programming. Benjamin/Cummings, 1991.
On-line documents

Teaching methods

  • Lectures
  • Theoretical Recitations
  • Recitations on Programming, system call usage, scripting.
  • Laboratory Project
  • Discussions on the project
In relation to the kind of activities and didactical methods adopted,
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


Office hours

See the website of Renzo Davoli


Quality education Industry, innovation and infrastructure Partnerships for the goals

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