Differenze tra le versioni di "Sistemi operativi e distribuiti T1/2005-2006"

Da WikiDsy.
 
(35 versioni intermedie di 6 utenti non mostrate)
Riga 1: Riga 1:
[[Categoria:Corsi]][[Categoria:Corsi Secondo Semestre]][[Categoria:Corsi ComDig]]
+
[[Categoria:Corsi 2005-2006]]
 
<!-- non cancellare le righe precedenti -->
 
<!-- non cancellare le righe precedenti -->
  
Riga 8: Riga 8:
 
=== Docenti ===  
 
=== Docenti ===  
  
[[Carlo Bellettini]]
+
[http://bellettini.usr.dico.unimi.it/~belletc/home/ Carlo Bellettini]
  
 
=== Orari delle lezioni ===
 
=== Orari delle lezioni ===
Riga 20: Riga 20:
 
=== Orario di ricevimento studenti ===
 
=== Orario di ricevimento studenti ===
  
Mercoledì h. 14.00 @ Via Comelico, 8
+
Mercoledì h. 14.00 in Via Comelico, 8
  
 
===Sito del corso ===
 
===Sito del corso ===
Riga 36: Riga 36:
  
 
*[http://www.wikipedia.org/ Wikipedia]
 
*[http://www.wikipedia.org/ Wikipedia]
*[http://bellettini.usr.dico.unimi.it/~belletc/home/ Sito prof. Bellettini]
 
 
*[http://www.dico.unimi.it/bellettini Carlo Bellettini - DICO]
 
*[http://www.dico.unimi.it/bellettini Carlo Bellettini - DICO]
  
 
=== Modalità d'esame ===
 
=== Modalità d'esame ===
 +
''AVVISO: IL SECONDO COMPITINO SI TERRA' MERCOLEDI 21 GIUGNO 2006''
  
 
Gli step sono 2: teoria e progetto.
 
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, oppure affrontare il classico scritto di fine corso. Per questa parte non e' prevista scrittura di codice.
+
* 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
 
* 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
  
Riga 72: Riga 72:
  
 
=== LUN 13.03.06 - Architettura dei Sistemi di Calcolo ===
 
=== LUN 13.03.06 - Architettura dei Sistemi di Calcolo ===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/004_architettura_SC.pdf '''Architettura dei Sistemi di calcolo''']
 
* Architettura dei Sistemi Operativi
 
* Architettura dei Sistemi Operativi
 
**Windows NT/2000 Architecture
 
**Windows NT/2000 Architecture
Riga 85: Riga 86:
 
* Accesso diretto alla memoria ([[:it:DMA|DMA]])
 
* Accesso diretto alla memoria ([[:it:DMA|DMA]])
  
=== MER 15.03.06 Device Management ===
+
=== MER 15.03.06 - Device Management ===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/005_device_management.pdf '''Gestione delle periferiche''']
 
* Input/Output Devices
 
* Input/Output Devices
 
* The device driver interface
 
* The device driver interface
Riga 99: Riga 101:
 
**Disk Optimization
 
**Disk Optimization
  
=== LUN 20.03.06 ===
+
=== LUN 20.03.06 - Dischi===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/006_disk_optimization.pdf '''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'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/007_processi.pdf  '''Processi''']
 +
 
 +
=== MER 29.03.06 - Scheduling the CPU===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/008_scheduling.pdf '''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'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/009_esercitazioni_1.pdf '''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'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/010_sincronizzazione.pdf '''Sincronizzazione''']
 +
 
 +
=== VEN 05.05.06 - Sincronizzazione ===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/011_deadlock.pdf '''Deadlock''']
 +
* Sincronizzazione
 +
* Deadlock parte I
 +
 
 +
=== LUN 08.05.06 - Deadlock + Sincronizzazione hl ===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/012_sincronizzazione_hl.pdf '''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 ===
 +
* Sincronizzazione ad alto livello
 +
 
 +
=== LUN 15.05.06 - Gestione della memoria ===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/013_gestione_memoria.pdf '''Gestione memoria''']
 +
* Gestione della memoria
 +
 
 +
=== MER 17.05.06 ===
 +
 
 +
=== LUN 22.05.06 - Gestione della memoria II ===
 +
* (continua) Gestione della memoria
 +
 
 +
=== MER 24.05.06 ===
 +
 
 +
=== LUN 29.05.06 - Memoria Virtuale ===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/014_memoria_virtuale.pdf '''Memoria virtuale''']
 +
 
 +
* File Management
 +
 
 +
=== MER 31.05.06 - File Management ===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/015_file_management.pdf '''File Management''']
 +
 
 +
=== LUN 05.06.06 - Security ===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/016_sicurezza.pdf '''Sicurezza''']
 +
 
 +
