ACSO Architettura dei Calcolatori e Sistemi Operativi

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "ACSO Architettura dei Calcolatori e Sistemi Operativi"

Transcript

1 olitecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Cristina Silvano ACSO Architettura dei Calcolatori e Sistemi Operativi rova di venerdì 26 Febbraio 200 Cognome Nome Matricola Firma Istruzioni Scrivere solo sui fogli distribuiti. Non separare questi fogli. È vietato portare all esame libri, eserciziari, appunti, calcolatrici e telefoni cellulari. A Chiunque fosse trovato in possesso di documentazione relativa al corso anche se non strettamente attinente alle domande proposte vedrà annullata la prova. Non è possibile lasciare l aula conservando il tema della prova in corso. Tempo a disposizione: 2 ore. Valore indicativo di domande ed esercizi, voti parziali e voto finale: RIMA ARTE DEL CORSO Esercizio (5 punti) Esercizio 2 (6 punti) Esercizio 3 (5 punti) Totale (6 punti) SECONDA ARTE DEL CORSO Esercizi 4 (5 punti) Esercizio 5 (6 punti) Esercizi 6 (5 punti) Totale (6 punti) ESAME COMLETO: ARTE RIMA + ARTE SECONDA I NUMERI INDICANO I UNTEGGI AROSSIMATIVI. ACSO rova del 26 Febbraio 200 agina di 6

2 RIMA ARTE DEL CORSO Esercizio : modello thread e parallelismo Si consideri il programma C seguente (gli include necessari sono omessi): pthread_mutex_t exclude = THREAD_MUTEX_INITIALIZER; sem_t sync; int counter = ; void *th_fun( void *arg ) int v = (int) arg; int v2; pthread_mutex_lock( &exclude ); v2 = counter; counter += v; /* STATEMENT S */ pthread_mutex_unlock( &exclude ); return ( void * ) v2; } void *th2_fun( void *arg ) int v3 = (int) arg; sem_wait( &sync ); pthread_mutex_lock( &exclude ); counter += v3; /* STATEMENT S2 */ pthread_mutex_unlock( &exclude ); counter = 0; return NULL; } int main( int argc, char **argv ) pthread_t th, th2; int pc; sem_init( &sync, 0, 0 ); pthread_create( &th, NULL, th_fun, (void *) ); pthread_create( &th2, NULL, th2_fun, (void *) 0); pthread_join( th, (void*) &pc ); sem_post( &sync ); /* STATEMENT S3 */ pthread_join( th2, NULL ); return pc; } Si completi la tabella seguente, indicando gli stati delle variabili negli istanti di tempo specificati. Una variabile può essere di tipo intero, carattere o stringa. Lo stato di una variabile va indicato come segue: valore dell intero, del carattere o della stringa, quando la variabile esiste e ha un solo valore NE, quando la variabile non esiste (in quanto non esiste il thread) X, quando la variabile esiste ma non è stata ancora inizializzata quando la variabile si può trovare in due stati differenti, si deve scegliere e indicare esplicitamente una tra le quattro combinazioni seguenti, le quali esauriscono l insieme di possibilità: o valore / valore2 ha due valori ben definiti o valore / NE ha un valore ben definito oppure non esiste o valore / X ha un valore ben definito oppure non è stata inizializzata o X / NE non è stata inizializzata o non esiste U, quando la variabile si può trovare in tre o più stati in qualsiasi combinazione ACSO rova del 26 Febbraio 200 agina 2 di 6

3 Si presti attenzione alla colonna condizione. In particolare, con la dicitura subito dopo statement X si richiedono gli stati che le variabili possono assumere tra lo statement X e lo statement immediatamente successivo del thread indicato nella condizione stessa. Condizione Variabile v (th_fun) Variabile v2 (th_fun) Variabile v3 (th2_fun) Variabile globale counter Semaforo globale sync Variabile pc (main) Subito dopo statement S in th_fun U (ovvero) 0/NE/X 2 0 X Subito dopo statement S2 in th2_fun NE NE Subito dopo statement S3 in main NE NE U (ovvero) 0/NE/X 0/2 0/ Si indichi, nello spazio seguente, a) la definizione di deadlock nel contesto dei thread e del parallelismo e b) si indichi se, eventualmente, è possibile che venga a crearsi un deadlock nel codice di cui sopra: SAZIO ER LA RISOSTA: (OVVIAMENTE NON E OSSIBILE CHE VENGA A CREARSI UN DEADLOCK OICHE NON VI SONO ATTESE CIRCOLARI). ACSO rova del 26 Febbraio 200 agina 3 di 6

4 Esercizio 2: nucleo e commutazione tra processi Si consideri il seguente frammento di programma: #define len 00 #define len2 200 #define len3 50 main ( ) int pid, pid2; int fd; char buf[len2];... pid = fork(); fd = open ( /dir/file2, O_RDWR); if(pid == 0) /* codice di figlio del processo */ read (fd, buf, len);... exit (); } else /* codice eseguito da */ pid2 = fork(); if(pid2 == 0) /* codice eseguito da R figlio di */ read(fd, buf, len2);... exit(); } else /* codice eseguito da */ pid2 = waitpid (pid2, &status, 0); read (fd, buf, len3); pid = waitpid (pid, &status, 0); read (fd, buf, len3); } /* end if */ } /* end if */ } /* main.c */ Specifiche del sistema. Il processo crea i processi ed R; il processo idle ha priorità minima e non esistono altri processi nel sistema. 2. Le priorità relative a tutti i proccesi attivi nel.sistema sono indicate, quando necessario, nella tabella di commutazione dei processi da completare. 3. Si ricorda che quando un processo diventa pronto e ha priorità maggiore di quello in esecuzione, lo scheduler deve venire attivato 4. le chiamate di sistema wait e waitpid invocano Sleep_on su un evento opportuno per completare la tabella delle commutazioni, si faccia riferimento alla notazione vista a lezione ACSO rova del 26 Febbraio 200 agina 4 di 6

