PROGRAMMA DISCIPLINARE SVOLTO a. s / 2016

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "PROGRAMMA DISCIPLINARE SVOLTO a. s. 2015 / 2016"

Transcript

1 PROGRAMMA DISCIPLINARE SVOLTO a. s / 2016 DOCENTI: TESTARDO CINZIA, VALERIO FELICI CLASSE 4 a IA DISCIPLINA TPSI MACROARGOMENTI che sono stati trattati nel corso del corrente anno scolastico (in riferimento a quanto deliberato nell area disciplinare). N.B. il programma è pubblico ad uso degli studenti e delle famiglie. 1. SISTEMI OPERATIVI (RIPASSO) Definizione di sistemi operativi Scopi di un sistema operativo Componenti e funzioni di un sistema operativo 2. FILE SYSTEM File e directory Struttura logica del file system Condivisione e protezione dei file Struttura del file system Metodi di allocazione Gestione dello spazio libero Coerenza del file system 3. MEMORIA SECONDARIA (HARD DISK) Struttura di un disco Scheduling del disco Scheduling FCFS Scheduling SSTF Scheduling SCAN e C-SCAN Scheduling LOOK e C-LOOK Sistemi RAID 4. I PROCESSI Concetto di processo Stati di un processo Process Control Block Context switch Modello: Mod_045PER Rev. 02_02/05/2016 Responsabile del procedimento:

2 Operazioni sui processi (syscall nei sistemi Unix) fork( ), getpid( ), getppid( ) exit( ) wait( ) e waitpid( ), le macro WIFEXITED( ) e WEXITSTATUS( ) la famiglia delle primitive exec: la primitiva execl( ) argomenti del main: argc e argv 5. COMUNICAZIONE TRA PROCESSI Processi indipendenti, cooperanti e in competizione Inter-Process Communication Sistema a memoria condivisa Scambio di messaggi Comunicazione diretta e indiretta Scambio di messaggi bloccante e non bloccante Buffering Esempi (modello client/server e pipe) 6. CONCORRENZA TRA PROCESSI La concorrenza tra processi (interleaving e overlapping) Sincronizzazione di processi (race condition) Il problema della sezione critica Sezione critica e kernel Soluzione software al problema della sezione critica (algoritmo di Peterson) Soluzione hardware al problema della sezione critica (uso di lock, disabilitazione interrupt, test&set) 7. I SEMAFORI Soluzione basata su sistemi operativi al problema della sezione critica (i semafori) Semafori binari e semafori contatori Semafori spinlock (il problema della attesa attiva) Implementazione dei semafori senza attesa attiva le syscall block() e wakeup() le implementazioni di wait() e signal() Problema dei produttori-consumatori con i semafori 8. COMANDI SHELL LINUX Installazione della VMware e VMware Tools Ripasso sui comandi shell Linux Il comando chmod I comandi: date, cut, sort e grep Regular expression Modello: Mod_045PER Rev. 02_02/05/2016 Responsabile del procedimento:

3 9. SVILUPPARE APP ANDROID Prima lezione del corso "Developing Adroid Apps" su Udacity Seconda lezione del corso "Developing Adroid Apps" su Udacity 10.SVILUPPARE SITI WEB CON WORDPRESS Installazione di XAMPP Installazione di Wordpress Tema child Bergamo, lì 04 / 06 /2016 I Docenti Cinzia Testardo, Valerio Felici Gli alunni: Matteo Grechi Marco Tagliafierro Modello: Mod_045PER Rev. 02_02/05/2016 Responsabile del procedimento:

4 Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazioni (quarta) Indicazioni per il recupero docente: Testardo Cinzia Di seguito sono elencati i macroargomenti affrontati durante l'anno con i relativi obiettivi da raggiungere. Dopo aver studiato i singoli argomenti sulle dispense distribuite durante l'anno fai gli esercizi indicati File system Conoscere il concetto di file e directory Conoscere la struttura logica di un file system Conoscere i metodi di allocazione dei file Conoscere come è gestito lo spazio libero Conoscere e saper usare i sistemi di protezione dei file Memoria secondaria (Hard Disk) Conoscere la struttura di un disco Conoscere i principali algoritmi di scheduling del disco Conoscere e saper usare i sistemi di protezione dei dati Compiti Esercizi Al driver di un disco arrivano, nell ordine, richieste per i cilindri 38, 23, 59, 3, 63, 22, 2, 11, 45. Si utilizzino FCFS, SSTF e SCAN (decrescente) e si stabilisca la distanza totale (in cilindri) percorsa dal braccio del disco per soddisfare tutte le richieste in attesa. Si assuma per tutti i casi, che il braccio si trovi inizialmente posizionato sul cilindro 15 e il numero totale di cilindri è 100 (numerati da 0 a 99) Al driver di un disco arrivano, nell ordine, richieste per i cilindri 51, 80, 90, 140, 1, 45, 165, 85. Si assuma che il braccio si trovi inizialmente posizionato sul cilindro 100, il numero totale di cilindri è 200 (numerati da 0 a 199) e il seek time per lo spostamento tra cilindri adiacenti è 1 ms. Si utilizzi SSTF e si stabilisca il seek time totale per soddisfare tutte le richieste in attesa. Si tenga conto che l'ultima richiesta arriva dopo 13 ms. Si consideri un disco gestito con politica LOOK (crescente) e CSCAN (crescente). Inizialmente la testina è posizionata sul cilindro 24, il numero totale di cilindri è 100 (numerati da 0 a 99) e lo spostamento ad una traccia adiacente richiede 1 ms. Al driver di tale disco arrivano richieste per i cilindri 77, 43, 30, 80, rispettivamente agli istanti 0 ms, 20 ms 50 ms, 55 ms. si stabilisca in quale ordine sono servite le richieste e il tempo di seek time complessivo. I processi Conoscere il concetto di processo

