Corso di Laurea in Ingegneria Informatica. Sistemi Operativi. Esercitazione semafori. Università degli Studi KORE - Enna. Docente: Mario Collotta

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Corso di Laurea in Ingegneria Informatica. Sistemi Operativi. Esercitazione semafori. Università degli Studi KORE - Enna. Docente: Mario Collotta"

Transcript

1 Corso di Laurea in Ingegneria Informatica Sistemi Operativi Esercitazione semafori Università degli Studi KORE - Enna Docente: Mario Collotta mario.collotta@unikore.it 1

2 Esercizio 1 Implementare un programma C che rispetti le seguenti specifiche: il processo padre deve dar vita a 2 processi figli. ogni processo (padre e figlio) deve avere l accesso esclusivo ad un file di testo su cui scrivere il proprio PID.

3 Soluzione proposta dagli studenti senza l utilizzo dei semafori e senza segnali #include <sys/types.h> #include <sys/ipc.h> #include <sys/sem.h> #define N 2 FILE *fp; void scrittura(); int main() int i, c, stato; fp=fopen("pid.txt", "w"); fclose(fp); //CREO O RESETTO FILE /* do printf("\n\nnumero di figli con N>2:\t"); scanf("%d", &N); }while(n<2);*/

4 pid[i]=fork(); switch(pid[i]) case -1: printf("\n\nfork %d FALLITA!!!", c); exit(0); break; case 0: sleep(i+1); printf("\n\nfiglio %d - Padre %d\n\n", getpid(), getppid()); scrittura(); printf("%d ha scritto il proprio PID su file.\n\n", getpid()); exit(stato); break; default: wait(&stato); break; }//switch }//for printf("\n\npadre %d\n\n", getpid()); scrittura(); void scrittura() fp=fopen("pid.txt", "a"); fprintf(fp, "%d\n\n", getpid()); fclose(fp); }//scrittura

5 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <signal.h> #include <sys/wait.h> #include <sys/types.h> #include <sys/ipc.h> #include <sys/sem.h> #define DBACCESS 17 #define N 2 FILE *fp; int dbaccess; void scrittura(); int main() int i, c, stato; int s[1]; Soluzione proposta dagli studenti con semafori dbaccess = semget(dbaccess, 1, 0777 IPC_CREAT); if(dbaccess==-1) printf("\n\nsemaforo FALLITO. RIPROVA.\n\n"); exit(0); } else printf("\nsemaforo creato correttamente. Semid = %d\n\n", dbaccess); } struct sembuf down[1], up[1]; down[0].sem_num=0; down[0].sem_op=-1; down[0].sem_flg=0; up[0].sem_num=0; up[0].sem_op=1; up[0].sem_flg=0; semctl(dbaccess, 0, SETVAL, 1);

6 int pid[n]; for(i=0; i<n; i++) pid[i]=0; } for(i=0; i<n; i++) c++; pid[i]=fork(); switch(pid[i]) case -1: printf("\n\nfork %d FALLITA!!!", c); exit(0); break; case 0: sleep(i+1); printf("\n\nfiglio %d - Padre %d\n\n", getpid(), getppid()); semop(dbaccess, down, 1); scrittura(); semop(dbaccess, up, 1); printf("%d ha scritto su file.\n\n", getpid()); exit(stato); break; default: wait(&stato); break; }//switch }//for printf("\n\npadre %d\n\n", getpid()); semop(dbaccess, down, 1); scrittura(); semop(dbaccess, up, 1); exit(0); }//main void scrittura() fp=fopen("pid.txt", "a"); fprintf(fp, "%d\n\n", getpid()); fclose(fp); }//scrittura

7 Esercizio 2 Implementare un programma C che rispetti le seguenti specifiche: il processo padre P0 deve dar vita a 3 processi figli. ogni processo (padre e figli) deve avere l accesso esclusivo ad un file di testo su cui scrivere il proprio pid. 7

8 8

9 9

10 10

11 Esercizio 3 Realizzare un programma C che rispetta le seguenti specifiche: il processo iniziale P0 deve dare origine ad N figli con N dato da input (N>5). il processo iniziale P0 dopo aver separato i processi figli con PID pari da quelli con PID dispari dovrà gestirli nel seguente modo: i processi con pid pari eseguono un comando Linux. i processi con pid dispari salvano sullo stesso file di testo il proprio pid. 11

12 12

13 13

14 14

15 Esercizio 4 Si implementi, utilizzando le system call di Linux, un processo iniziale (P0->processo padre) che crei un numero N di figli (con N inserito da tastiera ed N>2) ed alcuni nipoti (1 per figlio). Il processo padre P0 apparterrà alla I generazione, i figli alla II ed i nipoti alla III. I processi figli, così creati, devono attendere la terminazione del proprio figlio (processo appartenente alla III generazione) e stampare lo stato di terminazione. I processi di III generazione dovranno scrivere, ciascuno, un valore intero A nello stesso file: <<esame.txt>> (con A letto da tastiera ed A>10). Dovranno, inoltre, restituire uno stato di terminazione pari al valore di A. Il processo P0 dovrà terminare tutti i processi creati (di II generazione), inviando a ciascuno il segnale SIGKILL. Ogni processo creato dovrà stampare il proprio pid e quello del proprio padre. 15