* Introduzione
 +
** Computer Security
 +
** Network Security
 +
* Principali problemi
 +
* Aspetti fondamentali
 +
** Attacchi sicurezza
 +
** Meccaniscmi di sicurezza
 +
** Servizi di sicurezza
 +
* Attacchi alla sicurezza
 +
** Interruption
 +
** Interception
 +
** Modification
 +
** Fabrication
 +
* Attacchi passivi e attivi
 +
** Release of message contents
 +
** Traffic analysis
 +
** Masquerable
 +
** Replay
 +
** Modification of message content
 +
** Denial of service
 +
* Servizi di sicurezza per attacchi passivi
 +
** Attacco attivo
 +
** Servizi di sicurezza
 +
* Autenticazione
 +
* Controllo degli accessi
 +
* Integrità
 +
* Disponibilità
 +
** Crittografia
 +
** Meccanismi di sicurezza
 +
** Symmetric Key Cryptografy
 +
** Public Key Cryptografy
 +
** Simmetricità delle chiavi
 +
** Meccanismi di sicurezza: integrità e non ripudiabilità
 +
** Firewall
 +
** I Livelli
 +
* La Pila ISO-OSI
 +
** Layer 1 Fisico
 +
** Layer 2 Datalink
 +
** Layer 3 Network
 +
** Layer 4 Transport
 +
** Layer 5 Session
 +
** Layer 7 Applicazione
 +
 
 +
=== MER 07.06.06 LEZIONE ANNULLATA - FINE TEORIA ===
 +
 
 +
=== LUN 12.06.06 - I lezione Java Concorrente ===
 +
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/017_java_concorrente.pdf '''Java Concorrente I''']
 +
 
 +
* Introduzione alla programmazione concorrente
 +
 
 +
=== MER 14.06.06 - II lezione Java Concorrente ===
 +
*
 +
* Svolgimento ultimo elaborato
 +
 
 +
=== VEN 16.06.06 - III lezione Java Concorrente ===
 +
* Svolgimento ultimo elaborato - continua
 +
* Svolgimento parziale elaborato (macchine sulla pista)

Versione attuale delle 17:23, 2 ago 2006


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 SECONDO COMPITINO SI TERRA' MERCOLEDI 21 GIUGNO 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

  • Sincronizzazione ad alto livello

LUN 15.05.06 - Gestione della memoria

Slide Gestione memoria

  • Gestione della memoria

MER 17.05.06

LUN 22.05.06 - Gestione della memoria II

  • (continua) Gestione della memoria

MER 24.05.06

LUN 29.05.06 - Memoria Virtuale

Slide Memoria virtuale

  • File Management

MER 31.05.06 - File Management

Slide File Management

LUN 05.06.06 - Security

Slide Sicurezza

  • Introduzione
    • Computer Security
    • Network Security
  • Principali problemi
  • Aspetti fondamentali
    • Attacchi sicurezza
    • Meccaniscmi di sicurezza
    • Servizi di sicurezza
  • Attacchi alla sicurezza
    • Interruption
    • Interception
    • Modification
    • Fabrication
  • Attacchi passivi e attivi
    • Release of message contents
    • Traffic analysis
    • Masquerable
    • Replay
    • Modification of message content
    • Denial of service
  • Servizi di sicurezza per attacchi passivi
    • Attacco attivo
    • Servizi di sicurezza
  • Autenticazione
  • Controllo degli accessi
  • Integrità
  • Disponibilità
    • Crittografia
    • Meccanismi di sicurezza
    • Symmetric Key Cryptografy
    • Public Key Cryptografy
    • Simmetricità delle chiavi
    • Meccanismi di sicurezza: integrità e non ripudiabilità
    • Firewall
    • I Livelli
  • La Pila ISO-OSI
    • Layer 1 Fisico
    • Layer 2 Datalink
    • Layer 3 Network
    • Layer 4 Transport
    • Layer 5 Session
    • Layer 7 Applicazione

MER 07.06.06 LEZIONE ANNULLATA - FINE TEORIA

LUN 12.06.06 - I lezione Java Concorrente

Slide Java Concorrente I

  • Introduzione alla programmazione concorrente

MER 14.06.06 - II lezione Java Concorrente

  • Svolgimento ultimo elaborato

VEN 16.06.06 - III lezione Java Concorrente

  • Svolgimento ultimo elaborato - continua
  • Svolgimento parziale elaborato (macchine sulla pista)