← Back
ExercisesBy topicItalian

Sistemi operativi 3 Nucleo e commutazione tra processi

Study material for Architettura dei Calcolatori e Sistemi Operativi, shared by the Studwiz community and reviewed by moderators.

Architettura dei Calcolatori e Sistemi OperativiBy topic

Document information

What's included in this study material

Study material for Architettura dei Calcolatori e Sistemi Operativi, shared by the Studwiz community and reviewed by moderators.

Import quality: text was extracted directly from the original document.

Extracted content from the document

Representative passages recognised in different parts of the material. The full extracted text remains available to search, while this compact preview makes the page easier to read.

Page 1

1 MODALITA’ VECCHIA 11.11.2011 - esercizio n. 2 – nucleo e commutazione tra processi Si considerino i seguenti frammenti di programma: / programma CODICE_X.c / main ( ) { ... pid1 = fork ( ); if (pid1 == 0) { / codice eseguito da Q figlio di P / fd = open (“/acso/file1”, O_RDWR); / 3 blocchi / pid2 = fork ( ); if (pid2 == 0) { / codice eseguito da R figlio di Q / write (stdout, c, 20); exit (2); } else { / codice eseguito da Q / sleep (1); write (fd, buffer, 1000); / 2 blocchi / exit (1); } / end if / } else { / codice eseguito da P / pid1 = wait (&status); exit (0); } / end if / } / CODICE_X / / programma CODICE_Y.c / main ( ) { ... sleep (3); execl (“/acso/CODICE_X”, CODICE_X, NULL); write (stdout, err_msg, 50); exit (3); } / CODICE_Y / Dati due processi P e S:  il processo P esegue il programma CODICE_X e crea il figlio Q  il processo Q crea il figlio R  il processo S esegue il programma CODICE_Y e richiede una mutazione di codice che fallisce 2 Ulteriori specifiche del sistema: 1. i processi utente hanno associata una priorità, il processo “idle” ha priorità minima e non esistono altri processi nel sistema 2. le priorità relative a tutti i processi attivi nel sistema sono indicate – quando necessario – nella tabella di commutazione dei processi da completare 3. il buffer del driver di standard output ha dimensione di 50 caratteri 4. per tutte le operazioni su file che implicano trasferimento di blocchi: a) la dimensione di un blocco di dati trasferito da o verso file tramite DMA, è di 512 byte b) l’interruzione di fine DMA è associata al trasferimento di un singolo blocco del file (eventi DMA_in e DMA_out per lettura e scrittura di un blocco rispettivamente) 5. le operazioni di lettura e scrittura su file accedono sempre a disco, cioè è…

Preview

First page of the document.

First page: Sistemi operativi 3 Nucleo e commutazione tra processi