5 Saper descrivere il ciclo di vita di un processo Conoscere i modelli di elaborazione dei processi Conoscere e saper usare le principali system call dei sistemi Unix Compiti Esercizi Scrivi un programma C++ in cui è lanciata una fork( ) e sia il padre che il figlio stampino a video il proprio PID e il PID del padre, differenziando il codice del padre e del figlio. Modifica l'esercizio precedente in modo che muore prima il figlio (suggerimento: usa sleep( )) Modifica l'esercizio precedente in modo che muore prima il padre (suggerimento: usa sleep( )) Scrivi un programma C++ in cui è richiesto in input un numero intero. Poi è lanciata una fork( ). Il figlio aggiunge 10 a tale numero e lo stampa a video, mentre il padre sottre 10 e lo stampa a video. Differenziare il codice del padre da quello del figlio Un processo padre P0 genera N figli. Considera due diverse gerarchie: N processi fratelli e 1 solo padre; N processi ciascuno figlio del precedente (N+1 livelli: padre, figlio, nipote, ecc.). Crea una struttura globale per tener traccia dei PID di tutti i processi (int pid[n+1]). Descrivi con quali valori è riempito tale vettore nei due casi. Scrivi un programma in cui il padre genera N figli e attende la fine della loro esecuzione Prova a modificare il programma precedente in modo tale che il processo padre attenda il completamento dei processi figli nello stesso ordine in cui sono stati creati. Scrivi un programma in C++ in cui il padre crea N figli e attende la terminazione di uno qualsiasi dei suoi figli Scrivi un programma in C++ in cui il padre crea N figli e attende la terminazione solo dell'ultimo creato Si scriva un programma che crei un figlio. Il figlio deve mandare in esecuzione il comando che mostra data e ora corrente in output. Il padre attende la terminazione del figlio. (Si supponga che il codice del comando si trova nella directory /bin ). Comunicazione tra processi Conoscere il modello di comunicazione a memoria condivisa e a scambio di messaggi Conoscere il modello di comunicazione a scambio di messaggi Conoscere le tipologie dei meccanismi a scambio di messaggi Conoscere le primitive send( ) e receive( ) Concorrenza tra processi

6 Acquisire il concetto di programmazione concorrente Acquisire il concetto di interazione tra processi Comprendere l'esigenza di sincronizzazione Comprendere il concetto di indivisibilità di una primitiva Avere il concetto di regione critica e mutua esclusione Sapere la differenza tra interleaving e overlapping Avere il concetto di starvation e deadlock Conoscere le varie soluzioni al problema della sezione critica I semafori Conoscere il concetto di semaforo Conoscere la differenza tra semafori binari e semafori contatori Conoscere i semafori spinlock Sapere il funzionamento dei semafori di Dijkstra ATTENZIONE PER COLORO CHE HANNO AVUTO LA SOSPENSIONE DEL GIUDIZIO RIPASSARE TUTTI GLI ARGOMENTI PRESENTI NEL PROGRAMMA SVOLTO.(IN PARTICOLARE QUELLI IN CUI LO STUDENTE NON HA RAGGIUNTO LA SUFFICIENZA DURANTE L'ANNO SCOLASTICO) FARE GLI ESERCIZI SU UN QUADERNO CONSEGNARE IL QUADERNO IL GIORNO DELL'ESAME LA PUNTALITÀ NELLA CONSEGNA, L'ORDINE, LA QUALITÀ E LA QUANTITÀ DEL LAVORO SVOLTO RIENTRERANNO TRA GLI ELEMENTI CHE SARANNO PRESI IN CONSIDERAZIONE IN SEDE DI VALUTAZIONE

PROGRAMMA DISCIPLINARE SVOLTO a. s / 2016

PROGRAMMA DISCIPLINARE SVOLTO a. s / 2016 PROGRAMMA DISCIPLINARE SVOLTO a. s. 2015 / 2016 DOCENTI: TESTARDO CINZIA, BARBAGALLO CARMELO CLASSE 1 a IF DISCIPLINA TECNOLOGIE INFORMATICHE MACROARGOMENTI che sono stati trattate nel corso del corrente

Dettagli

Sistemi Operativi 9 luglio 2013 Compito

Sistemi Operativi 9 luglio 2013 Compito Si risponda ai seguenti quesiti, giustificando le risposte. Gli esercizi e le domande marcate con l asterisco (*) devono essere svolti soltanto da chi ha in piano di studi l esame di Sistemi Operativi

Dettagli

Corso di Reti di Calcolatori L-A

Corso di Reti di Calcolatori L-A Università degli Studi di Bologna Facoltà di Ingegneria Corso di Reti di Calcolatori L-A Esercitazione 4 (proposta) Server Multiservizio: Socket C con select Luca Foschini Anno accademico 2010/2011 Esercitazione

Dettagli

Sistemi Operativi Teledidattico

Sistemi Operativi Teledidattico Sistemi Operativi Teledidattico Anno 2002 3a esercitazione 5/10/2002 Paolo Torroni processi fork (creazione di un figlio) exec (sostituzione di codice del programma in esecuzione) wait (attesa della terminazione

Dettagli

System call per la gestione di processi

System call per la gestione di processi System call per la gestione di processi Chiamate di sistema per creazione di processi: fork() sostituzione di codice e dati: exec...() terminazione: exit() sospensione in attesa della terminazione di figli:

Dettagli

SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 21 dicembre 2004

SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 21 dicembre 2004 SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 21 dicembre 2004 Cognome: Nome: Matricola: ESERCIZIO 1, teoria (6 punti) a) riportate lo pseudocodice che descrive l implementazione dell operazione

