ZADÁNÍ
První část
Kolik bude maximální počet výpadků stránky, pokud budeme provádět instrukci přesunu o velikosti 2B, kde stránka má 4KB a velikost dat je 8MB?
Máme procesy A, B, C, D a prostředky (zařízení) 1, 2, 3, 4. Ve kterém z dané posloupnousti kroků dojde k zablokování (deadlock)?
Na začátku máme k dispozici 4 prázdné rámce a zadanou sekvenci pořadí přístupu ke stránkám v pořadí 12345636251. Kolik výpadků stránky nastane?
Jaké jsou základní požadavky na HW pro podporu stránkování?
Přepočet čísla stránky na číslo rámce, rozpoznání výpadku stránky
Přepočet čísla stránky na číslo rámce, rozpoznání výpadku stránky, asociativní paměť
rozpoznání výpadku stránky, víceúrovňové stránkování
Přepočet čísla stránky na číslo rámce, asociativní paměť{: style="list-style-type:upper-alpha"}{: style="list-style-type:decimal"}
Druhá část
Definice zablokování (deadlock). Coffmanovy podmínky.
Sečtěte čísla 38 a -51 binárně pomocí dvojkového doplňku.
Algoritmy na přidělování paměti volné velikosti.
Napiste mikroprogram pro instrukci ADDI addr (indirect). Schéma bylo k dispozici.{: style="list-style-type:decimal"}
ŘEŠENÍ
První část
Nejdříve zjistíme maximální počet výpadků stranky pro instrukci o velikosti 2B. Ty jsou 2. Potom pro data. 4MB zabere maximálně 2049 stránek o velikosti 4kB. To vynásobíme ještě 2x. Zkráceně 2 + 2(2048 + 1) = 4100. Odpověď A. Podrobně na http://forum.matfyz.info/viewtopic.php?f=242&t=3288.
Užitečné je si nakreslit obrázek. Proto odkazuju na http://s0cketka.php5.cz/skola/zzos.php. Odpověď C.
Výpadek stránky nastane při pokusu přistoupit po řadě ke stránkám 1, 2, 3, 4, 5, 6, 2, 1. Počet výpadků je 8. Odpověď B.
Odpověď D.{: style="list-style-type:decimal"}
Druhá část
Tyto věci se dají najít na Bulejovových slajdech.
To je doufám triviální.
Pravděpodobně není na slajdech! Odpovědi jsou na http://www.bydawe.wz.cz/ZOP.txt.
fetch
T0: PC_out, MAR_in
T1: read, pcincr
T2: MDR_out, IR_in
decode
T3: decode opcode in IR
execute
T4: IR_out (addr part), MAR_in
T5: read
T6: MDR_out, MAR_in
T7: read
T8: ACC_out, aluadd
T9: TEMP_out, ACC_in, reset to T0 Hezké příklady jsou i na http://mff.lokiware.info/PrincipyPocita ... zky?v=16n8.{: style="list-style-type:decimal"}
ODKAZY