Questo sito utilizza cookie tecnici e di terze parti. Se vuoi saperne di più o negare il consenso consulta l'informativa sulla privacy. Proseguendo la navigazione o cliccando su "Chiudi" acconsenti all'uso dei cookie. Chiudi
vai al contenuto vai al menu principale vai alla sezione Accessibilità vai alla mappa del sito
Login  Docente | Studente | Personale | Italiano  English
 
Home page Home page

SISTEMI OPERATIVI E BASI DI DATI

Corso Ingegneria dell'Informazione
Curriculum Curriculum unico
Orientamento Orientamento unicoGGG
Anno Accademico 2014/2015
Crediti 12
Settore Scientifico Disciplinare ING-INF/05
Anno Terzo anno
Unità temporale Primo semestre
Ore aula 96
Attività formativa Attività formative caratterizzanti

Canale unico

Docente FRANCESCO ANTONIO BUCCAFURRI
Obiettivi Il corso fornisce i concetti e le nozioni di base sui sistemi operativi, attraverso lo studio delle funzioni e delle strutture proprie dei sistemi operativi.
Gli obiettivi che si intendono raggiungere sono:
- Conoscenza delle funzioni principali dei sistemi operativi con riferimento a Processi, Gestione della Memoria, Gestione dell'I/O e File System
- Capacità di programmare in accordo al paradigma concorrente, con particolare riferimento al multi-threading di Java
- Capacità di valutare in maniera critica le scelte fatte dai diversi sistemi operativi.
- Acquisizione di un appropriato livello di autonomia nella conoscenza degli aspetti teorici e gestione di aspetti pratici relativi ai sistemi operativi.
- Capacità di comunicare con adeguata competenza tecnica con altri partner in attività di gruppo volte alla progettazione e alla implementazione di sistemi con funzionalità simili a quelle dei sistemi operativi.
Programma introduzione
Concetti di base
Tipi di sistemi operativi
Architetture dei calcolatori (cenni)

Struttura del Sistema Operativo
componenti
Servizi e funzioni dei SO
Interrupt e System Call

Processi
Rappresentazione di un processo in un sistema operativo
Scheduling dei processi
Diagramma di transizione di stato
La cooperazione e la comunicazione tra processi

Threads
Programmazione multithreading
Thread a livello utente e livello kernel
Soluzioni miste (Solaris)
Scheduling dei Thread

Programmazione concorrente e Deadlock
Liveness, Fairness
Sezione critica
Soluzione di Peterson
Semafori
Problema Produttore-Consumatore
Monitor
Implementazione del monitor
Gestione delle risorse
Deadlock
Rilevamento e prevenzione del Deadlock

La programmazione concorrente in Java
La classe Thread
Costrutti synchronized, notify(), wait() e notifyAll()
Esempi di programmi concorrenti

Gestione della memoria
Swap di processi
Allocazione contigua, rilocazione, registri base e limite, Paginazione
Tabella delle pagine e tabella delle pagine invertita
Bit di riferimento, bit di modifica, bit di blocco, bit ab/dis cache, bit di validità
Segmentazione
MMU, TLB

Memoria virtuale
Algoritmi di sostituzione delle pagine
Allocazione locale e globale
Working set e trashing

File system
L'astrazione file
Directory
Struttura di un file system
Metodi di allocazione dei file
Gestione dello spazio libero

I/O
I/O a controllo di programma
I/O interrupt-driven
I/O basato su DMA
Memory mapped I/O

Memoria secondaria
Struttura dei dischi
Scheduling del disco
RAID (0,1,2,3,4,5)