16 16

17 17

18 18

19 19

20 Esercizio 5 Realizzare un programma C che simuli le operazioni bancarie. il processo iniziale P0 deve dare origine a N figli. Ogni figlio svolgerà le seguenti operazioni: Se ha PID pari deve leggere un valore dal file X.txt e decrementarlo di una certa quantità, successivamente scrivere il proprio PID, la quantità e il valore aggiornato all interno del file Y.txt Se ha PID dispari deve leggere un valore dal file X.txt e incrementarlo di una certa quantità, successivamente scrivere il proprio PID, la quantità e il valore aggiornato all interno del file Y.txt

21 Soluzione proposta dagli studenti #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <signal.h> #include <sys/wait.h> #include <sys/types.h> #include <sys/ipc.h> #include <sys/sem.h> #define DBACCESS 17 #define DEC 10 #define INC 15 FILE *fp1; FILE *fp2; int dbaccess; int main() int N, i, c, stato, conto, inc, dec; int s[1]; dbaccess = semget(dbaccess, 1, 0777 IPC_CREAT); if(dbaccess==-1) printf("\n\nsemaforo FALLITO. RIPROVA.\n\n"); exit(0); } else printf("\nsemaforo creato correttamente. Semid = %d\n\n", dbaccess); }

22 struct sembuf down[1], up[1]; down[0].sem_num=0; down[0].sem_op=-1; down[0].sem_flg=0; up[0].sem_num=0; up[0].sem_op=1; up[0].sem_flg=0; semctl(dbaccess, 0, SETVAL, 1); fp2=fopen("y.txt", "w"); fclose(fp2); //CREO FILE LISTA MOVIMENTI printf("\n\nnumero di figli:\t"); scanf("%d", &N); int pid[n]; for(i=0; i<n; i++) pid[i]=0; } fp1=fopen("x.txt", "r"); rewind(fp1); fscanf(fp1, "%d", &conto); fclose(fp1); fp2=fopen("y.txt", "w+"); fprintf(fp2, "CONTO INIZIALE: %d\n\n", conto); fclose(fp2); printf("e'stato scritto su file Y.txt il conto iniziale.\n\n");

23 for(i=0; i<n; i++) c++; pid[i]=fork(); switch(pid[i]) case -1: printf("\n\nfork %d FALLITA!!!", c); exit(0); break; case 0: sleep(i+1); printf("\n\nfiglio %d - Padre %d\n\n", getpid(), getppid()); if((getpid()%2)==0) semop(dbaccess, down, 1); fp1=fopen("x.txt", "r"); rewind(fp1); fscanf(fp1, "%d", &conto); fclose(fp1); /* printf("\ndi quanto vuoi decrementare?\t"); scanf("%d", &dec);*/ conto=conto - DEC; fp2=fopen("y.txt", "a"); fprintf(fp2, "%d ha decrementato di %d.\nconto aggiornato = %d\n\n\n", getpid(), DEC, conto); fclose(fp2); fp1=fopen("x.txt", "w+"); fprintf(fp1, "%d", conto); fclose(fp1);

24 semop(dbaccess, up, 1); }//IF FIGLI PARI else semop(dbaccess, down, 1); fp1=fopen("x.txt", "r"); rewind(fp1); fscanf(fp1, "%d", &conto); fclose(fp1); /*printf("\ndi quanto vuoi incrementare?\t"); scanf("%d", &inc);*/ conto=conto + INC; fp2=fopen("y.txt", "a"); fprintf(fp2, "%d ha incrementato di %d.\nconto aggiornato = %d\n\n\n", getpid(), INC, conto); fclose(fp2); fp1=fopen("x.txt", "w+"); fprintf(fp1, "%d", conto); fclose(fp1); semop(dbaccess, up, 1); }//IF FIGLI DISPARI exit(stato); break; default: break; }//switch }//for printf("guardare lista movimenti su file X.txt"); exit(0); }//main

25 Esercizio 6 Realizzare un programma C che rispetti le seguenti specifiche: il processo iniziale P0 deve dare origine ad N figli con N dato da input (almeno 4). il processo iniziale P0 dovrà suddividere i processi figli in due sottogruppi (ordine ininfluente) e attivarli seguendo un ordine preciso (p.e. secondo un algoritmo di scheduling FIFO, LIFO, secondo una priorità). Ogni sottogruppo svolgerà le seguenti operazioni: I processi del primo sottogruppo (processi genitori) devono salvare il proprio PID in un file X.txt e creare a loro volta un processo figlio (nipote di P0) che deve leggere e stampare a video il contenuto di tale file I processi del secondo gruppo (processi genitori) devono creare un processo figlio ciascuno (nipote di P0) che, continuamente, attende alcuni istanti e stampa il proprio PID e quello del genitore che l ha creato in file Y.txt. I processi genitori devono quindi inviare un segnale di terminazione per terminare i processi nipoti.

Lezione 21. #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <sys/types.h> #include <sys/wait.

Lezione 21. #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <sys/types.h> #include <sys/wait. Lezione 21 Scrivere un programma che simuli il sistema di prenotazione di voli AC- ME. Il programma acquisisce da std input il numero di posti da riservare rispettivamente dall ufficio A e dall ufficio