5 Domanda Si completino le parti mancanti della seguente tabella di commutazione dei processi. Nella tabella è specificato l evento e alcune informazioni aggiuntive. In questo caso sono da completare le parti relative a moduli del S.O., contesto e stato dei processi. Evento (preceduto dal contesto del processo in cui si verifica) Informazioni aggiuntive : fork non ha esaurito il suo quanto di tempo : open si mette in attesa di interrupt DMA_in : interrupt non ha DMA_in esaurito il suo quanto di associato alla tempo. > open di : read legge i dati; la open di ha quindi avuto successo, ma i dati devono essere caricati : fork non ha esaurito il suo quanto di tempo : waitpid si mette in attesa di pid2 Moduli del S.O. per gestire l evento G_SVC_ fork G_SVC_2/3 G_SVC_ open Sleep_on(E)_ Change G_SVC_2/3 R_Int_(DMA_in)_ Wake_up(E) R_Int(DMA_in)_2 G_SVC_ read Sleep_on(E2)_ Change G_SVC_2/3 G_SVC_ fork G_SVC_2/3 G_SVC_ waitpid Sleep_on (E3)_ Change G_SVC_2/3 R_Int_(DMA_in)_ Wake_up(E2) R_Int(DMA_in)_2 R: interrupt R non ha DMA_in esaurito il suo quanto di associato alla tempo. R> read di R: exit > G_SVC_ Wake_up(E3) exit Sleep_on(E3)_2 G_SVC_2/3 rocesso nel cui contesto l evento si verifica R R R R R R R R Stato dei processi dopo la gestione dell evento. R Esec U pronto Non esiste Attesa(E) Esec U Non esiste ronto Esec U Non esiste Esec U Attesa(E2) Non esiste Esec U Attesa(E2) pronto Attesa(E3) Attesa(E2) Esec U Attesa(E3) ronto Esec U Esec U ronto Non esiste ACSO rova del 26 Febbraio 200 agina 5 di 6

6 : interrupt da orologio ha esaurito il suo quanto di tempo R_Int (CK)_ reempt_ Change Sleep_on(E2)_2 G_SVC_2/3 : exit G_SVC_ exit preempt_2 R_Int(CK)_2 ronto Esec U Non esiste Esec U Non esiste Non Esiste ACSO rova del 26 Febbraio 200 agina 6 di 6

7 Esercizio 3: File system Si consideri un calcolatore dotato di sistema operativo Linux e in cui valgono le seguenti ulteriori specifiche:. per tutte le operazioni su file: a) la dimensione di un blocco trasferito in DMA da o su file è di 52 byte b) l interruzione di fine DMA è associata al trasferimento di un singolo blocco c) il sistema deve garantire che, per tutti i file aperti, il blocco contenente la posizione corrente sia in memoria 2. per la lettura e scrittura su file: d) le operazioni di lettura e scrittura su file accedono sempre a disco, cioè è sempre necessario eseguire trasferimenti in DMA 3. per l apertura del file: DOMANDA e) è sempre necessario trasferire in DMA: - blocco per l accesso allo I-node di ogni cartella (catalogo) o file presente nel nome-percorso (pathname) (tranne che per la cartella radice), e - blocco per il contenuto di ogni cartella (catalogo) presente nel nome-percorso (pathname) f) Le chiamate di sistema sono DIENDENTI e rimangono a disposizione in memoria blocchi allocati/letti dalle precedenti chiamate di sistema er ciascuna delle chiamate di sistema sotto riportate si indichi la posizione corrente nel file dopo la chiamata, il numero totale di interruzioni di fine DMA che si verificano affinché l operazione possa essere completata, la sequenza di accessi agli i-node e ai blocchi (del tipo: I-Lista[X] oppure Blocco Y) in memoria principale (MM) o su disco (vedi anche le prime due righe di esempio di soluzione in tabella) Chiamata di sistema osizione corrente nel file dopo la chiamata di sistema n. di interruzioni di fine DMA Sequenza di accessi in memoria (MM) o disco. fd=open( /cat/cat2/file, O_RDONLY) 0 fd2=open( /cat/cat3/file2, O_RDONLY) 0 - (totale 7) (totale 4) I-lista[0] in MM Blocco 4 I-lista[6] Blocco 9 I-Lista[0] Blocco 2 I-Lista[60] Blocco 56 I-lista[0] in MM Blocco 4 in MM I-lista[6] in MM Blocco 9 in MM I-Lista[7] Blocco 8 I-Lista[86] Blocco 70 ACSO rova del 26 Febbraio 200 agina 7 di 6

8 read (fd, buf, 3) 3 read (fd2, buf2, 6) 6 read(fd2, buf3, 00) 06 totale 0 totale (totale 2) I-Lista [60] in MM Blocco 56 in MM I-Lista [86] in MM Blocco 70 in MM I-Lista[86] in MM Blocco 70 in MM Blocco 72 Blocco 80 Il contenuto del volume durante l esecuzione è il seguente: I-Lista:<0,dir,4>,<6,dir,9>,<7,dir,8>,<0,dir,2>,<60,norm,56}>, <86,norm,70,72,80}>,<92,norm,90}> Blocco 4: < 6, cat> Blocco 9: < 7, cat3 > <0, cat2> Blocco 2: < 60, file> Blocco 8: < 92, file3> <86, file2> Blocco 56: BLOCCO_FILE Blocco 70: BLOCCO_FILE2 Blocco 72: BLOCCO2_FILE2 Blocco 80: BLOCCO3_FILE2 Blocco 90: BLOCCO_FILE3 Nota: er facilitare la comprensione dell esercizio, i blocchi dati dei file sono stati indicati come: BLOCCOn_FILEi Nota bene: lo i-node associato al catalogo radice / ha 0 come i-number; la i-lista contiene terne <i-number, tipo_file, indice_blocchi}>; i cataloghi contengono coppie < i-number, nome_file>. (a) Lettura in memoria dello I-node della radice. Letture da disco: blocco 4 di dati della cartella radice /, blocco di i-nodo 6 della cartella cat, blocco 9 di dati della cartella cat, blocco di i-nodo 0 della cartella cat2, blocco 2 di dati della cartella cat2, blocco di i-nodo 60 del file file, blocco 56 primo blocco di dati del file file ; totale 7 blocchi ovvero 7 interruzioni di fine DMA (b) Lettura in memoria dello I-node della radice, del blocco 4 di dati della cartella radice /, del blocco di i- nodo 6 della cartella cat, del blocco 9 di dati della cartella cat. Letture da disco: blocco di i-nodo 7 della cartella cat3, blocco 8 di dati della cartella cat3, blocco di i-nodo 86 del file file2, blocco 70 primo blocco di dati del file file2 ; totale 4 blocchi letti effettivamente da disco ovvero 4 interruzioni di fine DMA (c) la chiamata legge 3 byte dal file con descrittore fd e dopo la lettura la posizione corrente varrà 3 (che cade sempre nel primo blocco); essa deve pertanto leggere l i-node 60 del file e il primo blocco del file che risiedono già in memoria, ovvero non necessita di accessi al disco. (d) la chiamata legge 6 byte dal file con descrittore fd2 e dopo la lettura la posizione corrente varrà 6 (che cade sempre nel primo blocco); essa deve pertanto leggere l i-node 86 e il primo blocco del file che risiedono già in memoria, ovvero non necessita di accessi al disco. (e) la chiamata legge 00 byte dal file con descrittore fd2 a partire dalla posizione corrente 6 (che cade nel primo blocco) e dopo la lettura la posizione corrente varrà 06 (che cade nel terzo blocco); essa deve pertanto leggere l i-node 86 e il primo blocco del file che risiedono già in memoria, e successivamente deve leggere i successivi blocchi del file che risiedono su disco usando i rispettivi puntatori disponibili nello i-node 86 del file già caricato in memoria. Gli accessi dal secondo al terzo blocco avvengono per accesso diretto tramite i puntatori. In totale è stato necessario accedere a 2 blocchi su disco corrispondenti a 2 interruzioni di fine DMA. ACSO rova del 26 Febbraio 200 agina 8 di 6