Dettagli

SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 5 luglio 2004

SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 5 luglio 2004 SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 5 luglio 2004 Cognome: Nome: Matricola: Scelgo di svolgere (marcate solo una delle due scelte possibili): [ ] solo la parte relativa al laboratorio

Dettagli

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat. Il compito è costituito da domande chiuse, domande aperte ed esercizi. Non è consentito l uso di libri, manuali, appunti., etc. Tempo massimo 2 ore. Domande chiuse: ogni domanda corrisponde ad un punteggio

Dettagli

I Processi nel Sistema Operativo Unix. Gerarchie di processi Unix. Stati di un processo Unix. Stati di un processo Unix.

I Processi nel Sistema Operativo Unix. Gerarchie di processi Unix. Stati di un processo Unix. Stati di un processo Unix. I Processi nel Sistema Operativo Unix Processi Unix Unix è un sistema operativo multiprogrammato a divisione di tempo: l unità di computazione è il processo. Caratteristiche del processo Unix: processo

Dettagli

CORSO DI Principi di Sistemi Operativi (1? anno Corso di Laurea Specialistica in Ingegneria Informatica) ANNO ACCADEMICO

CORSO DI Principi di Sistemi Operativi (1? anno Corso di Laurea Specialistica in Ingegneria Informatica) ANNO ACCADEMICO CORSO DI Principi di Sistemi Operativi (1? anno Corso di Laurea Specialistica in Ingegneria Informatica) ANNO ACCADEMICO 2008-2009 Prof. Letizia Leonardi OBIETTIVI FORMATIVI: L'obiettivo del corso è di

Dettagli

Esercitazione 11. Esercitazione di riepilogo

Esercitazione 11. Esercitazione di riepilogo Esercitazione 11 Esercitazione di riepilogo Agenda Esercizio 1 - Monitor java Gestione della pista di un aereoporto Esercizio 2 Programma C di sistema Gestione e monitoraggio dell esecuzione del programma

Dettagli

Soluzioni ai problemi di Mutua Esclusione Primitive di sincronizzazione. Soluzioni ai problemi di Mutua EsclusionePrimitive di sincronizzazione

Soluzioni ai problemi di Mutua Esclusione Primitive di sincronizzazione. Soluzioni ai problemi di Mutua EsclusionePrimitive di sincronizzazione Soluzioni ai problemi di Mutua Esclusione Primitive di sincronizzazione Soluzioni basate su primitive di sincronizzazione Le primitive di sincronizzazione piú comuni sono: Lock (mutex) - realizzati in

Dettagli

Sistemi in tempo reale: applicazioni alla robotica. Sistemi in tempo reale: applicazioni alla robotica p.1/15

Sistemi in tempo reale: applicazioni alla robotica. Sistemi in tempo reale: applicazioni alla robotica p.1/15 Sistemi in tempo reale: applicazioni alla robotica Sistemi in tempo reale: applicazioni alla robotica p.1/15 Sistemi operativi Hardware Firmware Kernel Driver Applicazioni Interfacce Sistemi in tempo reale:

Dettagli

Processi. Comunicazione tra processi Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

Processi. Comunicazione tra processi Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino Processi Comunicazione tra processi Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Processi independenti e cooperanti I processi concorrenti possono essere Indipendenti Cooperanti

Dettagli

14 Struttura della memoria secondaria Struttura del disco Struttura del disco

14 Struttura della memoria secondaria Struttura del disco Struttura del disco 14 Struttura della memoria secondaria 1 Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Affidabilità 2 14.1 Struttura del disco 3 14.1 Struttura del disco I dischi

Dettagli

Componenti di un sistema operativo

Componenti di un sistema operativo Componenti di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Componenti di un S.O. Gestione dei processi Gestione della memoria primaria Gestione della memoria secondaria

Dettagli

System Calls per la Gestione dei Processi

System Calls per la Gestione dei Processi System Calls per la Gestione dei Processi Domenico Cotroneo Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II Roadmap Process Context Identificativi getpid() getppid()

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Pietro Frasca Lezione 20 Martedì 16-12-2014 1 System call per la gestione dei processi Creazione

Dettagli

Memoria secondaria. Fabio Buttussi HCI Lab Dept. of Math and Computer Science University of Udine ITALY

Memoria secondaria. Fabio Buttussi HCI Lab Dept. of Math and Computer Science University of Udine ITALY Memoria secondaria Fabio Buttussi HCI Lab Dept. of Math and Computer Science University of Udine ITALY www.dimi.uniud.it/buttussi Struttura di un disco Da un punto di vista logico, rappresenta il livello

Dettagli

Interazione tra Processi. Sistemi Operativi T AA

Interazione tra Processi. Sistemi Operativi T AA Interazione tra Processi Sistemi Operativi T AA 2009-2010 1 Classificazione: Processi interagenti processi interagenti/indipendenti: due processi sono interagenti se l esecuzione di un processo è in alcun

Dettagli

YYY02 Esercizi per Teoria. Esercizi per preparazione alla prova scritta

YYY02 Esercizi per Teoria. Esercizi per preparazione alla prova scritta YYY02 Esercizi per Teoria Esercizi per preparazione alla prova scritta Esercizio YYY02_02 - Busy Waiting In linguaggio ANSI C, siano dichiarate le seguenti variabili, e siano queste variabili debitamente

