08574 - SISTEMI OPERATIVI

Anno Accademico 2015/2016

  • Docente: Renzo Davoli
  • Crediti formativi: 12
  • SSD: INF/01
  • Lingua di insegnamento: Italiano
  • Moduli: Renzo Davoli (Modulo 1) Stefano Ferretti (Modulo 2)
  • Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
  • Campus: Bologna
  • Corso: Laurea in Informatica (cod. 8009)

Conoscenze e abilità da conseguire

Al termine del corso, lo studente conosce la struttura e i metodi di costruzione dei moderni sistemi operativi multiprogrammati. È in grado di installare, programmare e amministrare un sistema operativo.

Contenuti

  • Sistemi Operativi: definizione e storia
  • Programmazione Concorrente
  • Struttura dei S.O.
  • Scheduling
  • Gestione Risorse
  • Gestione Memoria Centrale
  • Gestione memoria secondaria
  • File System
  • Sicurezza nei Sistemi Operativi
  • Linguaggio C
  • System Call
  • Tool per la programmazione
  • Shell Scripting
  • Linguaggio Python

Testi/Bibliografia

Consigliati (sono più o meno tutti equivalenti)

  • Silbershatz, Galvin, Gagne. Applied Operating System Concepts. Addison Wesley (qualsiasi edizione)
  • Gary Nutt. Operating Systems - A modern Perspective. Addison Wesley
  • Tanenbaum, Woodhill. Operating System Design and Implementation. Prentice Hall
  • William Stallings. Operating Systems. Prentice Hall
Per le esercitazioni di Laboratorio:
  • Michael Goldweber, Renzo Davoli µMPS Principles of Operation. Lulu Books. 2009
  • Michael Goldweber, Renzo Davoli Student Guide to the Kaya Operating System. Lulu Books. 2009
  • Richard Stevens. Advanced Programming in UNIX. Addison-Wesley
  • Eric Steven Raymond. The Art of Unix Programming. Addison-Wesley
Approfondimenti:
  • G. Andrews. Concurrent Programming. Benjamin/Cummings, 1991.
Documentazione on-line

Metodi didattici

  • Lezioni frontali
  • Esercitazioni teoriche
  • Esercitazioni di programmazione, di interazione con system call, di scripting.
  • Progetto di Laboratorio
  • Discussioni sul progetto

Modalità di verifica e valutazione dell'apprendimento

  • Esercitazione scritta.
  • Progetto di laboratorio
  • Esercitazione di programmazione in laboratorio

Strumenti a supporto della didattica

Video proiettore, lavagna, Internet.
Non viene fatto uso di software proprietario, verra' studiato solo software libero. Gli studenti potranno quindi approfondire ogni tema a loro piacimento ed utilizzare liberamente la conoscenza acquisita nel corso.

Link ad altre eventuali informazioni

http://www.cs.unibo.it/~renzo/so

Orario di ricevimento

Consulta il sito web di Renzo Davoli

Consulta il sito web di Stefano Ferretti