9 SECONDA ARTE DEL CORSO Esercizio 4: Logica digitale rima parte Si vuole realizzare un circuito combinatorio a quattro ingressi (a, b, c, d) e un uscita F, caratterizzato dai mintermini seguenti 0, 2, 6, 7, 8, 9, 2, 3, 4, 5}. Si chiede di svolgere i punti seguenti: (a) Si scriva la prima forma canonica di F: F(a, b, c, d) = SOLUZIONE: F(a, b, c, d) =!a!b!c!d +!a!b c!d +!a b c!d +!a b c d + a!b!c!d + a!b!c d + a b!c!d + a b!c d + a b c!d + a b c d (b) Si semplifichi la funzione F mediante il metodo delle mappe di Karnaugh e se ne scriva l equazione minima in termini di somma di prodotti. ualora esistano più equazioni minime le si indichino tutte. Si disegni anche la mappa mettendo in evidenza gli implicanti utilizzati per le equazioni minime (il numero di righe date sotto non è significativo): F(a, b, c, d) = F(a, b, c, d) = F(a, b, c, d) = SOLUZIONE: F( a, b c, d) = b c + a!c +!a!b!d (copertura minima unica) a b / c d ACSO rova del 26 Febbraio 200 agina 9 di 6

10 Seconda parte Si minimizzi l espressione algebrica sotto riportata utilizzando le proprietà e i teoremi dell algebra di commutazione mostrando ogni passaggio effettuato: G(a, b, c, d) = a b + a b!c d e + a b c d e +!a!b +!a!b!c d e +!a!b c d e + a b!d e Espressione trasformata Teorema utilizzato a b + a b!c d e + a b c d e +!a!b +!a!b!c d e +!a!b c d e + a b!d e a b ( +!c d e + c d e +!d e) +!a!b ( +!c d e + c d e) a b + +!a!b r. Distrib. r. Assorb. ACSO rova del 26 Febbraio 200 agina 0 di 6

11 Esercizio 5: Conversione da C ad assembly Si chiede di tradurre in linguaggio macchina simbolico (linguaggio assemblatore) M68000 la funzione f riportata qui sotto. Nel tradurre non si tenti di accorpare od ottimizzare insieme istruzioni C indipendenti. La memoria ha parole da 6 bit, indirizzi da 32 bit ed è indirizzabile per byte. Le variabili intere sono da 6 bit. Ulteriori specifiche al problema e le convenzioni da adottare nella traduzione sono le seguenti: i parametri di tutte le funzioni sono passati sulla pila in ordine inverso di elencazione; i valori restituiti dalle funzioni ai rispettivi chiamanti sono passati sulla pila, sovrascrivendo il primo dei parametri passati o nello spazio libero opportunamente lasciato; le variabili locali vengono impilate in ordine di elencazione; le funzioni devono sempre salvare i registri che utilizzano; la funzione read(int fd, char *buf, int size) riceve un descrittore di file fd intero, un puntatore a carattere buf ed il numero di caratteri da leggere size e ritorna il numero di caratteri letti in un numero intero sullo stack. Si chiede di:. Riportare, nelle tabelle predisposte, il contenuto dell area di attivazione della funzione f così come risulta subito dopo l esecuzione della relativa istruzione LINK presente nella funzione. Si mostri anche dove puntano i registri S e F e quanto valgono gli spiazzamenti in byte degli elementi che costituiscono l area stessa. Si noti che lo stack cresce verso indirizzi di memoria inferiori. 2. Derivare l albero sintattico dell espressione read(stdin, buf, b+a) ipotizzando che tutte le operazioni aritmetiche vengano effettuate con i valori nei registri e il passaggio dei parametri a funzione via stack. Effettuare la numerazione dei nodi dell albero utilizzando l algoritmo di visita noto e l allocazione dei registri necessari. 3. Scrivere il codice in linguaggio assemblatore M68000 della funzione f coerente con le specifiche e con le risposte ai punti precedenti (il numero di righe non è significativo). 4. Nello scrivere il codice in linguaggio assemblatore M68000, utilizzare gli spiazzamenti attraverso simboli definiti con direttive EU invece che semplicemente il loro valore numerico. #define stdin 2 int f(char *buf, int a, int b) while(read(stdin, buf, b+a)) if(buf[0]==0) return 0; } return ; } ACSO rova del 26 Febbraio 200 agina di 6

12 AREA DI ATTIVAZIONE DELLA FUNZIONE F DOO LA LINK: contenuto celle spiazzamento in bytes rispetto a frame pointer OLD FRAME OINTER 0 INDIRIZZO DI RITORNO 4 BUF 8 A 2 B 4 CELLA GIA IENA Indirizzi di memoria alti CELLA GIA IENA ALBERO SINTATTICO read(stdin, buf, b+a) ACSO rova del 26 Febbraio 200 agina 2 di 6

