.dsy:it. Pages (37): « First ... « 3 4 5 6 [7] 8 9 10 11 » ... Last »
Show 150 posts per page

.dsy:it. (http://www.dsy.it/forum/)
- Sistemi operativi I (http://www.dsy.it/forum/forumdisplay.php?forumid=269)
-- [SIS. OP. - BRUSCHI] Info 2004/05 (http://www.dsy.it/forum/showthread.php?threadid=17700)


Posted by michelez on 12-04-2005 13:18:

Qualcuno sa dare la risposta a queste due domande(magari con un commento)?

1)Per quale delle seguenti periferiche adottereste un meccanismo di gestione dell'I/O a controllo da programma piuttosto che ad interrupt:
A. dischi fissi
B. mouse
C. tastiera
D. dischi mobili


2)Quali tra le seguenti e' l'operazione piu' appropriata che un controller dovrebbe svolgere dopo aver verificato la presenza di un interrupt:
A. modifica dello stato del processo in esecuzione da running a waiting
B. caricamento nel PC dell'indirizzo della routine di risposta interrupt
C. context switch
D. esecuzione del programma di risposta interrupt


Posted by elpampero on 12-04-2005 13:26:

1) Dischi fissi. Sono quelli che trasmettono più dati al sec. (2000KByte/sec). Infatti se un dispositivo trasmette velocemente i dati si sprecano meno cicli macchina e ha senso utilizzare la busy-waiting (controllo di programma)

2) Ci sto ragionando anch'io..sono indeciso tra la A e la B. Sarei più tentato per la A perchè prima del caricamenteo dell'indirizzo della routine bisogna salvare tutti i registri...


Posted by elpampero on 12-04-2005 13:41:

Confermo che nella 2) dovrebbe essere A. Infatti la prima operazione che viene compiuta è il salvataggio di PC e PSW. Quindi penso il salvataggio dello stato (modificato). Qualcuno conferma?


Posted by michelez on 12-04-2005 14:17:

Grazie per le spiegazioni. Anch'io nella seconda avevo in mente il tuo stesso ragionamento.

E queste due?

3)Quale tra le seguenti sotto-stringhe non può mai essere generata durante l'esecuzione dei suddetti programmi assumendo che i semafori siano così inizializzati sem1=5 e sem2=1?

A. aaabbbbab
B. aaaabbbaa
C. abbbaa
D. bababa


4)Quale tra i seguenti meccanismi, usati per risolvere problemi di mutua esclusione, non da ricorso alla tecnica del busy waiting?
A. Semafori
B. TSL
C. Algoritmo di Peterson
D. Stretta alternanza


Posted by elpampero on 12-04-2005 14:58:

4) sicuramente semafori...per definizione i semafori evitano che il processo in attesa stia in attesa con un ciclo while(che spreca cilci macchina)

3) è la C. Infatti per stampare a il sem2 viene portato a 2 e poi per stampare 3 b sem 2 dovrebbe diventare -1...IMPOSSIBILE perchè prima di stampare la terza b si blocca il processo


Posted by elpampero on 12-04-2005 15:01:

Un processo A di background (senza interazioni con I/O) e' nello stato
running. Le routine di gestione interrupt contengono le operazioni V sui
semafori che descrivono gli eventi esterni. Un processo B e' nello stato
waiting in attesa di un evento esterno X. Al verificarsi dell'interrupt
associato a X viene attivata la routine di gestione interrupt dell'evento.
In quali stati si trovano rispettivamente A e B nei seguenti istanti:
1- appena attivata la routine di gestione interrupt,
2- al temine della routine di gestione interrupt, cioè dopo l'esecuzione
dell'istruzione RTI (ritorno da interrupt) ?

a) 1. wait, wait 2. ready, run
b) 1. run, wait 2. run, ready
c) 1. ready, wait 2. ready, ready
d) 1. ready, wait 2. run, ready


Risposta esatta: b

Secondo me questa è la C


Posted by michelez on 12-04-2005 15:14:

secondo me e' la D
Dunque:
1-appena viene attivata la routine di interrupt e' lei in running, quindi A passa a ready(perchè e' pronta a ripartire) e B rimane a waiting perche' l'interrupt che aspettava non e' ancora arrivato.
2-appena ritornati dalla routine di interrupt A torna in running e B va in ready perche' l'interrupt che aspettava e' arrivato. (E' lo scheduler che deve decidere quando B va in running)


Posted by elpampero on 12-04-2005 15:19:

Non riesco a capire una cosa...Quando arriva l'evento X viene mandato un interrupt e lì viene caricata nel PC la prima istruzione della routine. A questo punto sicuramente A non può essere run perchè la CPU l'ha presa la routine!! ma il resto??


Posted by elpampero on 12-04-2005 15:22:

Perfetto..OK


Posted by michelez on 12-04-2005 15:25:

Infatti A va in ready(viene accodato il suo PCB nella coda dei processi pronti) x' in running c'è la routine di interrupt, una volta che ha finito il processo A torna in running e il processo B passa nella coda dei ready. Poi lo scheduler deciderà quando far passare in running B.
Così e' piu' chiaro?


Posted by elpampero on 12-04-2005 15:27:

sì sì..dopo che ho scritto ci sono arrivato..confermo tutto


Posted by elpampero on 12-04-2005 15:30:

altra questione:

In un sistema senza stato di waiting e' sempre possibile adottare algoritmi
che fanno uso di busy-waiting ?
a) si, purche' gli interrupt non vengano disabilitati
b) solo se viene adottato uno scheduler a prelazione della CPU, meglio se
round robin
c) no, perche' il busy-waiting puo' essere implementato solo se esiste lo
stato waiting
d) si, anche se la loro esecuzione puo' risultare inefficiente


Risposta esatta: b


PERCHE'??


Posted by michelez on 12-04-2005 15:37:

Non sono sicuro, ma credo che non essendoci lo stato di waiting il processo rimane running fino alla risposta che sta aspettando, poi prosegue. Se non ci fosse preemption nessun altro processo potrebbe passare a running fino a che il primo e' ancora in esecuzione. Quindi meglio ancora se RR, visto che la preemption viene fatta allo scadere del quanto.

Sempre rigurado agli stati :
5)In un sistema a processi con scheduling a priorita' non preemptive la transizione dallo stato di
esecuzione ("running") a quello di pronto ("ready") si puo' verificare:

A. allo scadere del quanto di tempo
B. mai
C. quando occorre mandare in esecuzione un processo a priorita' piu' alta
D. quando il processo running esegue una operazione sospensiva

Risposta esatta: B

Perchè D non va bene?


Posted by Dante on 12-04-2005 15:38:

Originally posted by michelez



3)Quale tra le seguenti sotto-stringhe non può mai essere generata durante l'esecuzione dei suddetti programmi assumendo che i semafori siano così inizializzati sem1=5 e sem2=1?

A. aaabbbbab
B. aaaabbbaa
C. abbbaa
D. bababa


è la D!

__________________
Sometimes you hurt the ones who love you most and sometimes you hold the ones who leave you lost,
and sometimes you learn
but its too late, it's too late. EI


Posted by elpampero on 12-04-2005 15:43:

Per michelez:
Direi che la spiegazione regge bene...
5) dipende cosa si intende per sospensiva...penso che si possa verificare un'attesa I/O ma allora andrebbe in blocking

Per Dante:
PERCHE'???


All times are GMT. The time now is 22:40. Pages (37): « First ... « 3 4 5 6 [7] 8 9 10 11 » ... Last »
Show all 553 posts from this thread on one page

Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.