08574 - Operating Systems

Academic Year 2020/2021

  • 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

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
For the laboratory assignments:
  • Michael Goldweber, Renzo Davoli µMPS3 Principles of Operation. in course of publication
  • Michael Goldweber, Renzo Davoli Student Guide to the Pandos Operating System. in course of publication
  • 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

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

SDGs

Quality education Partnerships for the goals

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