Dettagli

Processi parte IV. Processi parte IV

Processi parte IV. Processi parte IV Processi parte IV Processi parte IV Grafi di precedenza Sincronizzazione dei processi Unix mediante: fork-join cobegin-coend semafori Grafi di precedenza Un grafo di precedenza è un grafo diretto aciclico

Dettagli

Il sistema operativo LINUX Semafori. Semaforo. Sommario. Sommario. Uso delle pipe. Gestione di semafori tramite pipe. Sistemi operativi Modulo II

Il sistema operativo LINUX Semafori. Semaforo. Sommario. Sommario. Uso delle pipe. Gestione di semafori tramite pipe. Sistemi operativi Modulo II Il sistema operativo LINUX Semafori Semaforo Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica Un semaforo è una variabile

Dettagli

Addendum alle chiamate di sistema per la gestione processi. E Mumolo

Addendum alle chiamate di sistema per la gestione processi. E Mumolo Addendum alle chiamate di sistema per la gestione processi E Mumolo Definiamo un processo proc.c che scrive l'argomento passato in linea: void main(int argc, char *argv[]){ printf("sono il processo %s\n",

Dettagli

Fondamenti di Informatica L-A

Fondamenti di Informatica L-A Fondamenti di Informatica L-A Esercitazione del 23/11/07 Ing. Giorgio Villani Ripasso Teoria Funzioni ricorsive 2 fatt(2) 1 2*fatt(1) fatt(1) 1 2*1 1*fatt(0) fatt(0) 1*1 caso base fatt(0)=1 Esercizio 1

Dettagli

LABORATORIO DI SISTEMI OPERATIVI

LABORATORIO DI SISTEMI OPERATIVI LABORATORIO DI SISTEMI OPERATIVI Corso di Laurea Triennale in Ingegneria Informatica A.A. 2018/2019 Guglielmo Cola Email: g.cola@iet.unipi.it Web: iet.unipi.it/g.cola Processi in Unix/Linux caratteristiche

Dettagli

Laboratorio. Due. 1) Switch 2) Costrutti Iterazione (For, While, do while)

Laboratorio. Due. 1) Switch 2) Costrutti Iterazione (For, While, do while) Laboratorio Due 1) Switch 2) Costrutti Iterazione (For, While, do while) GLI ARGOMENTI DI OGGI Istruzione switch I costrutti di iterazione (For, while, do while) Le funzioni (e ricorsione) Terza Esercitazione

Dettagli

Sistemi Operativi (M. Cesati)

Sistemi Operativi (M. Cesati) Sistemi Operativi (M. Cesati) Compito scritto del 17 febbraio 2014 Nome: Matricola: Corso di laurea: Cognome: Crediti da conseguire: 5 6 9 Scrivere i dati richiesti in stampatello. Al termine consegnare

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

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

Esercizio n.1 FONDAMENTI DI INFORMATICA 1. Esercizio n.2. Soluzione. LINGUAGGIO C Funzioni e gestione file: esercitazione

Esercizio n.1 FONDAMENTI DI INFORMATICA 1. Esercizio n.2. Soluzione. LINGUAGGIO C Funzioni e gestione file: esercitazione Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica (Industriale), Chimica, Meccanica, Elettrica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011

Dettagli

Terza Esercitazione. Gestione di segnali in Unix Primitive signal e kill!