Sistemi operativi con orientamento specifico
Sistemi operativi real-time
Sistemi operativi Multimediali
Testi docente • Silberschatz, Galvin, Gagne. Sistemi operativi: Concetti ed esempi (8° ed.). Pearson, ISBN: 9-
788871-925691
• S. Tanenbaum. Modern Operating Systems, (3° ed.). Pearson Prentice Hall, ISBN-10:
0136006639
• Paolo Ancilotti, Maurelio Boari, Anna Ciampolini, Giuseppe Lipari. Sistemi Operativi, (2° ed.)
McGraw-Hill ISBN: 9788838664328
• Deitel & Deitel: Java. Fondamenti di programmazione. 2a ediz, Apogeo, 2003 (per la parte di
Programmazione Concorrente in Java)
Erogazione tradizionale
Erogazione a distanza No
Frequenza obbligatoria No
Valutazione prova scritta
Valutazione prova orale
Valutazione test attitudinale No
Valutazione progetto No
Valutazione tirocinio No
Valutazione in itinere No
Prova pratica No
Docente DOMENICO URSINO
Obiettivi Il corso fornisce i concetti e le nozioni di base sui sistemi operativi, attraverso lo studio delle funzioni e delle strutture proprie dei sistemi operativi.
Gli obiettivi che si intendono raggiungere sono:
- Conoscenza delle funzioni principali dei sistemi operativi con riferimento a Processi, Gestione della Memoria, Gestione dell'I/O e File System
- Capacità di programmare in accordo al paradigma concorrente, con particolare riferimento al multi-threading di Java
- Capacità di valutare in maniera critica le scelte fatte dai diversi sistemi operativi.
- Acquisizione di un appropriato livello di autonomia nella conoscenza degli aspetti teorici e gestione di aspetti pratici relativi ai sistemi operativi.
- Capacità di comunicare con adeguata competenza tecnica con altri partner in attività di gruppo volte alla progettazione e alla implementazione di sistemi con funzionalità simili a quelle dei sistemi operativi.
Programma Introduzione (0.5 crediti)

Introduzione
Scopi di un DBMS, modelli dei dati, schemi e istanze, Data Definition Language, Data Manipulation Language, Architettura di un DBMS, il ciclo di vita dei sistemi informativi, metodologia di progettazione di un sistema informativo


Modellazione di un Sistema Informativo (1.5 crediti)

Modello Entità-Relazione
Entità, Relazioni o associazioni, attributi, costruzioni di schemi con i costrutti di base, cardinalità delle relazioni, cardinalità degli attributi, identificatori o chiavi, generalizzazioni, documentazione degli schemi E/R, ulteriori usi degli schemi E/R.

Modello Relazionale
Relazioni e tabelle, relazioni con attributi, relazioni e basi di dati, informazione incompleta e valori nulli, vincoli di integrità, vincoli di dominio, vincoli di tupla, chiavi, chiavi e valori nulli, vincoli di integrità referenziale.

Analisi dei requisiti e progettazione di un Sistema Informativo (1 credito)


Specifica e analisi dei requisiti
Definizione del contesto di riferimento, tecniche per la specifica e l’analisi dei requisiti

Progettazione della componente dati
Introduzione, Metodologia generale di progettazione concettuale, criteri generali di rappresentazione di una realtà in un diagramma E/R, progettazione concettuale in un caso reale, ristrutturazione di schemi E/R nella progettazione logica, analisi delle ridondanze, eliminazione delle gerarchie, partizionamento/accorpamento di concetti, eliminazione di attributi multivalore, eliminazione degli attributi composti, scelta degli identificatori principali, traduzione verso il modello relazionale, progettazione logica di un caso reale, introduzione alla Progettazione Fisica, adattamento dello schema logico al DBMS prescelto, analisi delle transazioni, scelta dell’organizzazione dei file, scelta degli indici, stima delle richieste di spazio su disco, progettazione fisica di un caso reale.

Progettazione della componente applicativa
Introduzione, definizione dell’architettura, definizione dei mock-up, definizione del diagramma delle classi, l’Object Relational Mapping.


I linguaggi di gestione delle basi di dati (1.5 crediti)

Algebra Relazionale
Introduzione all’Algebra Relazionale, Selezione, Proiezione, Rename, Unione, Differenza, Intersezione, Prodotto Cartesiano, Theta Join, Equi Join, Natural Join, Semi Join, Outer Join, Divisione.

