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

Da WikiDsy.
 
(40 versioni intermedie di 9 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.dsi.unimi.it/persona.php?z=0;id=175 Carlo Bellettini - DSI]
 
  
 
=== 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.
+
* 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). Verrà seguito da una discussione, che non richiederà la scrittura del codice. La traccia del progetto verrà presentata di martedì mattina, la consegna sarà fissata il venerdì della stessa settimana (sera)http://wiki.dsy.it/index.php?title=Sistemi_operativi_e_distribuiti_T1&action=edit. Il progetto chiaramente è proporzionato al tempo di svolgimento.
+
* 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.
 
Non sono previsti orali.
Riga 72: Riga 72:
  
 
=== LUN 13.03.06 - Architettura dei Sistemi di Calcolo ===
 
=== LUN 13.03.06 - Architettura dei Sistemi di Calcolo ===
* Archittettura dei Sistemi Operativi
+
''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/004_architettura_SC.pdf '''Architettura dei Sistemi di calcolo''']
**Windows NT/2000 Archetecture
+
* Architettura dei Sistemi Operativi
 +
**Windows NT/2000 Architecture
 
* Program Specification
 
* Program Specification
 
* Machine Language
 
* Machine Language
* The Von Neumann Architecture
+
* The [[:it:Architettura von Neumann|Von Neumann]] Architecture
**ALU
+
**[[:it:Arithmetic Logic Unit|ALU]]
 
**CU
 
**CU
 
* Primary Memory Unit
 
* Primary Memory Unit
Riga 83: Riga 84:
 
* Addressing Devices
 
* Addressing Devices
 
* Performing a write operation
 
* Performing a write operation
* Accesso diretto alla memoria (DMA)
+
* Accesso diretto alla memoria ([[:it:DMA|DMA]])
  
=== MER 15.03.06 ===
+
=== 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
 +
* 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'' [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:24, 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)