Dettagli

Concetto di Processo Scheduling dei Processi Operazioni sui Processi Processi cooperanti Comunicazione tra processi

Concetto di Processo Scheduling dei Processi Operazioni sui Processi Processi cooperanti Comunicazione tra processi Concetto di Processo Scheduling dei Processi Operazioni sui Processi Processi cooperanti Comunicazione tra processi 3.3 Silberschatz, Galvin and Gagne 2005 1 Un SO esegue diversi tipi di programmi Sistema

Dettagli

Sistemi Operativi 1. Mattia Monga. 11 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. 11 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it e 11 marzo 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

Sistemi Operativi GESTIONE DEI PROCESSI. D. Talia - UNICAL. Sistemi Operativi 4.1

Sistemi Operativi GESTIONE DEI PROCESSI. D. Talia - UNICAL. Sistemi Operativi 4.1 GESTIONE DEI PROCESSI 4.1 Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in diversi S.O. 4.2 Concetto di

Dettagli

Corso di Laboratorio di Sistemi Operativi

Corso di Laboratorio di Sistemi Operativi Corso di Laboratorio di Sistemi Operativi Lezione 5 Alessandro Dal Palù email: alessandro.dalpalu@unipr.it web: www.unipr.it/~dalpalu Processi in Unix Approfondimenti: http://gapil.gnulinux.it/download/

Dettagli

Modello dei processi. Riedizione delle slide della Prof. Di Stefano

Modello dei processi. Riedizione delle slide della Prof. Di Stefano Modello dei processi Riedizione delle slide della Prof. Di Stefano 1 Processi Modello di Processi asincroni comunicanti Process Scheduling Operazioni sui Processi Cooperazione tra Processi Interprocess

Dettagli

= 0, 098 ms. Da cui si ricava t 2 medio

= 0, 098 ms. Da cui si ricava t 2 medio 1. Una macchina ha uno spazio degli indirizzi a 32 bit e una pagina di 8 KB. La tabella delle pagine è completamente nell hardware, con una parola a 32 bit per voce. Quando parte un processo, la tabella

Dettagli

Laboratorio di Sistemi Operativi Marzo-Giugno 2008 matricole congrue 0 mod 3

Laboratorio di Sistemi Operativi Marzo-Giugno 2008 matricole congrue 0 mod 3 Marzo-Giugno 2008 matricole congrue 0 mod 3 Funzioni wait e waitpid quando un processo termina il kernel manda al padre il segnale SIGCHLD Controllo dei processi (2) il padre può ignorare il segnale (default)

Dettagli

Il processo figlio : utilizza lo stesso codice che sta eseguendo il padre ;

Il processo figlio : utilizza lo stesso codice che sta eseguendo il padre ; La creazione di un nuovo processo in UNIX int fork(void); Viene creato un nuovo processo (figlio) identico (stesso codice, area dati copiata) al processo (padre) che ha invocato la fork Solo il valore

Dettagli

I Processi nel SO UNIX

I Processi nel SO UNIX I Processi nel SO UNIX 1 Processi UNIX UNIX è un sistema operativo multiprogrammato a divisione di tempo: unità di computazione è il processo Caratteristiche del processo UNIX: processo pesante con codice

Dettagli

Controllo dei Processi 1

Controllo dei Processi 1 Controllo dei Processi 1 I processi Nei sistemi Unix/Linux ogni processo ne può generare altri. Il processo che li genera è detto processo padre (parent process), mentre i processi generati sono detti

Dettagli

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1 GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria

Dettagli

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria

Dettagli

12 Memoria secondaria

12 Memoria secondaria 1 12 Memoria secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dell area di swap Memorie a stato solido 12.1 Struttura del disco 2 Un HD è composto da una serie di dischi

Dettagli

I Processi. Il Concetto di Processo