13 CODICE MACCHINA DI F STDIN: EU 0 BUF: EU 8 A: EU 2 B: EU 4 F: LINK #0, F MOVEM.L D0-D3/A0, -(S) WHILE: MOVE.W A(F), D0 MOVE.W B(F), D ADD.W D0, D MOVE.W D, -(S) MOVE.L BUF(F), D2 MOVE.L D2, -(S) MOVE.W #STDIN, -(S) BSR READ ADDA #6, S MOVE.W (S)+, D3 TST.W D3 BE ENDWHILE BODY: MOVE.W BUF(F), A0 MOVE.B (A0), D0 BNE WHILE MOVE.W #0, B(F) MOVEM.L (S)+, D0-D3/A0 UNLINK F RTS ENDWHILE MOVE.W #, B(F) MOVEM.L (S)+, D0-D3/A0 UNLINK F RTS ACSO rova del 26 Febbraio 200 agina 3 di 6

14 Esercizio 6: Microprogrammazione RIMA ARTE Lo schema riportato qui a destra illustra l architettura di processore a bus singolo di riferimento. Si scriva la sequenza di passi di controllo dell'istruzione seguente: JSR destinazione che si vuole aggiungere all'instruction Set Architecture del processore. Essa realizza il salto a sotto-programma, per cui impila l'indirizzo di ritorno e salta all'indirizzo specificato nell'etichetta destinazione, la cui rappresentazione richiede 4 byte, pertanto l'ingombro complessivo dell'istruzione è di 8 byte. Si supponga l unità di controllo sia di tipo cablato. SI COMILI LA TABELLA SEGUENTE (il numero di righe non è significativo) ASSO ORDINI Operazioni (in RTL) MARin, Cout, Zin, select 4, add, read MAR <- [C], Z <- [C] + 4, leggi da memoria 2 Cin, Zout, Vin, WMFC C <- [Z], V <- [Z], attendi MFC 3 IRin, MDRout IR <- [MDR] MARin, Cout, Zin, select 4, add, read 4 MAR <- [C], Z <- [C] + 4, leggi da memoria 5 TEMin, Zout, WMFC TEM <- [Z], attendi MFC 6 Cin, MDRout C <- [MDR] 7 Zin, Sout, select 4, sub Z <- [S] Sin, Zout, MARin S <- [Z], MAR <- [Z] 9 MDRin, TEMout, write, WMFC MDR <- [TEM], scrivi, attendi MFC 0 ACSO rova del 26 Febbraio 200 agina 4 di 6

15 2 3 4 SECONDA ARTE Si consideri l'architettura a 3 bus presente in figura a destra. Riscrivere, nella tabella seguente, i passi di controllo dell'istruzione JSR considerando questa ulteriore architettura. I registri S e TEM sono presenti nel banco di registri. SI COMILI LA TABELLA SEGUENTE (il numero di righe non è significativo) ASSO ORDINI Operazioni (in RTL) MARin, R=B, Cout, increment C, read, WMFC MAR <- [C], C <- [C] + 4, leggi, attendi MFC 2 IRin, R=B, MDRoutB IR <- [MDR] 3 MARin, R=B, Cout, increment C, read MAR <- [C], C <- [C] + 4, leggi 4 TEMin, R=B, Cout, WMFC TEM <- [C], attendi MFC 5 Cin, R=B, MDRoutB C <- [MDR] 6 Sin, MARin, SoutB, select 4, sub S,MAR <- [S] MDRin, R=B, TEMoutB, write, WMFC MDR <- [TEM], scrivi, attendi MFC ACSO rova del 26 Febbraio 200 agina 5 di 6

16 ACSO rova del 26 Febbraio 200 agina 6 di 6

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano AXO Architettura

Dettagli

ACSO Architettura dei Calcolatori e Sistemi Operativi

ACSO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano ACSO Architettura

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi olitecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe elagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano AXO Architettura

Dettagli

Esercizio n. 4 File system

Esercizio n. 4 File system Esercizio n. 4 File system Un processo P esegue il programma seguente, creando un processo figlio Q, che crea a sua volta un figlio R: int main ( ) { /* processo P */ / dichiarazioni varie / fd = open

Dettagli

(9) pid1 = waitpid (pid1, &status, 0); (10) exit (0); } / end if / } / main.c / File system_