Terza Esercitazione. Gestione di segnali in Unix Primitive signal e kill! Terza Esercitazione Gestione di segnali in Unix Primitive signal e kill! Primitive fondamentali signal kill pause alarm sleep Imposta la reazione del processo all eventuale ricezione di un segnale (può

Dettagli

Il comando make. Per produrre un eseguibile da un programma C sono necessari tre passi compiuti dai seguenti moduli:

Il comando make. Per produrre un eseguibile da un programma C sono necessari tre passi compiuti dai seguenti moduli: Il comando make Sviluppando programmi complessi, si è spesso portati a suddividere il codice sorgente in diversi file. La fase di compilazione quindi richiede maggior tempo, anche se le modifiche apportate

Dettagli

INTERPROCESS COMMUNICATION 27

INTERPROCESS COMMUNICATION 27 INTERPROCESS COMMUNICATION 27 - Le comunicazioni tra processi (IPC, Intreprocess Communication) sono realizzate mediante strutture dati rese disponibili dal kernel. Sono disponibili 3 tipologie di comunicazioni

Dettagli

Esercizio sulla gestione di processi in Unix!

Esercizio sulla gestione di processi in Unix! ! Esercizio sulla gestione di processi in Unix! 1 Esercizio Si vuole realizzare un programma C che abbia la seguente interfaccia:./launch_commands Il programma deve richiedere all utente: un numero N (pari

Dettagli

Processi in Linux. Stru/ura file eseguibili

Processi in Linux. Stru/ura file eseguibili SISTEMI OPERATIVI Processi in Linux Stru/ura file eseguibili» ELF - Executable and Linking Format formato di default degli eseguibili in Linux definizione nel file include » StruGura un header contenente

Dettagli

La creazione di un nuovo processo in UNIX

La creazione di un nuovo processo in UNIX La creazione di un nuovo processo in UNIX #include int fork(void); Viene creato un nuovo processo (figlio) identico (stesso codice, area dati copiata) al processo (padre) che ha invocato la

Dettagli

Problema dei Produttori e dei Consumatori

Problema dei Produttori e dei Consumatori Problema dei Produttori e dei Consumatori Appartiene alla categoria di problemi nei quali l esecuzione di un processo dipende dall esecuzione di un altro, per cui è necessaria una comunicazione asincrona

Dettagli

Segnali. I segnali in Unix sono un meccanismo semplice per inviare degli interrupt software ai processi.

Segnali. I segnali in Unix sono un meccanismo semplice per inviare degli interrupt software ai processi. Segnali I segnali in Unix sono un meccanismo semplice per inviare degli interrupt software ai processi. Solitamente sono utilizzati per gestire errori e condizioni anomale, piuttosto che per trasmettere

Dettagli

Corso di Sistemi Operativi A.A. 2008-2009 - CHIAMATE DI SISTEMA PER IL CONTROLLO DEI PROCESSI. Fabio Buttussi

Corso di Sistemi Operativi A.A. 2008-2009 - CHIAMATE DI SISTEMA PER IL CONTROLLO DEI PROCESSI. Fabio Buttussi Corso di Sistemi Operativi A.A. 2008-2009 - CHIAMATE DI SISTEMA PER IL CONTROLLO DEI PROCESSI Fabio Buttussi La programmazione di sistema Il kernel è la parte di Unix che corrisponde al sistema operativo

Dettagli

SISTEMI OPERATIVI. Processi in Linux. Giorgio Giacinto Sistemi Operativi

SISTEMI OPERATIVI. Processi in Linux. Giorgio Giacinto Sistemi Operativi SISTEMI OPERATIVI Processi in Linux 2 Creazione di processi concorrenti» La creazione di un processo figlio consente di far eseguire alcune funzionalità del programma in modo concorrente» Opzione 1 il

Dettagli

SISTEMI&OPERATIVI& AA&2013&0&2014& Processi( in(linux( Giorgio&Giacinto&2013& Sistemi&Opera?vi&

SISTEMI&OPERATIVI& AA&2013&0&2014& Processi( in(linux( Giorgio&Giacinto&2013& Sistemi&Opera?vi& SISTEMI&OPERATIVI& AA&2013&0&2014& Processi( in(linux( ( 2& Creazione(di(processi( concorren2(» La&creazione&di&un&processo&figlio&consente&di& far&eseguire&alcune&funzionalità&del&programma& in&modo&concorrente&»

Dettagli

Terza Esercitazione. Gestione di segnali in Unix Primitive signal e kill

Terza Esercitazione. Gestione di segnali in Unix Primitive signal e kill Terza Esercitazione Gestione di segnali in Unix Primitive signal e kill signal kill pause alarm sleep Primitive fondamentali Imposta la reazione del processo all eventuale ricezione di un segnale (può

Dettagli

Fondamenti di Informatica T-1 Modulo 2

Fondamenti di Informatica T-1 Modulo 2 Fondamenti di Informatica T-1 Modulo 2 Obiettivo di questa esercitazione Allocazione dinamica della memoria ed esempi di problemi tipici d esame 2 Esercizio 1 Una ditta utilizza un sistema informatico

Dettagli

Corso di Informatica 1 Esercitazione n. 7

Corso di Informatica 1 Esercitazione n. 7 Corso di Informatica 1 Esercitazione n. 7 Marco Liverani Esercizio n. 1 Letta in input una sequenza di numeri interi memorizzarli in una lista e stampare la lista stessa. Eliminare dalla lista i nodi che

Dettagli

SISTEMI OPERATIVI L-A Prova scritta parziale finale del 18 Marzo 2003

SISTEMI OPERATIVI L-A Prova scritta parziale finale del 18 Marzo 2003 COMPITO A Domanda 1 [13 punti] Si scriva un programma in C che realizzi un comando che, utilizzando le system call di unix, preveda la seguente sintassi: dove: esame filein car n1 n2 filein e` un file

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. 2017-18 Pietro Frasca Lezione 6 Martedì 24-10-2017 1 Sostituzione del codice Tipicamente, dopo una

Dettagli

Informatica I Facoltà di Ingegneria

Informatica I Facoltà di Ingegneria Informatica I Facoltà di Ingegneria Prova scritta del 13/02/2014 Si chiede di realizzare un programma per la gestione del palinsesto settimanale di una emittente radiofonica. I dati del palinsesto settimanale

Dettagli

Politecnico di Milano - Dipartimento di Elettronica, informazione e Bioingegneria Prof. Mauro Negri

Politecnico di Milano - Dipartimento di Elettronica, informazione e Bioingegneria Prof. Mauro Negri Politecnico di Milano - Dipartimento di Elettronica, informazione e Bioingegneria Prof. Mauro Negri Fondamenti di Informatica II appello 6 luglio 2015 Matricola/codice persona Cognome Nome Durata prova:

Dettagli

N:\Lavoro\Compiti\esercizi svolti\4\info \main.c mercoledì 21 maggio :11

N:\Lavoro\Compiti\esercizi svolti\4\info \main.c mercoledì 21 maggio :11 1 /***************************************************************************** 2 Compito del 11/04/2014 - Testo di R.Giannantonio soluzione di M.G. Maffucci 3 Realizzare un programma che legge n numeri

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

Sistemi Operativi (M. Cesati)

Sistemi Operativi (M. Cesati) Sistemi Operativi (M. Cesati) Compito scritto del 17 settembre 2012 Nome: Matricola: Corso di laurea: Cognome: Crediti da conseguire: 5 6 9 Scrivere i dati richiesti in stampatello. Al termine consegnare

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 20 Giovedì 22-12-2016 Comunicazione: pipe In Unix, processi possono comunicare

Dettagli

PROGRAMMA DISCIPLINARE SVOLTO a. s. 2015 / 2016

PROGRAMMA DISCIPLINARE SVOLTO a. s. 2015 / 2016 PROGRAMMA DISCIPLINARE SVOLTO a. s. 2015 / 2016 DOCENTI: TESTARDO CINZIA, VALERIO FELICI CLASSE 4 a IA DISCIPLINA TPSI MACROARGOMENTI che sono stati trattati nel corso del corrente anno scolastico (in

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. 2018-2019 Pietro Frasca Lezione 5 Martedì 16-10-2018 Operazioni sui processi Nella maggior parte dei

Dettagli

Sistemi Operativi (M. Cesati)

Sistemi Operativi (M. Cesati) Sistemi Operativi (M. Cesati) Compito scritto del 19 febbraio 2013 Nome: Matricola: Corso di laurea: Cognome: Crediti da conseguire: 5 6 9 Scrivere i dati richiesti in stampatello. Al termine consegnare

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

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

CORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 4

CORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 4 UNIVERSITÀ DEGLI STUDI DI PARMA Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica e delle Telecomunicazioni a.a. 2005-2006 CORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 4 1 Funzioni per il

Dettagli

Esercizio 1 Liste: calcolo del numero di elementi ripetuti in una lista

Esercizio 1 Liste: calcolo del numero di elementi ripetuti in una lista Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 11 Esercitazione: 27 gennaio 2005 Esercizi su liste, ricorsione, file. Scaletta Esercizio 1 Liste: calcolo del numero di

Dettagli

Fondamenti di Informatica 2

Fondamenti di Informatica 2 Fondamenti di Informatica 2 della prova scritta del 19 Settembre 2006 Esercizio 1 (4 punti) Date le seguenti variabili int pari; int dispari; Stat; Stat s; A[] = 2,3,7,-2,5,-8,-4; int N = 7; int i; Scrivere

Dettagli

Sistemi Operativi (M. Cesati)

Sistemi Operativi (M. Cesati) Sistemi Operativi (M. Cesati) Compito scritto del 1 febbraio 2016 Nome: Matricola: Corso di laurea: Cognome: Crediti da conseguire: 5 6 9 Scrivere i dati richiesti in stampatello. Al termine consegnare

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

Compito scritto 12 Luglio 2004

Compito scritto 12 Luglio 2004 Laboratorio di Sistemi Operativi: Prof.ssa A. Rescigno Anno Acc. 2003-2004 Classe 2 Compito scritto 12 Luglio 2004 Università di Salerno Nome e Cognome: Matricola: 1 2 3 4 5 6 7 tot /10 /12 /8 /12 /10

Dettagli

Seconda Esercitazione. Gestione di processi in Unix Primitive Fork, Wait, Exec

Seconda Esercitazione. Gestione di processi in Unix Primitive Fork, Wait, Exec Seconda Esercitazione Gestione di processi in Unix Primitive Fork, Wait, Exec System call fondamentali fork exit wait exec Generazione di un processo figlio, che condivide il codice con il padre e possiede

Dettagli

Sommario FONDAMENTI DI INFORMATICA 1. Il tipo FILE. Passaggio da standard I/O. LINGUAGGIO C Gestione dei file

Sommario FONDAMENTI DI INFORMATICA 1. Il tipo FILE. Passaggio da standard I/O. LINGUAGGIO C Gestione dei file Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica (Industriale), Chimica, Meccanica, Elettrica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011

Dettagli

Politecnico di Torino

Politecnico di Torino Politecnico di Torino INFORMATICA II Esame del 29 Novembre 2008 Un file di testo di lunghezza ignota contiene le misure delle potenze di segnale radio di vari Access Point [AP] (l apparecchiatura che viene

Dettagli

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 26 Novembre 2014 COGNOME E NOME RIGA COLONNA MATRICOLA

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 26 Novembre 2014 COGNOME E NOME RIGA COLONNA MATRICOLA Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 26 Novembre 2014 COGNOME E NOME RIGA COLONNA MATRICOLA Spazio riservato ai docenti Il presente plico contiene

Dettagli

Ogni parte non cancellata a penna sarà considerata parte integrante della soluzione.

Ogni parte non cancellata a penna sarà considerata parte integrante della soluzione. Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Appello del 20 Luglio 2011 COGNOME E NOME RIGA COLONNA MATRICOLA Spazio riservato ai docenti Il presente plico contiene 3 esercizi

Dettagli

Fondamenti di Informatica 2

Fondamenti di Informatica 2 Fondamenti di Informatica 2 della prova scritta del 25 Luglio 2006 Esercizio 1 (4 punti) Date le seguenti variabili int A[] = 2,3,7,-2,5,-8,-4; int N = 7; int i; Scrivere la porzione di codice che sostituisca

Dettagli

Laboratorio di Sistemi Operativi

Laboratorio di Sistemi Operativi primavera 2009 Controllo dei processi (2) Funzioni wait e waitpid quando un processo termina il kernel manda al padre il segnale SIGCHLD il padre può ignorare il segnale (default) oppure lanciare una funzione

Dettagli

ESERCIZIO 1 (5 punti) Convertire in binario il valore, espresso in decimale, Si usi la rappresentazione in virgola fissa.

ESERCIZIO 1 (5 punti) Convertire in binario il valore, espresso in decimale, Si usi la rappresentazione in virgola fissa. PROVA SCRITTA DEL CORSO DI CORSO DI LAUREA IN INGEGNERIA BIOMEDICA ED ELETTRICA 23/9/2008 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO 1 (5 punti) Convertire

Dettagli

Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria Elettronica. SISTEMI OPERATIVI A.A. 2004/2005 Docente: Giorgio Giacinto

Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria Elettronica. SISTEMI OPERATIVI A.A. 2004/2005 Docente: Giorgio Giacinto Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria Elettronica SISTEMI OPERATIVI A.A. 2004/2005 Docente: Giorgio Giacinto fork() & exec() Roberto Perdisci A.A. 2004/2005 1 Dettagli

Dettagli

Fondamenti di Informatica 1 - Compito A

Fondamenti di Informatica 1 - Compito A Fondamenti di Informatica 1 - Compito A Prof. Marco Gavanelli 18 Giugno 2007 Esercizio (16 punti) Un programma in linguaggio C deve accedere ad un database di studenti, memorizzato in un file binario studenti.bin.

Dettagli

Programmazione di sistema in Linux: System Call per i Segnali. E. Mumolo

Programmazione di sistema in Linux: System Call per i Segnali. E. Mumolo Programmazione di sistema in Linux: System Call per i Segnali E. Mumolo Eventi asincroni: segnali I segnali permettono la gestione di eventi asincroni che interrompono il normale funzionamento di un 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. 2017-18 Pietro Frasca Lezione 9 Giovedì 2-11-2017 Comunicazione con pipe Oltre che con la memoria condivisa

Dettagli

Interprocess communication: Pipe

Interprocess communication: Pipe Interprocess communication: Pipe Affinché due processi possano cooperare, è spesso necessario che comunichino fra loro dei dati. Una prima possibile soluzione a questo problema consiste nell utilizzo condiviso

Dettagli

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 26 Novembre 2014 COGNOME E NOME RIGA COLONNA MATRICOLA

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 26 Novembre 2014 COGNOME E NOME RIGA COLONNA MATRICOLA Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 26 Novembre 2014 COGNOME E NOME RIGA COLONNA MATRICOLA Spazio riservato ai docenti Il presente plico contiene

Dettagli

Lab 16 Gestione file binari"

Lab 16 Gestione file binari Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 16 Gestione file binari" Lab16 1 Esercizio 1" n Un registratore di cassa registra su di un file binario alcuni

Dettagli

PROVA SCRITTA DEL CORSO DI CORSO DI LAUREA IN INGEGNERIA BIOMEDICA ED ELETTRICA 9/6/2008

PROVA SCRITTA DEL CORSO DI CORSO DI LAUREA IN INGEGNERIA BIOMEDICA ED ELETTRICA 9/6/2008 PROVA SCRITTA DEL CORSO DI CORSO DI LAUREA IN INGEGNERIA BIOMEDICA ED ELETTRICA 9/6/2008 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO 1 (5 punti) Descrivere

Dettagli

Informazioni Utili. Fondamenti di Informatica L-B (L-Z) Esercitazioni. A.A. 2005/06 Tutor: Loris Cancellieri

Informazioni Utili. Fondamenti di Informatica L-B (L-Z) Esercitazioni. A.A. 2005/06 Tutor: Loris Cancellieri Fondamenti di Informatica L-B (L-Z) Esercitazioni A.A. 2005/06 Tutor: Loris Cancellieri loris.cancellieri@studio.unibo.it Informazioni Utili Orario delle Esercitazioni Lunedì 14-16 Gruppo L Q Martedì 16-18

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

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

#include <stdio.h> #include <stdlib.h> #define L 20 void Proc(char [], int); int N=L; main () { char *s; int i;

#include <stdio.h> #include <stdlib.h> #define L 20 void Proc(char [], int); int N=L; main () { char *s; int i; Fondamenti di Informatica L-A (A.A. 2002/2003) - Ingegneria Informatica Prof.ssa Mello & Prof. Bellavista Prova d Esame di Martedì 09/09/2003 durata 2h:30m ESERCIZIO 1 (12 punti) Si scriva una procedura

Dettagli

3 Costrutti while, for e switch

3 Costrutti while, for e switch Questa dispensa propone esercizi sulla scrittura di algoritmi, in linguaggio C, utili alla comprensione dei costrutti while e for e switch. I costrutti per costruire cicli in C sono il while (e la variante

Dettagli

Politecnico di Milano - Dipartimento di Elettronica, informazione e Bioingegneria Prof. Mauro Negri

Politecnico di Milano - Dipartimento di Elettronica, informazione e Bioingegneria Prof. Mauro Negri Politecnico di Milano - Dipartimento di Elettronica, informazione e Bioingegneria Prof. Mauro Negri Fondamenti di Informatica II appello 5 luglio 2014 Matricola Cognome Nome Istruzioni Durata prova: 2

Dettagli

Fondamenti di Informatica e Laboratorio T-AB Prova Pratica - 12 Dicembre 2008 Compito A

Fondamenti di Informatica e Laboratorio T-AB Prova Pratica - 12 Dicembre 2008 Compito A Prima di cominciare: si scarichi il file StartKit1A.zip contenente i file di esempio. Avvertenze per la consegna: nominare i file sorgenti come richiesto nel testo del compito, apporre all inizio di ogni

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

Riepilogo sulla Concorrenza

Riepilogo sulla Concorrenza Riepilogo sulla Concorrenza Passi per la costruzione di un programma concorrente Prima di tutto, definire se la concorrenza avviene mediante Processi concorrenti o Thread concorrenti Definizione delle

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

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

Fondamenti di Informatica 2

Fondamenti di Informatica 2 Fondamenti di Informatica 2 della prova scritta del 27 Giugno 2006 Esercizio 1 (4 punti) Date le seguenti variabili int A[] = 2,3,7,-2,5,8,-4; int N = 7; int i; Scrivere la porzione di codice che sostituisca

Dettagli

ESERCITAZIONE 2 fork e exec

ESERCITAZIONE 2 fork e exec ESERCITAZIONE 2 fork e exec Richiami di scripting Ripassiamo: Differenza tra pipe e ridirezione su file Come si accede agli argomenti di un invocazione Sintassi dell if Sintassi del for Pipe e ridirezione

Dettagli

Esercizio 1. Esercizio 1 - Soluzione

Esercizio 1. Esercizio 1 - Soluzione Esercizio 1 Realizzare un programma che, aperto un file di testo di nome Prova.txt in modalità scrittura, provveda a leggere da input delle parole separate da spazi (stringhe di al più 63 caratteri) e

Dettagli

Politecnico di Milano - Dipartimento di Elettronica e informazione Prof. Mauro Negri

Politecnico di Milano - Dipartimento di Elettronica e informazione Prof. Mauro Negri Politecnico di Milano - Dipartimento di Elettronica e informazione Prof. Mauro Negri Fondamenti di Informatica II appello 15 luglio 2013 Matricola Cognome Nome Istruzioni Durata prova: 2 ore LE RISPOSTE

Dettagli

Crea un nuovo processo. Al processo padre ritorna il PID del figlio. Al processo figlio ritorna 0

Crea un nuovo processo. Al processo padre ritorna il PID del figlio. Al processo figlio ritorna 0 Crea un nuovo processo. Al processo padre ritorna il PID del figlio. Al processo figlio ritorna 0 Sequenza di operazioni di fork: * alloca una entry nella tabella dei processi * assegna un unico ID al

Dettagli

Corso di Programmazione Concorrente. Semafori. Valter Crescenzi

Corso di Programmazione Concorrente. Semafori. Valter Crescenzi Corso di Programmazione Concorrente Semafori Valter Crescenzi http://crescenzi.inf.uniroma3.it Semafori vs Semafori di Dijkstra Rispetto alla versione presentata astrattamente, le chiamate di sistema Linux/UNIX

Dettagli

GESTIONE DELLA COMUNICAZIONE LOCALE TRA PROCESSI IN UNIX:

GESTIONE DELLA COMUNICAZIONE LOCALE TRA PROCESSI IN UNIX: GESTIONE DELLA COMUNICAZIONE LOCALE TRA PROCESSI IN UNIX: Il primo meccanismo di comunicazione tra processi locali in ambiente Unix e stato il meccanismo delle pipe. Per processo locale si intende un processo

Dettagli

Esercitazione 2. Corso di Fondamenti di Informatica

Esercitazione 2. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 2 Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

Sistemi Operativi (M. Cesati)

Sistemi Operativi (M. Cesati) Sistemi Operativi (M. Cesati) Compito scritto del 16 luglio 2014 Nome: Matricola: Corso di laurea: Cognome: Crediti da conseguire: 5 6 9 Scrivere i dati richiesti in stampatello. Al termine consegnare

Dettagli

Fondamenti di Informatica L-B (L-Z) Esercitazioni. A.A. 2007/08 Tutor: Barbara Pettazzoni

Fondamenti di Informatica L-B (L-Z) Esercitazioni. A.A. 2007/08 Tutor: Barbara Pettazzoni Fondamenti di Informatica L-B (L-Z) Esercitazioni A.A. 2007/08 Tutor: Barbara Pettazzoni barbara.pettazzoni@studio.unibo.it Informazioni Utili Orario delle Esercitazioni Martedì 14-16 Gruppo L Q Martedì

Dettagli

Cognome Domanda Nome Punteggio max

Cognome Domanda Nome Punteggio max Fondamenti di Informatica - Proff. C. Bolchini, E. Di Nitto, F. Distante Corso di laurea in Ingegneria Meccanica e Aerospaziale Appello del 18 giugno 2002 Cognome Domanda 1 2 3 4 5 Nome Punteggio max 5

Dettagli

Esercizio sulla gestione di file in Unix. Sistemi Operativi T AA

Esercizio sulla gestione di file in Unix. Sistemi Operativi T AA Esercizio sulla gestione di file in Unix Sistemi Operativi T AA 2011-2012 1 Esercizio Si vuole realizzare un programma C che, utilizzando le system call di Unix, realizzi uno schema di comunicazione tra

Dettagli

case 0: /* child 1 - writing end */ close(fd[0]); // close read end write(fd[1], string, (strlen(string)+1));/* +1 is termination \0 */ return (0);

case 0: /* child 1 - writing end */ close(fd[0]); // close read end write(fd[1], string, (strlen(string)+1));/* +1 is termination \0 */ return (0); ESERCIZIO RELATIVO ALLA PARTE DI UNIX (3 punti) Si scriva un programma per realizzare la comunicazione unidirezionale via pipe fra due processi fratelli, in cui un fratello invia all altro la stringa "Good

Dettagli

Lab 09 Gestione file di testo

Lab 09 Gestione file di testo Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2010/2011 Lab 09 Gestione file di testo Lab15 1

Dettagli

Esercitazione: Utilizzo delle Pipe

Esercitazione: Utilizzo delle Pipe Esercitazione: Utilizzo delle Pipe Specifica del problema Struttura generale del programma Esempio per Unix Esempio per Windows 1 Esercizio Realizzazione di una semplice shell che sia in grado di accettare

Dettagli

Quinta Esercitazione. Principali primitive di accesso ai File

Quinta Esercitazione. Principali primitive di accesso ai File Esempio: processi padre e figlio condividono di file aperti PRIMA della creazione Quinta Esercitazione Gestione File-System Segnali processo padre fork() Sistema tabella dei file attivi i-node Eugenio

Dettagli

Politecnico di Milano - Dipartimento di Elettronica, informazione e Bioingegneria Prof. Mauro Negri. Fondamenti di Informatica II prova in itinere

Politecnico di Milano - Dipartimento di Elettronica, informazione e Bioingegneria Prof. Mauro Negri. Fondamenti di Informatica II prova in itinere Politecnico di Milano - Dipartimento di Elettronica, informazione e Bioingegneria Prof. Mauro Negri Fondamenti di Informatica II prova in itinere 14 febbraio 2014 Matricola Cognome Nome Istruzioni Durata

Dettagli

LABORATORIO di INFORMATICA

LABORATORIO di INFORMATICA Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto ESERCIZI - 1 http://www.diee.unica.it/giacinto/lab

Dettagli

Esercitazione n. 8. Processi

Esercitazione n. 8. Processi Esercitazione n. 8 Processi (in ambiente GNU/Linux) dott. Carlo Todeschini tode@cremona.polimi.it Politecnico di Milano A.A. 2010/2011 Queste slide sono distribuite con licenza Creative Commons Attribuzione-Non

Dettagli

Fondamenti di Informatica L-A

Fondamenti di Informatica L-A Fondamenti di Informatica L-A Esercitazione del 30/11/07 Ing. Giorgio Villani Ripasso Teoria File dati ES: nome.dat Leggere fopen( nome_file, rb ); fread(void *vet, int size, int n, FILE *fp); Scrivere

Dettagli

Lab 11 Gestione file binari

Lab 11 Gestione file binari Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2010/2011 Lab 11 Gestione file binari Lab16 1 Lab16

Dettagli

In generale può essere utile che i due processi eseguano del codice diverso

In generale può essere utile che i due processi eseguano del codice diverso System call FORK P fork() ha l aspetto di una funzione C, in realtà è una system call, una chiamata al sistema operativo fork() P P Il processo P' è una copia di P esegue lo stesso codice e possiede una

Dettagli

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 26 Novembre 2014 COGNOME E NOME RIGA COLONNA MATRICOLA

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 26 Novembre 2014 COGNOME E NOME RIGA COLONNA MATRICOLA Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 26 Novembre 2014 COGNOME E NOME RIGA COLONNA MATRICOLA Spazio riservato ai docenti Il presente plico contiene

Dettagli

Fondamenti di Informatica T-1, 2015/2016 Modulo 2. Prova d Esame 1A di Giovedì 14 Gennaio 2016 tempo a disposizione 2h

Fondamenti di Informatica T-1, 2015/2016 Modulo 2. Prova d Esame 1A di Giovedì 14 Gennaio 2016 tempo a disposizione 2h Avvertenze per la consegna: apporre all inizio di ogni file sorgente un commento contenente i propri dati (cognome, nome, numero di matricola) e il numero della prova d esame. Al termine, consegnare tutti

Dettagli

Esercizio 1 Soluzione

Esercizio 1 Soluzione Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2010/2011 Lab 06 Array Lab06 1 Esercizio 1 Creare

Dettagli