Salve, avrei bisogno di una risposta da un esperto su questi due quesiti:
QUESITO A
1) Descrivi il concetto di competizione tra processi concorrenti tramite esempio.
2) Che cosa si intende con mutua esclusione tra processi concorrenti e a quali problemi porta se non viene rispettata?
3) Cosa rappresentano le sezioni critiche e corse critiche?
4) Quando si può verificare una situazione di stallo tra due o più processi?
5) Qual'è il diagramma di flusso della primitiva signal() dei semafori, descrivi il funzionamento.
6) Un distributore automatico di benzina è dotato di una pompa con a disposizione N litri di carburante. Le auto accedono al distributore si riferiscono ogni volta di un numero casuali di litri di benzina. Scrivi la pseudo-codifica di un programma che permetteva, tramite semafori, la corretta gestione della distribuzione e di segnalare quando il livello di carburante raggiunge la soglia minima.
QUESITO B
1) Descrivi il concetto di cooperazione tra processi concorrenti tramite esempio.
2) Che cosa intende con sincronizzazione tra processi concorrenti e a quali problemi porta se non viene rispettata?
3) Che cosa intende con attesa attiva e passiva tra processi concorrenti?
4) Quando si può verificare una situazione di ritardo indefinito tra due o più processi?
5) Disegna il diagramma di lusso della primitiva wait() dei semafori e descrivi il funzionamento.
6) Scrivere la pseudo-codifica di un programma che permetta, tramite semafori, la corretta gestione di magazzino merci. Ogni cliente effettua l'ordine di un prodotto specificandone la quantià, e per ogni ordine viene aggiornato il numero di pezzi ancora disponibili nel magazzino. Considerata una scorta iniziale di M pezzi, il programma deve anche segnalare quando il prodotto non è più disponibile.
QUESITO A
1) Descrivi il concetto di competizione tra processi concorrenti tramite esempio.
2) Che cosa si intende con mutua esclusione tra processi concorrenti e a quali problemi porta se non viene rispettata?
3) Cosa rappresentano le sezioni critiche e corse critiche?
4) Quando si può verificare una situazione di stallo tra due o più processi?
5) Qual'è il diagramma di flusso della primitiva signal() dei semafori, descrivi il funzionamento.
6) Un distributore automatico di benzina è dotato di una pompa con a disposizione N litri di carburante. Le auto accedono al distributore si riferiscono ogni volta di un numero casuali di litri di benzina. Scrivi la pseudo-codifica di un programma che permetteva, tramite semafori, la corretta gestione della distribuzione e di segnalare quando il livello di carburante raggiunge la soglia minima.
QUESITO B
1) Descrivi il concetto di cooperazione tra processi concorrenti tramite esempio.
2) Che cosa intende con sincronizzazione tra processi concorrenti e a quali problemi porta se non viene rispettata?
3) Che cosa intende con attesa attiva e passiva tra processi concorrenti?
4) Quando si può verificare una situazione di ritardo indefinito tra due o più processi?
5) Disegna il diagramma di lusso della primitiva wait() dei semafori e descrivi il funzionamento.
6) Scrivere la pseudo-codifica di un programma che permetta, tramite semafori, la corretta gestione di magazzino merci. Ogni cliente effettua l'ordine di un prodotto specificandone la quantià, e per ogni ordine viene aggiornato il numero di pezzi ancora disponibili nel magazzino. Considerata una scorta iniziale di M pezzi, il programma deve anche segnalare quando il prodotto non è più disponibile.