(9) pid1 = waitpid (pid1, &status, 0); (10) exit (0); } / end if / } / main.c / File system_ File system_ 2.3.22 Si considerino i seguenti frammenti di programma: / programma main.c / main ( ) { int pid, pid2; int fd, fd2; char v = abcdefghil ; char c []; () pid = fork ( ); (2) fd = open ( /user/acso/prova,

Dettagli

Esercizi. Assembly. Alessandro A. Nacci ACSO 2014/2014

Esercizi. Assembly. Alessandro A. Nacci ACSO 2014/2014 Esercizi Assembly Alessandro A. Nacci alessandro.nacci@polimi.it ACSO 2014/2014 1 Esercizio 1 Si deve tradurre in linguaggio macchina simbolico (linguaggio assemblatore) 68000 il programma C (programma

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano AXO Architettura

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano AXO Architettura

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano AXO Architettura

Dettagli

Esercizio 1 - nucleo e commutazione tra processi

Esercizio 1 - nucleo e commutazione tra processi Esercizio 1 - nucleo e commutazione tra processi / programma CODICE.c / int main ( ) {... fd = open( /acso/file_prova, ORDWR) pid = fork ( ); if (pid == 0) {/ codice eseguito da F1 / execl ( /acso/prog_x,

Dettagli

programma in linguaggio C esercizio n. 5 linguaggio macchina prima parte codifica in linguaggio macchina

programma in linguaggio C esercizio n. 5 linguaggio macchina prima parte codifica in linguaggio macchina esercizio n. 5 linguaggio macchina prima parte codifica in linguaggio macchina Si deve tradurre in linguaggio macchina simbolico (linguaggio assemblatore) 68000 il programma (main e funzione funz) riportato

Dettagli

ESERCIZIO 1 Si consideri la seguente funzione f (A, B, C, D) non completamente specificata definita attraverso il suo ON-SET e DC-SET:

ESERCIZIO 1 Si consideri la seguente funzione f (A, B, C, D) non completamente specificata definita attraverso il suo ON-SET e DC-SET: Università degli Studi di Milano Corso Architettura degli elaboratori e delle reti Prof. Cristina Silvano A.A. 2004/2005 Esame scritto del 15 luglio 2005 Cognome: Matricola: Nome: Istruzioni Scrivere solo

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica, Informazione e Bioingegneria prof.ssa Anna Antola prof. Luca Breveglieri prof. Roberto Negrini prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica, Informazione e Bioingegneria prof.ssa Anna Antola prof. Luca Breveglieri prof. Roberto Negrini prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano AXO Architettura

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe Pelagatti prof.ssa prof.ssa prof. Donatella Sciuto Cristina Silvano Roberto Negrini

Dettagli

Informatica 2 Esame di venerdì 2 marzo 2007

Informatica 2 Esame di venerdì 2 marzo 2007 olitecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe elagatti prof.ssa Donatella Sciuto Informatica 2 Esame di venerdì 2 marzo 2007

Dettagli

Reti Logiche A Prova di giovedì 3 febbraio 2005

Reti Logiche A Prova di giovedì 3 febbraio 2005 olitecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof.ssa Cristiana Bolchini prof. Fabrizio Ferrandi Reti Logiche A rova di giovedì febbraio 005 Matricola Cognome Nome

Dettagli

Reti Logiche A Prova di mercoledì 12 novembre 2003

Reti Logiche A Prova di mercoledì 12 novembre 2003 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi Reti Logiche A Prova di mercoledì 12 novembre 2003 Matricola Cognome Nome Istruzioni Scrivere

Dettagli

esercizio n. 2 linguaggio macchina #define MAX = 3 / variabili globali / int a = 5; int b = 10; int h;

esercizio n. 2 linguaggio macchina #define MAX = 3 / variabili globali / int a = 5; int b = 10; int h; esercizio n. 2 linguaggio macchina Si deve tradurre in linguaggio macchina simbolico (linguaggio assemblatore) 68000 il programma C riportato sotto, costituito da programma principale main e dalle funzioni

Dettagli

Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2003/ novembre 2003

Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2003/ novembre 2003 Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2003/2004-19 novembre 2003 COGNOME: NOME: MATRICOLA: Istruzioni: Scrivere solo sui fogli

Dettagli

Reti Logiche A Appello del 9 luglio 2009

Reti Logiche A Appello del 9 luglio 2009 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi prof.ssa Cristiana Bolchini Reti Logiche A Appello del 9 luglio 2009 Matricola Cognome Nome

Dettagli

COGNOME: NOME: MATRICOLA:

COGNOME: NOME: MATRICOLA: Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2001/2002-18 febbraio 2004 - RECUPERO 1 PARTE COGNOME: NOME: MATRICOLA: Istruzioni: Scrivere

Dettagli

Esercizio n. 7 - Microcodice

Esercizio n. 7 - Microcodice Esercizio n. 7 - Microcodice Lo schema riportato qui di fianco illustra l architettura di processore a bus singolo di riferimento. Si scriva il microcodice capace di eseguire la coppia di istruzioni seguenti:

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 prova 13 febbraio 2015 Matricola/codice persona Cognome Nome Durata prova:

Dettagli

Informatica 2 Prova di giovedì 10 maggio 2007

Informatica 2 Prova di giovedì 10 maggio 2007 olitecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri Informatica 2 rova di giovedì 10 maggio 2007 prof. Giuseppe elagatti prof.ssa Donatella ciuto

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Roberto Negrini prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano

Dettagli

Esercizio riassuntivo di traduzione e assemblaggio da linguaggio C ad assembly Motorola

Esercizio riassuntivo di traduzione e assemblaggio da linguaggio C ad assembly Motorola Esercizio riassuntivo di traduzione e assemblaggio da linguaggio C ad assembly Motorola 68000. Ultima modifica: 10 Maggio 2005. Autore: Daniele Paolo Scarpazza. Per segnalare eventuali difficoltà o problemi,

Dettagli

Programmazione di concorrente - Deadlock

Programmazione di concorrente - Deadlock Programmazione di concorrente - Deadlock Prof. Gerardo Pelosi & Ing. Michele Scandale 30 Ottobre 2014 Il materiale illustrato a lezione e in queste note contiene anche esempi di Fabrizio Castro, Luca Fossati,

Dettagli

Informatica 2 Prova di lunedì 27 Giugno Con soluzioni. Politecnico di Milano Dipartimento di Elettronica e Informazione

Informatica 2 Prova di lunedì 27 Giugno Con soluzioni. Politecnico di Milano Dipartimento di Elettronica e Informazione Politecnico di Milano Dipartimento di Elettronica e Informazione prof. Cesare Alippi prof.ssa Anna Antola prof. Luciano Baresi prof. Luca Breveglieri Informatica 2 Prova di lunedì 27 Giugno 25 prof. Luigi

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

Esercizi. Logica Digitale. Alessandro A. Nacci ACSO 2014/2014

Esercizi. Logica Digitale. Alessandro A. Nacci ACSO 2014/2014 Esercizi Logica Digitale Alessandro A. Nacci alessandro.nacci@polimi.it ACSO 204/204 2 Esercizio - Prima Parte Si vuole realizzare un circuito combinatorio a quattro ingressi ( a, b, c, d ) e un uscita

Dettagli

Thread: sincronizzazione Esercitazioni del 16 Ottobre 2009

Thread: sincronizzazione Esercitazioni del 16 Ottobre 2009 Thread: sincronizzazione Esercitazioni del 16 Ottobre 2009 Luca Fossati, Fabrizio Castro, Vittorio Zaccaria 19 ottobre 2009 Sequenze di esecuzione - 2 Sequenze di esecuzione - 2 Esercizio 1 Sequenze di

Dettagli

Reti Logiche A Esame del 24 febbraio 2006

Reti Logiche A Esame del 24 febbraio 2006 Politecnico di Milano ipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi prof.ssa Cristiana Bolchini Esercizio n. a) ata la seguente tabella di copertura: Reti Logiche

Dettagli

a b / c d

a b / c d esercizio n. 4 logica digitale prima parte funzioni e reti combinatorie Marzo 2 Si vuole realizzare un circuito combinatorio a quattro ingressi ( a, b, c, d ) e un uscita F, caratterizzato dai mintermini

Dettagli

Architettura degli elaboratori Tema d esame del 20/01/2016

Architettura degli elaboratori Tema d esame del 20/01/2016 Architettura degli elaboratori - Luigi Lavazza A.A. 25/6 Università degli Studi dell Insubria Dipartimento di Informatica e Comunicazione Architettura degli elaboratori Tema d esame del 2//26 Luigi Lavazza

Dettagli

Esercizi Logica Digitale,Circuiti e Bus

Esercizi Logica Digitale,Circuiti e Bus Esercizi Logica Digitale,Circuiti e Bus Alessandro A. Nacci alessandro.nacci@polimi.it ACSO 214/214 1 2 Esercizio 1 Si consideri la funzione booleana di 3 variabili G(a,b, c) espressa dall equazione seguente:

Dettagli

Architettura degli elaboratori Tema d esame del 20/01/2016

Architettura degli elaboratori Tema d esame del 20/01/2016 Architettura degli elaboratori - Luigi Lavazza A.A. 5/6 Università degli Studi dell Insubria Dipartimento di Informatica e Comunicazione Architettura degli elaboratori Tema d esame del //6 Luigi Lavazza

Dettagli

Reti Logiche A II Prova - 2 marzo 2009

Reti Logiche A II Prova - 2 marzo 2009 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi Reti Logiche A II Prova - 2 marzo 2009 Matricola prof.ssa Cristiana Bolchini Cognome Nome Istruzioni

Dettagli

Informatica 2 Esame di giovedì 13 settembre 2007

Informatica 2 Esame di giovedì 13 settembre 2007 olitecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe elagatti prof.ssa Donatella Sciuto Informatica 2 Esame di giovedì 13 settembre

Dettagli

COGNOME: NOME: MATRICOLA:

COGNOME: NOME: MATRICOLA: Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2004/2005-18 febbraio 2005 - RECUPERO 1 PARTE COGNOME: NOME: MATRICOLA: Istruzioni: Scrivere

Dettagli

Architettura degli elaboratori

Architettura degli elaboratori Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Tema d esame del /9/24 Dipartimento di Scienze Teoriche e Applicate luigi.lavazza@uninsubria.it

Dettagli

Reti Logiche A Esame del 13 settembre 2007

Reti Logiche A Esame del 13 settembre 2007 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi Reti Logiche A Esame del 13 settembre 2007 prof.ssa Cristiana Bolchini Esercizio n. 1 Effettuare

Dettagli

5. I device driver. Device driver - gestori delle periferiche. Struttura interna del sistema operativo Linux. Tipi di periferiche. Tipi di periferiche

5. I device driver. Device driver - gestori delle periferiche. Struttura interna del sistema operativo Linux. Tipi di periferiche. Tipi di periferiche Device driver - gestori delle periferiche Struttura interna del sistema operativo Linux Sono moduli software che realizzano l interfacciamento e la gestione dei dispositivi periferici Interagiscono con

Dettagli

Esercitazione 4. Gestione dei file in Unix

Esercitazione 4. Gestione dei file in Unix Esercitazione 4 Gestione dei file in Unix Primitive fondamentali (1/2) open close Apre il file specificato e restituisce il suo file descriptor (fd) Crea una nuova entry nella tabella dei file aperti di

Dettagli

Architettura degli elaboratori - Luigi Lavazza A.A. 2014/15

Architettura degli elaboratori - Luigi Lavazza A.A. 2014/15 niversità degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Tema d esame del 14/09/2015 Luigi Lavazza Dipartimento di Scienze Teoriche e Applicate luigi.lavazza@uninsubria.it

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Luca Breveglieri prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa Cristina Silvano AXO Architettura

Dettagli

Architettura degli elaboratori Tema d esame del 8/2/2016

Architettura degli elaboratori Tema d esame del 8/2/2016 Architettura degli elaboratori - Esame del 8 febbraio 6 A.A. -6 Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Tema d esame del 8//6 Luigi

Dettagli

Invocazione di funzioni. Passaggio parametri Creazione record di attivazione (anche chiamato stack frame o area di attivazione)

Invocazione di funzioni. Passaggio parametri Creazione record di attivazione (anche chiamato stack frame o area di attivazione) Invocazione di funzioni Passaggio parametri Creazione record di attivazione (anche chiamato stack frame o area di attivazione) Passaggio parametri F(a,b,c) { } Z = g(x, y, z) Record di attivazione o registri

Dettagli

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

Politecnico di Milano - Dipartimento di Elettronica e informazione Prof. Mauro Negri. Fondamenti di Informatica I prova in itinere Politecnico di Milano - Dipartimento di Elettronica e informazione Prof. Mauro Negri Fondamenti di Informatica I prova in itinere 18 novembre 2011 Matricola Cognome Nome Istruzioni Durata prova: 2 ore

Dettagli

Reti Logiche A II Prova - 11 febbraio 2008

Reti Logiche A II Prova - 11 febbraio 2008 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi Reti Logiche A II Prova - febbraio 008 Matricola prof.ssa Cristiana Bolchini Cognome Nome Istruzioni

Dettagli

Rappresentazione dell informazione

Rappresentazione dell informazione Rappresentazione dell informazione Codifica dei numeri Rappresentazioni in base 2, 8, 10 e 16 Rappresentazioni M+S, C1 e C2 Algoritmi di conversione di base Algoritmi di somma, moltiplicazione e divisione

Dettagli

AXO Architettura dei Calcolatori e Sistemi Operativi

AXO Architettura dei Calcolatori e Sistemi Operativi Politecnico di Milano Dipartimento di Elettronica, Informazione e Bioingegneria prof.ssa Anna Antola prof. Luca Breveglieri prof. Roberto Negrini prof. Giuseppe Pelagatti prof.ssa Donatella Sciuto prof.ssa

Dettagli

Programmazione concorrente

Programmazione concorrente Programmazione concorrente Prof. Gerardo Pelosi & Ing. Michele Scandale 16 Ottobre 2014 Il materiale illustrato a lezione e in queste note contiene anche esempi di Fabrizio Castro, Luca Fossati, Vittorio

Dettagli

Istruzioni di trasferimento dati

Istruzioni di trasferimento dati Istruzioni di trasferimento dati Leggere dalla memoria su registro: lw (load word) Scrivere da registro alla memoria: sw (store word) Esempio: Codice C: A[8] += h A è un array di numeri interi Codice Assembler:

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

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 I appello bianco 27 febbraio 2013 Matricola Cognome Nome Istruzioni Durata prova: 2 ore LE

Dettagli

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi)

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi) shell Programmi utente Modo utente Il Nucleo del sistema operativo (la gestione dei processi) Interfaccia delle chiamate di sistema File system Gestione processi Device driver Gestione memoria HARDWARE

Dettagli

Architettura degli elaboratori - Esame del 13 luglio 2015 A.A

Architettura degli elaboratori - Esame del 13 luglio 2015 A.A Architettura degli elaboratori - Esame del 3 luglio 25 A.A. 24-5 Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Tema d esame del 3/7/25

Dettagli

Università dell'insubria - Luigi Lavazza 1

Università dell'insubria - Luigi Lavazza 1 Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Tema d esame del 27/11/214 Luigi Lavazza Dipartimento di Scienze Teoriche ed Applicate luigi.lavazza@uninsubria.it

Dettagli

Reti Logiche Appello del 1 marzo 2011

Reti Logiche Appello del 1 marzo 2011 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi prof.ssa Cristiana Bolchini Esercizio n. 1 Si consideri la macchina sequenziale sincrona a

Dettagli

Reti Logiche A - Prova di mercoledì 17 novembre 2004

Reti Logiche A - Prova di mercoledì 17 novembre 2004 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof.ssa Cristiana Bolchini prof. Fabrizio Ferrandi Reti Logiche A - Prova di mercoledì 7 novembre 2004 Matricola Cognome

Dettagli

Fetch Decode Execute Program Counter controllare esegue prossima

Fetch Decode Execute Program Counter controllare esegue prossima Stored Program Istruzioni sono stringhe di bit Programmi: sequenze di istruzioni Programmi (come i dati) memorizzati in memoria La CPU legge le istruzioni dalla memoria (come i dati) Ciclo macchina (ciclo

Dettagli

Architettura dei calcolatori e sistemi operativi. Sottoprogrammi e MIPS. Espressioni algebriche. Capitolo 2 P&H

Architettura dei calcolatori e sistemi operativi. Sottoprogrammi e MIPS. Espressioni algebriche. Capitolo 2 P&H Architettura dei calcolatori e sistemi operativi Sottoprogrammi e MIPS Espressioni algebriche Capitolo 2 P&H Sottoprogrammi Modello di chiamata Area di attivazione Calcolare un espressione algebrica 2

Dettagli

Istruzioni di controllo del flusso

Istruzioni di controllo del flusso Istruzioni di controllo del flusso Il flusso di esecuzione è normalmente sequenziale Le istruzioni di controllo cambiano la prossima istruzione da eseguire Istruzioni di salto condizionato branch if equal

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 22 Martedì 08-01-2019 Struttura logica del file system una tipica organizzazione

Dettagli

Sistemi Operativi e Laboratorio, Prova del?/?/?

Sistemi Operativi e Laboratorio, Prova del?/?/? Nome: Cognome: Matricola: fla: posto: corso: Esercizio 1 Quali delle seguenti operazioni possono essere eseguite da un processo in stato utente? Operazione: Invocare l istruzione TSL (test and set lock-tipo

Dettagli

Corso di Laurea in Informatica

Corso di Laurea in Informatica Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 13 Dicembre 2004 Esercizio 1 (punti -1, 3) Si consideri l architettura nota come macchina di von Neumann (a) Come le

Dettagli

FONDAMENTI DI INFORMATICA

FONDAMENTI DI INFORMATICA Politecnico di Milano COGNOME E NOME Facoltà di Ingegneria Industriale FONDAMENTI DI INFORMATICA Seconda prova in itinere 13 Febbraio 2017 Primo Appello (Laureandi) 13 Febbraio 2017 RIGA COLONNA MATRICOLA

Dettagli

SECONDA PROVA INTERMEDIA DEL MODULO DI. 1 giugno 2017 NOME: COGNOME: MATRICOLA:

SECONDA PROVA INTERMEDIA DEL MODULO DI. 1 giugno 2017 NOME: COGNOME: MATRICOLA: SECONDA PROVA INTERMEDIA DEL MODULO DI 1 giugno 2017 NOME: COGNOME: MATRICOLA: ESERCIZIO 1 (12 punti) 1. (3 punti) Scrivere un frammento di codice Assembly MIPS, che implementi il costrutto C switch-case

Dettagli

Reti Logiche A - Prova di mercoledì 16 febbraio 2005

Reti Logiche A - Prova di mercoledì 16 febbraio 2005 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof.ssa Cristiana Bolchini prof. Fabrizio Ferrandi Esercizio n. 1 Data la seguente espressione logica: ((c+a ) +c+a

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

SISTEMA DI ELABORAZIONE

SISTEMA DI ELABORAZIONE SISTEMA DI ELABORAZIONE Una macchina M capace di eseguire programmi scritti in un linguaggio L adeguato DATI P(L) L M Osservazioni: M e' funzionalmente definita da L (L->M) Se L->M e L->M', allora M e'

Dettagli

ACSO Programmazione di Sistema e Concorrente

ACSO Programmazione di Sistema e Concorrente ACSO Programmazione di Sistema e Concorrente P2 Modello Thread 2/12/2015 programma e parallelismo il tipo di parallelismo dipende dal grado di cooperazione (scambio di informazione) necessario tra attività

Dettagli

Informatica 2 Esame di lunedì 17 luglio 2006

Informatica 2 Esame di lunedì 17 luglio 2006 olitecnico di Milano Dipartimento di Elettronica e Informazione prof. Cesare Alippi prof.ssa Anna Antola prof. Luca Breveglieri prof. ierluca Lanzi prof. Giuseppe elagatti prof.ssa Donatella Sciuto Informatica

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

Processore Danilo Dessì. Architettura degli Elaboratori.

Processore Danilo Dessì. Architettura degli Elaboratori. Processore 8088 Architettura degli Elaboratori Danilo Dessì danilo_dessi@unica.it Subroutine Anche nel linguaggio assemblativo è possibile suddividere un programma in subroutine Per invocare una subroutine

Dettagli

Sistemi Operativi e Laboratorio, Prova del 19/6/2014

Sistemi Operativi e Laboratorio, Prova del 19/6/2014 Nome: Cognome: Matricola: fila: posto: Esercizio 3 (5 punti) In un sistema che gestisce la memoria con paginazione a domanda, le pagine logiche e i blocchi fisici hanno una lunghezza di 2 8 = 256 byte

Dettagli

Elementi di Architettura e Sistemi Operativi. problema punti massimi i tuoi punti problema 1 6 problema 2 9 problema 3 5 problema 4 10 totale 30

Elementi di Architettura e Sistemi Operativi. problema punti massimi i tuoi punti problema 1 6 problema 2 9 problema 3 5 problema 4 10 totale 30 Elementi di Architettura e Sistemi Operativi Bioinformatica - Tiziano Villa 27 Febbraio 2019 Nome e Cognome: Matricola: Posta elettronica: problema punti massimi i tuoi punti problema 1 6 problema 2 9

Dettagli

FONDAMENTI DI INFORMATICA

FONDAMENTI DI INFORMATICA Politecnico di Milano COGNOME E NOME Scuola di Ingegneria Industriale e dell Informazione FONDAMENTI DI INFORMATICA Appello 28 Gennaio 2019 RIGA COLONNA CODICE PERSONA Spazio riservato ai docenti Il presente

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 Prova in itinere del 13 Novembre 2012 COGNOME E NOME RIGA COLONNA MATRICOLA Spazio riservato ai docenti Il presente plico contiene

Dettagli

Architettura del calcolatore (Seconda parte)

Architettura del calcolatore (Seconda parte) Architettura del calcolatore (Seconda parte) Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin LINGUAGGIO E ORGANIZZAZIONE DEL CALCOLATORE Linguaggio assembly

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 Informatica I III appello 6 settembre 2011 Matricola Cognome Nome Durata prova: 1 ora ½ Istruzioni

Dettagli

Subroutine in linguaggio macchina: collegamento e passaggio dei parametri. Sottoprogrammi: richiami

Subroutine in linguaggio macchina: collegamento e passaggio dei parametri. Sottoprogrammi: richiami Corso di Calcolatori Elettronici I Subroutine in linguaggio macchina: collegamento e passaggio dei parametri Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso

Dettagli

Subroutine in linguaggio macchina: collegamento e passaggio dei parametri

Subroutine in linguaggio macchina: collegamento e passaggio dei parametri Corso di Calcolatori Elettronici I Subroutine in linguaggio macchina: collegamento e passaggio dei parametri Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso

Dettagli

Struttura interna del sistema operativo Linux

Struttura interna del sistema operativo Linux Struttura interna del sistema operativo Linux 5. I device driver A cura di: Anna Antola Giuseppe Pozzi DEI, Politecnico di Milano anna.antola/giuseppe.pozzi@polimi.it -versione del 30 marzo 2004-1-04.-04

Dettagli

Architettura dei calcolatori e sistemi operativi. Architettura MIPS e set istruzioni Capitolo 2 P&H

Architettura dei calcolatori e sistemi operativi. Architettura MIPS e set istruzioni Capitolo 2 P&H Architettura dei calcolatori e sistemi operativi Architettura MIPS e set istruzioni Capitolo 2 P&H Instruction Set Architecture ISA Linguaggio assemblatore e linguaggio macchina ISA processore MIPS Modello

Dettagli

il tipo di parallelismo dipende dal grado di cooperazione

il tipo di parallelismo dipende dal grado di cooperazione Thread Settembre 2009 programma e parallelismo il tipo di parallelismo dipende dal grado di cooperazione (scambio d informazione) necessario tra attività svolte in parallelo processo macchina virtuale

Dettagli

Architetture dei Calcolatori e Sistemi Operativi

Architetture dei Calcolatori e Sistemi Operativi Prof. Gerardo Pelosi & Ing. Michele Scandale 30 Ottobre 2014 Gerardo Pelosi 1 Esercizio 1 Indicare se nel seguente programma sono presenti deadlock e, in tal caso, identificare

Dettagli

Reti Logiche A Esame del 19 febbraio 2007

Reti Logiche A Esame del 19 febbraio 2007 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi Reti Logiche A Esame del 9 febbraio 007 Matricola prof.ssa ristiana Bolchini Esercizio n. Data

Dettagli

Reti Logiche A Esame del 14 febbraio 2006

Reti Logiche A Esame del 14 febbraio 2006 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi Esercizio n. Eseguire la generazione degli implicanti primi con il metodo di Quine McCluskey

Dettagli

Informatica 2 Prova di giovedì 24 febbraio 2005

Informatica 2 Prova di giovedì 24 febbraio 2005 olitecnico di Milano Dipartimento di Elettronica e Informazione prof. Cesare Alippi prof.ssa Anna Antola prof. Luciano Baresi prof. Luca Breveglieri prof. Luigi Lavazza prof. Giuseppe elagatti prof.ssa

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 23 Martedì 17-01-2017 Il file system Il file system si basa sulle astrazioni

Dettagli

Informatica 2 Prova di mercoledì 27 aprile 2005

Informatica 2 Prova di mercoledì 27 aprile 2005 olitecnico di Milano Dipartimento di Elettronica e Informazione prof. Cesare Alippi prof.ssa Anna Antola prof. Luciano Baresi prof. Luca Breveglieri Informatica 2 rova di mercoledì 27 aprile 2005 Matricola

Dettagli

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 3 Febbraio 2009 COGNOME E NOME RIGA COLONNA MATRICOLA

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 3 Febbraio 2009 COGNOME E NOME RIGA COLONNA MATRICOLA Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 3 Febbraio 2009 COGNOME E NOME RIGA COLONNA MATRICOLA Il presente plico contiene 4 esercizi, deve essere debitamente

Dettagli

Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2001/ febbraio 2004

Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2001/ febbraio 2004 Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2001/2002-4 febbraio 2004 COGNOME: NOME: MATRICOLA: Istruzioni: Scrivere solo sui fogli

Dettagli

Introduzione al linguaggio macchina

Introduzione al linguaggio macchina Introduzione al linguaggio macchina Fondamenti di Informatica Come è fatto il linguaggio macchina? Progettare il linguaggio macchina q Il linguaggio macchina è un linguaggio di basso livello che viene

Dettagli