I Processi. Il Concetto di Processo I Processi Il Concetto di Processo Il processo è un programma in esecuzione È l unità di esecuzione all interno del SO Solitamente, l esecuzione di un processo è sequenziale (le istruzioni vengono eseguite

Dettagli

2. Nucleo del sistema operativo (la gestione dei processi)

2. Nucleo del sistema operativo (la gestione dei processi) Struttura interna del sistema operativo Linux 2. Nucleo del sistema operativo (la gestione dei processi) Architettura (struttura) del sistema operativo shell Programmi utente Modo utente Interfaccia delle

Dettagli

eseguire comandi dati dall'utente, utilizzando una macchina reale, di livello inferiore,

eseguire comandi dati dall'utente, utilizzando una macchina reale, di livello inferiore, La programmazione di sistema Introduzione ai sistemi operativi multiprocesso Primitive per la gestione dei processi http://home.dei.polimi.it/silvano/acso.htm Il sistema ste operativo Il Sistema Operativo

Dettagli

Sistemi Operativi. Prof. Alberto Broggi. Dip. di Ingegneria dell Informazione Università di Parma

Sistemi Operativi. Prof. Alberto Broggi. Dip. di Ingegneria dell Informazione Università di Parma Sistemi Operativi Prof. Alberto Broggi Dip. di Ingegneria dell Informazione Università di Parma Crediti Il corso offre 6 crediti (48 ore) Lezioni (circa 36 ore) Esercitazioni (circa 10 ore) Prova in itinere

Dettagli

Sistemi Operativi corso A, a.a

Sistemi Operativi corso A, a.a Sistemi Operativi corso A, a.a. 2015-2016 Teoria: Daniele Gunetti Linguaggio C: Rossano Gaeta (T1), Luca Anselma (T2) Laboratorio Unix: Daniele Radicioni (T1), Marco Aldinucci (T2) Daniele Gunetti: Tel.

Dettagli

Il Sistema Operativo

Il Sistema Operativo Il Sistema Operativo Il sistema operativo Con il termine sistema operativo si intende l insieme di programmi e librerie che opera direttamente sulla macchina fisica mascherandone le caratteristiche specifiche

Dettagli

Sommario. Processi e Programmi. Che cosa e un Processo? Lezione 5 Processi e Threads

Sommario. Processi e Programmi. Che cosa e un Processo? Lezione 5 Processi e Threads Sommario Lezione 5 Processi e Threads Processi e Programmi Implementazione dei Processi Casi di Studio relativi a Processi Thread Casi di Studio relativi a Thread 5.2 Processi e Programmi Che cosa e un

Dettagli

Laboratorio in C su Processi e POSIX IPC (Inter Process Communications) Dalla nona lezione di laboratorio in avanti

Laboratorio in C su Processi e POSIX IPC (Inter Process Communications) Dalla nona lezione di laboratorio in avanti Laboratorio in C su Processi e POSIX IPC (Inter Process Communications) Dalla nona lezione di laboratorio in avanti NOTA BENE: E INSISTO!!!!! Usare il comando man nomefunzionedilibreria per ottenere informazioni

Dettagli

Sistemi Operativi corso A, a.a

Sistemi Operativi corso A, a.a Sistemi Operativi corso A, a.a. 2017-2018 Teoria: Daniele Gunetti Linguaggio C: Rossano Gaeta (T1), Enrico Bini (T2) Laboratorio Unix: Daniele Radicioni (T1), Enrico Bini (T2) Daniele Gunetti: Tel. : 011

Dettagli

Processi in Linux. Igino Corona igino.corona@diee.unica.it. 20 Ottobre 2009

Processi in Linux. Igino Corona igino.corona@diee.unica.it. 20 Ottobre 2009 Sistemi Operativi Processi in Linux Igino Corona igino.corona@diee.unica.it 20 Ottobre 2009 Contenuti della lezione Come funzionano i programmi in Linux? Schema base di esecuzione di un programma Modalità

Dettagli

Sistemi Operativi Anno Accademico 2011/2012. Segnali: Interrupt software per la gestione di eventi asincroni

Sistemi Operativi Anno Accademico 2011/2012. Segnali: Interrupt software per la gestione di eventi asincroni Anno Accademico 2011/2012 Segnali: Interrupt software per la gestione di eventi asincroni Concetto di segnale Un segnale è un interrupt software Un segnale può essere generato da un processo utente o dal

Dettagli

SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 19 luglio 2004

SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 19 luglio 2004 SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 19 luglio 2004 ESERCIZI RELATIVI AL LABORATORIO UNIX ESERCIZIO 1 (9 punti) (a) Considerate un File System Unix la cui radice (root) contiene un

Dettagli

Il Concetto di Processo

Il Concetto di Processo I Processi Il Concetto di Processo Il processo è un programma in esecuzione È l unità di esecuzione all interno del SO Solitamente, l esecuzione l di un processo è sequenziale (le istruzioni vengono eseguite

Dettagli

Laboratorio di Sistemi Operativi Marzo-Giugno 2008 matricole congrue 0 mod 3

Laboratorio di Sistemi Operativi Marzo-Giugno 2008 matricole congrue 0 mod 3 Marzo-Giugno 2008 matricole congrue 0 mod 3 Controllo dei processi - I Controllo dei processi Creazione di nuovi processi Esecuzione di programmi Processo di terminazione Altro 2 1 Identificatori di processi

Dettagli

Capitolo 14: Struttura delle memorie di massa

Capitolo 14: Struttura delle memorie di massa Capitolo 14: Struttura delle memorie di massa Struttura dei dischi. Schedulazione degli accessi al disco. Amministrazione del disco. Gestione dello spazio di swap. 14.1 Struttura dei dischi I dischi rigidi

Dettagli

Corso di laurea in ingegneria informatica Esame di sistemi operativi 21 gennaio 2009 SOLUZIONI

Corso di laurea in ingegneria informatica Esame di sistemi operativi 21 gennaio 2009 SOLUZIONI Corso di laurea in ingegneria informatica Esame di sistemi operativi 21 gennaio 2009 SOLUZIONI 1. Si consideri il programma C seguente (gli #include necessari sono omessi): / programma principale / 1.

Dettagli

12 Memoria secondaria Struttura del disco Struttura del disco

12 Memoria secondaria Struttura del disco Struttura del disco 1 12 Memoria secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dell area di swap Memorie a stato solido 12.1 Struttura del disco 2 Un HD è composto da una serie di dischi

Dettagli

I Processi nel Sistema Operativo Unix

I Processi nel Sistema Operativo Unix I Processi nel Sistema Operativo Unix Processi Unix Unix è un sistema operativo multiprogrammato a divisione di tempo: l unità di computazione è il processo. Caratteristiche del processo Unix: processo

Dettagli

Memoria secondaria. Sistemi Operativi mod. B 14.1

Memoria secondaria. Sistemi Operativi mod. B 14.1 Memoria secondaria Struttura del disco Scheduling del disco Gestione dell unità a disco Gestione dello spazio di swap La struttura RAID Affidabilità dei dischi Connessione dei dischi 14.1 Memoria secondaria

Dettagli

Processi Concetti di base. Esecuzione parallela e sequenziale Il concetto di processo Gestione dei processi

Processi Concetti di base. Esecuzione parallela e sequenziale Il concetto di processo Gestione dei processi Processi Concetti di base Esecuzione parallela e sequenziale Il concetto di processo Gestione dei processi Esecuzione sequenziale I sistemi di calcolo più semplici consentono unicamente l'esecuzione sequenziale

Dettagli

Sistemi Operativi. Lezione 3 Processi e Thread

Sistemi Operativi. Lezione 3 Processi e Thread Lezione 3 Processi e Thread Introduzione Sino ai sistemi batch la CPU di un sistema svolgeva un attività, la portava a termine e solo allora avviava un altra attività Con l avvento della multiprogrammazione

Dettagli

Sistemi Operativi A. Prof. Alberto Broggi. Dip. di Ingegneria dell Informazione Università di Parma

Sistemi Operativi A. Prof. Alberto Broggi. Dip. di Ingegneria dell Informazione Università di Parma Sistemi Operativi A Prof. Alberto Broggi Dip. di Ingegneria dell Informazione Università di Parma Crediti Il corso offre 5 crediti (46 ore) Lezioni (circa 36 ore) Esercitazioni (circa 10 ore) Prova in

Dettagli

La Comunicazione tra Processi in Unix

La Comunicazione tra Processi in Unix La Comunicazione tra Processi in Unix La è un canale di comunicazione tra processi: unidirezionale: accessibile ad un estremo in lettura ed all'altro in scrittura molti-a-molti: più processi possono spedire

Dettagli

Sistemi Operativi T. Esercizi

Sistemi Operativi T. Esercizi Sistemi Operativi T Esercizi Esercizio monitor Si consideri la toilette di un ristorante. La toilette è unica per uomini e donne. Utilizzando la libreria pthread, si realizzi un'applicazione concorrente

Dettagli

Interazione tra Processi. Sistemi Operativi T AA

Interazione tra Processi. Sistemi Operativi T AA Interazione tra Processi Sistemi Operativi T AA 2012-13 1 Classificazione: Processi interagenti processi interagenti/indipendenti: due processi sono interagenti se l esecuzione di un processo è in alcun

Dettagli

Introduzione al Multithreading

Introduzione al Multithreading Introduzione al Multithreading Claudia Calidonna Istituto di di Cibernetica C.N.R. Argomenti principali Parleremo di : Processi & Threads Operazioni sui threads ed eventuali confronti tra operazioni sui

Dettagli

SISTEMI OPERATIVI. Nucleo di un SO. Il Nucleo. Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher. 06.

SISTEMI OPERATIVI. Nucleo di un SO. Il Nucleo. Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher. 06. SISTEMI OPERATIVI 06.a Il Nucleo Nucleo di un SO Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher 1 Architettura di base dei SO Due le strutture di riferimento: a

Dettagli

Corso di Laurea in Ingegneria Informatica e Biomedica. Sistemi Operativi A.A. (2002-2003)

Corso di Laurea in Ingegneria Informatica e Biomedica. Sistemi Operativi A.A. (2002-2003) Università degli Studi Magna Græcia di Catanzaro Corso di Laurea in Ingegneria Informatica e Biomedica Sistemi Operativi A.A. (2002-2003) Docente: Prof. Mario Cannataro cannataro@unicz.it www.icar.cnr.it

Dettagli

Processi UNIX. I Processi nel SO UNIX. Gerarchie di processi UNIX. Modello di processo in UNIX

Processi UNIX. I Processi nel SO UNIX. Gerarchie di processi UNIX. Modello di processo in UNIX Processi UNIX I Processi nel SO UNIX UNIX è un sistema operativo multiprogrammato a divisione di tempo: unità di computazione è il processo Caratteristiche del processo UNIX: processo pesante con codice

Dettagli

Informatica Generale 07 - Sistemi Operativi:Gestione dei processi

Informatica Generale 07 - Sistemi Operativi:Gestione dei processi Informatica Generale 07 - Sistemi Operativi:Gestione dei processi Cosa vedremo: Esecuzione di un programma Concetto di processo Interruzioni Sistemi monotasking e multitasking Time-sharing Tabella dei

Dettagli

Sistemi Operativi: Programmazione di Sistema

Sistemi Operativi: Programmazione di Sistema Corso di Sistemi Operativi: Programmazione di Sistema Corso di Laurea in Informatica, Università di Firenze Anno accademico 2011/2012 Prof. Luca Ferrari e-mail: ferrari@dsi.unifi.it telefono: 055 4237454

Dettagli

Sistemi Operativi. Marzo-Giugno 2011 matricole congrue 0 mod 3. Controllo dei processi - I

Sistemi Operativi. Marzo-Giugno 2011 matricole congrue 0 mod 3. Controllo dei processi - I Marzo-Giugno 2011 matricole congrue 0 mod 3 Controllo dei processi - I Controllo dei processi Creazione di nuovi processi Esecuzione di programmi Processo di terminazione Altro 2 1 Identificatori di processi

Dettagli

Sommario. G. Piscitelli

Sommario. G. Piscitelli Sommario Fondamenti dei Sistemi Operativi Device Manager Dispositivi di I/O Interfaccia (o controller) e software di pilotaggio (driver) di un dispositivo Schedulazione dei dischi: i parametri Schedulazione

Dettagli

SISTEMI OPERATIVI. Struttura dei. Sistemi Operativi. Giorgio Giacinto 2015

SISTEMI OPERATIVI. Struttura dei. Sistemi Operativi. Giorgio Giacinto 2015 SISTEMI OPERATIVI Struttura dei Sistemi Operativi 2 Panoramica dei servizi del sistema operativo 3 4 Cos è una chiamata al sistema?» Il SO mette a disposizione i suoi servizi ai programmi utente attraverso

Dettagli

Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.

Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Programmi applicativi Un programma applicativo (o applicativo) è un eseguibile che può essere utilizzato dall utente e che ha funzionalità di alto livello (word processor, spreadsheet, DBMS) Univ. Milano-Bicocca

Dettagli

Input Output. Principi di gestione dell hardware di I/O Dispositivi di I/O Gestione dei dischi magnetici Altri dispositivi

Input Output. Principi di gestione dell hardware di I/O Dispositivi di I/O Gestione dei dischi magnetici Altri dispositivi Principi di gestione dell hardware di I/O Dispositivi di I/O Gestione dei dischi magnetici Altri dispositivi Principi dell hardware di I/O L'hardware di I/O può essere descritto a vari livelli Ingegneri

Dettagli

Comunicazione tra processi: pipe Le pipe sono un meccanismo UNIX di Inter Process Communication (IPC)

Comunicazione tra processi: pipe Le pipe sono un meccanismo UNIX di Inter Process Communication (IPC) Comunicazione tra processi: pipe Le pipe sono un meccanismo UNIX di Inter Process Communication (IPC) Le pipe sono canali di comunicazione unidirezionali Limitazione pipe: permettono la comunicazione solo

Dettagli

1. Che cos è un sistema multiprogrammato? Si può realizzare la multiprogrammazione

1. Che cos è un sistema multiprogrammato? Si può realizzare la multiprogrammazione 1. Che cos è un sistema multiprogrammato? Si può realizzare la multiprogrammazione su un sistema con una sola CPU? 2. Qual è la differenza tra un interruzione e una trap? Si faccia qualche esempio. 1.

Dettagli

Corso di Laboratorio di Sistemi Operativi

Corso di Laboratorio di Sistemi Operativi Corso di Laboratorio di Sistemi Operativi Lezione 7 Alessandro Dal Palù email: alessandro.dalpalu@unipr.it web: www.unipr.it/~dalpalu Threads Un thread è l unità di base per l utilizzo della CPU. Composto

Dettagli

Universita` di Bologna Corso di Laurea Magistrale in Ing. Informatica A.A Sistemi Operativi M. Prof. Anna Ciampolini

Universita` di Bologna Corso di Laurea Magistrale in Ing. Informatica A.A Sistemi Operativi M. Prof. Anna Ciampolini Universita` di Bologna Corso di Laurea Magistrale in Ing. Informatica A.A. 2013-2014 Sistemi Operativi M Prof. Anna Ciampolini http://www.lia.deis.unibo.it/courses/som1314 Obiettivi del Corso Completamento

Dettagli

Principles of Concurrent Programming

Principles of Concurrent Programming Principles of Giuseppe Anastasi g.anastasi@iet.unipi.it Pervasive Computing & Networking Lab. () Dept. of Information Engineering, University of Pisa Overview Concetti preliminari Interazione fra processi

Dettagli

Java Virtual Machine. Indipendenza di java dalla macchina ospite. I threads in Java

Java Virtual Machine. Indipendenza di java dalla macchina ospite. I threads in Java programmi sorgente: files.java compilatore Indipendenza di java dalla macchina ospite Programmi java Programmi java Programmi java files.class bytecode linker/loader bytecode bytecode Java API files.class

Dettagli

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O

GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA. Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Sistemi Operativi T AA 2011-2012 1 COMPITI DEL SOTTOSISTEMA

Dettagli

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat. Esame Laboratorio di Sistemi Operativi 2-01-2008 Il compito è costituito da domande chiuse e domande aperte. Non è consentito l uso di libri, manuali, appunti., etc. Tempo massimo 1 ora. Domande chiuse:

Dettagli

Gestione dei processi

Gestione dei processi Gestione dei processi Dormire unsigned int sleep(unsigned int); Attende un numero specificato di secondi a meno che non si verifichi un segnale Restituisce 0 se l'attesa è terminata senza interruzioni,

Dettagli

TECN.PROG.SIST.INF. - Politiche di schedulazione del processore. Roberta Gerboni

TECN.PROG.SIST.INF. - Politiche di schedulazione del processore. Roberta Gerboni Roberta Gerboni 1 Gli stati di un processo Gli stati possibili nei quali si può trovare un processo sono: Hold (parcheggio): il programma (chiamato job) è stato proposto al sistema e attende di essere

Dettagli

Modelli di interazione tra processi

Modelli di interazione tra processi Modelli di interazione tra processi Modelli di interazione Modello a memoria comune (ambiente globale) Modello a scambio di messaggi (ambiente locale, message passing) Modello a memoria comune Il sistema

Dettagli

1.9: Gestione della Memoria Secondaria

1.9: Gestione della Memoria Secondaria 1.9: Gestione della Memoria Secondaria Struttura logica dei dischi Scheduling del disco Gestione dei dischi Gestione della zona di swap 1.9.1 Struttura Logica dei Dischi Un disco fisico è spesso diviso

Dettagli

II parte: Gestione dei Processi. 3. Processi. 3.1 Concetto di Processo

II parte: Gestione dei Processi. 3. Processi. 3.1 Concetto di Processo 1 II parte: Gestione dei Processi processi (cap. 3) Thread (cap. 4) Scheduling della CPU (cap. 5) Sincronizzazione fra processi (cap. 6) Deadlock (stallo dei processi) (cap. 7) 3. Processi 2 Il processo

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 9 Giovedì 10-11-2016 Semafori un semaforo s è una struttura dati gestita

Dettagli

Processi in UNIX. Spazio di sistema (residente) Tabella dei. file APERTI OPEN FILE. Tabella dei codici

Processi in UNIX. Spazio di sistema (residente) Tabella dei. file APERTI OPEN FILE. Tabella dei codici Processi in UNIX Spazio di sistema (residente) 1 i Tabella dei processi CODE Tabella dei file APERTI ACTIVE FILE PROCESS Tabella dei codici OPEN FILE Tabella dei file ATTIVI Spazio di utente (swappable)

Dettagli

Processi e thread. Concetto di processo

Processi e thread. Concetto di processo Processi e thread Concetto di processo Il processo è un programma in esecuzione È l unità di esecuzione all interno del SO Solitamente, l esecuzione l di un processo è sequenziale (le istruzioni vengono

Dettagli

Si può simulare una struttura di directory a multilivelli con una struttura di directory a singolo livello?"

Si può simulare una struttura di directory a multilivelli con una struttura di directory a singolo livello? Si può simulare una struttura di directory a multilivelli con una struttura di directory a singolo livello?" SOL Se è permesso che i nomi dei file abbiano lunghezza arbitraria, basta associare al nome

Dettagli

Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per:

Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire efficientemente l'elaboratore e le sue periferiche,

Dettagli

Introduzione ai sistemi operativi

Introduzione ai sistemi operativi Corso di laurea in Ingegneria dell Informazione Indirizzo Informatica Reti e sistemi operativi Introduzione ai sistemi operativi Contatti Docente: Alberto Pretto Ricevimento pretto@dis.uniroma1.it Appuntamento

Dettagli

Sistemi Operativi. Lezione 4 I processi: implementazioni

Sistemi Operativi. Lezione 4 I processi: implementazioni Lezione 4 I processi: implementazioni UNIX Creazione di un processo Assegna al processo un identificatore univoco Alloca spazio per il processo Inizializza il PCB Predisponi gli opportuni agganci con strutture

Dettagli

Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1

Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1 SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware

Dettagli

Sistemi Operativi (modulo di Informatica II) I processi

Sistemi Operativi (modulo di Informatica II) I processi Sistemi Operativi (modulo di Informatica II) I processi Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Il concetto di processo Schedulazione dei processi Operazioni sui processi

Dettagli

2. Nucleo del sistema operativo (la gestione dei processi)

2. Nucleo del sistema operativo (la gestione dei processi) Architettura del sistema operativo Struttura interna del sistema operativo Linux shell Programmi utente Modo utente 2. Nucleo del sistema operativo (la gestione dei processi) - 31 marzo 2008 - Interfaccia

Dettagli

Signalling (IPC) Signalling (segnalazione)

Signalling (IPC) Signalling (segnalazione) Signalling (IPC) Signalling (segnalazione) è un particolare tipo di Inter-Process Communications che permettere di sincronizzare dei processi spedendo e ricevendo dei messaggi minimali che informano dell'accadimento

Dettagli

SISTEMI OPERATIVI. Gestione dei processi. Domande di verifica. Luca Orrù Centro Multimediale Montiferru 13/05/2007

SISTEMI OPERATIVI. Gestione dei processi. Domande di verifica. Luca Orrù Centro Multimediale Montiferru 13/05/2007 2007 SISTEMI OPERATIVI Gestione dei processi Domande di verifica Luca Orrù Centro Multimediale Montiferru 13/05/2007 Gestione dei processi 1. Qual è la differenza tra un programma e un processo? Un programma

Dettagli

Processi e thread. Dipartimento di Informatica Università di Verona, Italy. Sommario

Processi e thread. Dipartimento di Informatica Università di Verona, Italy. Sommario Processi e thread Dipartimento di Informatica Università di Verona, Italy Sommario Concetto di processo Stati di un processo Operazioni e relazioni tra processi Concetto di thread Gestione dei processi

Dettagli

Informatica II Sistemi Operativi DIGIP - a.a. 2015/16

Informatica II Sistemi Operativi DIGIP - a.a. 2015/16 DIPARTIMENTO DI INFORMATICA Alberto Ceselli (alberto.ceselli@unimi.it) Informatica II Sistemi Operativi DIGIP - a.a. 2015/16 Sistemi Operativi (modulo di Informatica II) I processi Patrizia Scandurra Università

Dettagli

Componenti di Sistemi Operativi. System Call Programmi di sistema Componenti di un SO Servizi di SO

Componenti di Sistemi Operativi. System Call Programmi di sistema Componenti di un SO Servizi di SO Componenti di so 1 Componenti di Sistemi Operativi System Call Programmi di sistema Componenti di un SO Servizi di SO 2 System Call Le system call forniscono l'interfaccia tra running program e SO Generalmente

Dettagli

Gestione della memoria secondaria

Gestione della memoria secondaria Gestione della memoria secondaria 1 Sommario Tipologia del supporto Nastri magnetici Dischi magnetici Dispositivi a stato solido Scheduling degli accessi a disco Gestione del disco Formattazione Blocchi

Dettagli

2. Strutture dei Sistemi Operativi. 2.2 Interfaccia col Sistema Operativo Interprete dei comandi

2. Strutture dei Sistemi Operativi. 2.2 Interfaccia col Sistema Operativo Interprete dei comandi 1 2. Strutture dei Sistemi Operativi Quali servizi un generico sistema operativo mette a disposizione degli utenti, e dei programmi che gli utenti vogliono eseguire? interfaccia col sistema operativo stesso

Dettagli