Sistemi operativi e distribuiti T1/2005-2006

Da WikiDsy.


Informazioni generali

Sistemi operativi e distribuiti è un corso per la laurea triennale in Comunicazione Digitale.

Docenti

Carlo Bellettini

Orari delle lezioni

  • Lunedì 10:30-12:30 (effettiva 10.45 - 12.15)
  • Mercoledì 09:30-11:30 (effettiva 09.45 - 11.15)

Dove: V1, Via Venezian 15 Settore Didattico (6)

Orario di ricevimento studenti

Mercoledì h. 14.00 in Via Comelico, 8

Sito del corso

All'url [1] sito del prof. Bellettini Forum DiCo del Corso

Materiale didattico

I prof. Bellettini e Maggiorini grazie alla Pearson hanno redatto una selezione dei paragrafi del precedente libro utilizzato negli scorsi anni (Operating Systems - Gary Nutt) che saranno il punto di riferimento del corso, ma sempre in inglese.

Il libro è: "Sistemi Operativi e Distribuiti" (ISBN 1-84658-582387) ed è possibile trovarlo presso la libreria CLUED di Via Celoria 20, solo qui, in quanto ne sono state stampate solamente 100 copie (52€).

Links utili

Modalità d'esame

AVVISO: IL PRIMO COMPITINO DI QUESTO SEMESTRE SI TERRA IL 19 APRILE 2006.

Gli step sono 2: teoria e progetto.

  • La Teoria è indispensabile per accedere al progetto e la sua validità è infinita (quindi anche dopo gennaio 2007 per intenderci). Ci sono due modi per superarla: il primo consiste nel superamento di due compitini in itinere (che presentano domande a risposta multipla, a risposta aperta e degli esercizi), oppure affrontare il classico scritto di fine corso. Per questa parte non e' prevista scrittura di codice.
  • Il Progetto è individuale e sarà realizzato in Java. E' consigliabile quindi aver già sostenuto l'esame di FAP (I° Semestre). A discrezione dei docenti, potra` essere richiesta una discussione dell'elaborato. La traccia del progetto sarà disponibile martedì mattina, la consegna sarà fissata il venerdì della stessa settimana (sera). Il progetto chiaramente è proporzionato al tempo di svolgimento. Il sito per lo scaricamento della traccia e la sua consegna e' http://netdev.usr.dico.unimi.it/teaching/homeworks/sod.php

Non sono previsti orali.

Diario del corso

LUN 6.03.06 - Intro

Slide Presentazione del corso

Slide Introduzione ai Sistemi Operativi

  • Uso del Forum, mezzi di comunicazione con il docente
  • Introduzione ai sistemi operativi

MER 8.03.06 - Organizzazione dei Sistemi Operativi

Slide Organizzazione dei Sistemi Operativi

  • Device Management
  • Process, Thread, and resuorce management
  • Memory Management
  • OS Design Constraints
    • Performance
    • Protection and Security
  • Protezione Hardware
  • Protezione CPU
  • The UNIX Architecture
  • Microkernel organization

LUN 13.03.06 - Architettura dei Sistemi di Calcolo

Slide Architettura dei Sistemi di calcolo

  • Architettura dei Sistemi Operativi
    • Windows NT/2000 Architecture
  • Program Specification
  • Machine Language
  • The Von Neumann Architecture
  • Primary Memory Unit
  • Device Controller Interface
  • Addressing Devices
  • Performing a write operation
  • Accesso diretto alla memoria (DMA)

MER 15.03.06 - Device Management

Slide Gestione delle periferiche

  • Input/Output Devices
  • The device driver interface
    • System call interface
  • Device Management Organization
    • Device Independent Function call
    • Overlapping the operation of a device and the CPU
  • Overlapping processing and I/O
  • Interrupt drive I/O operation
  • Differenziazione dei Device
    • A generic communication device
    • Rootating Media
    • Disk Optimization

LUN 20.03.06 - Dischi

Slide Ottimizzazione dei Dischi

  • Rotating Media
  • Dentro all'Hard Disk
  • Disk Optimization
  • FCFS
  • SSTP
  • Scan
  • CD - Compact Disk
    • CD - Struttura logica

MER 22.03.06 - LEZIONE ANNULLATA

LUN 27.03.06 - Processi

Slide Processi

MER 29.03.06 - Scheduling the CPU

Slide Scheduling

  • Model of process execution
  • Lo scheduler è un processo
  • Voluntary CPU sharing
  • Yield
  • Policies consideration
  • Talking about Scheduling
  • Deadline Scheduling
  • Multi-level Queues

LUN 03.04.06 -

MER 05.04.06 - Esercitazione per il primo compitino

Slide Esercitazione

=== LUN 10.04.06 - Sincronizzazione === (gli argomenti successivi saranno oggetto del secondo compitino)

  • Concorrenza
  • Critical Section (come si risolve?)
    • Disabling Interrupt
    • Busy-wait condition
      • Deadlocked pirates
    • I semafori di Dijkstra
      • Definizione dei semafori di Dijkstra
    • Bounded Buffer problem

MER 12.04.06 - LEZIONE ANNULLATA

MER 19.04.06 - I compitino

tempo disponibile 1h e 45min

  • 10 quesiti a risposta multipla (4 possibilità)
  • 2 domande a risposta aperta
  • 4 esercizi riguardanti lo scheduling e la lettura da disco (2 per ognuno)

MER 26.04.06 - Sincronizzazione

Slide Sincronizzazione

VEN 05.05.06 - Sincronizzazione

Slide Deadlock

  • Sincronizzazione
  • Deadlock parte I

LUN 08.05.06 - Deadlock + Sincronizzazione hl

Slide Sincronizzazione high level

  • Avoidance
  • Prevention
  • Attesa circolare
  • Sincronizzazione ad alto livello
    • Generale
    • and Synch
    • Simultaneous semaphores
    • eventi
    • i segnali di Unix

MER 10.05.06

  • Sincronizzazione ad alto livello

LUN 15.05.06

Slide Gestione memoria

  • Gestione della memoria

MER 17.05.06

LUN 22.05.06

  • (continua) Gestione della memoria

MER 24.05.06

LUN 29.05.06

  • File Management

MER 31.05.06

LUN 05.06.06