SQL
Introduzione ad SQL, il Data Definition Language di SQL, tipi di dati, creazione di tabelle, cancellazione di tabelle, modifica di tabelle, valori di default, dichiarazione delle chiavi, la clausola UNIQUE, la clausola NOT NULL, vincoli di integrità referenziale, specifica dei vincoli di dominio e di tupla mediante la clausola CHECK, specifica dei vincoli intra-relazionali e inter-relazionali mediante le asserzioni

Il Query Language di SQL, dichiaratività di SQL, interrogazioni semplici, l’istruzione LIKE, gestione dei valori nulli, interpretazione algebrica delle interrogazioni SQL, gestione dei duplicati, inner e outer join, uso di variabili, ordinamento, operatori aggregati, interrogazioni con raggruppamento, predicati sui gruppi, interrogazioni di tipo insiemistica, interrogazioni nidificate, l’operatore EXISTS, gestione dei concetti di “tutti” e “solo” in SQL.

Inserimento, rimozione e modifica dei dati in SQL.

Gestione delle viste in SQL.

Aspetti Tecnologici (0.5 crediti)

Tranzazioni
Definizione di transazione, proprietà delle transazioni, controllo della concorrenza, architettura di un sistema per il controllo della concorrenza, anomalie delle transazioni concorrenti, teoria del controllo della concorrenza, locking a due fasi, lock gerarchico.

Forme Normali
Lo scopo della Normalizzazione, ridondanza dei dati e anomalie di aggiornamento, dipendenze funzionali, regole di inferenza delle dipendenze funzionali, il processo di normalizzazione, la Prima Forma Normale, la Seconda Forma Normale, la Terza Forma Normale, Definizioni generali di 2NF e 3NF, la Boyce-Codd Normal Form.

Il DBMS MySQL (1 credito)

Installazione di MySQL, SQL in MySQL, gestione di semplici applicazioni in MySQL.
Testi docente • P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone, “Basi di Dati – Modelli e linguaggi di interrogazione”, Quarta Edizione, McGraw Hill, 2013
• M. Fowler, “UML Distilled”, III Edizione, Addison Wesley, 2004
• H. Garcia-Molina, J.D. Ullman, J. Widom, “Database Systems – The complete book”, Second Edition, Pearson Education, 2008.
• Silberschatz, H.F. Korth, S. Sudarshan, “Database System Concepts”, VI Edizione, McGraw Hill, 2010
• R. Ramakrishnan, J. Gehrke, “Sistemi di Basi di Dati”, McGraw Hill, 2004
• T. Connolly, C. Begg, “Database Systems”, V Edizione, Pearson Education, 2009

Eventuali dispense fornite dal docente
Erogazione tradizionale
Erogazione a distanza No
Frequenza obbligatoria No
Valutazione prova scritta No
Valutazione prova orale
Valutazione test attitudinale No
Valutazione progetto
Valutazione tirocinio No
Valutazione in itinere No
Prova pratica No

Ulteriori informazioni


Documenti inseriti da

Descrizione Descrizione
Dispensa MySQL (dispensa) Descrizione
Progetto (dispensa) Descrizione

Documenti inseriti da Francesco Buccafurri

Nessun materiale didattico inserito per questo insegnamento
Nessun avviso pubblicato
Nessuna lezione pubblicata
Codice insegnamento online non pubblicato

Cerca nel sito

 

Posta Elettronica Certificata

Direzione

Tel +39 0965.1693217/3252

Fax +39 0965.1693247

Indirizzo e-mail


Protocollo

Tel +39 0965.1693422

Fax +39 0965.1693247

Indirizzo e-mail

Didattica e orientamento

Tel +39 0965.16933385

Fax +39 0965.1693247

Indirizzo e-mail


Segreteria studenti

Tel +39 0965.1691475

Fax +39 0965.1691474

Indirizzo e-mail

Amministrazione

Tel +39 0965.1693214

Fax +39 0965.1693247

Indirizzo e-mail


Ricerca

Tel +39 0965.1693422

Fax +39 0965.1693247

Indirizzo e-mail

Social

Facebook

Twitter

YouTube

Instagram