1. Dynamiczna prognoza rozgałęzień(skoków):
+ jest oparta na historii skoku
+ może być połączona z prognozą statyczną
jest nieskuteczna dla rozkazu skoku w przód
jest weryfikowana podczas dekodowania
+ jest weryfikowana w etapie wykonania
+ musi poprzedzać dekodowanie rozkazu
jest skuteczna dla rozkazu powrotu(RET)
2. Skutkiem chybienia w buforze prognozy skoku(BTB) jest:
wykonanie skoku
zmiana adresu docelowego skoku
wypełnienie linii bufora
zmiana bitów historii skoku
3. Rozmiar logicznej przestrzeni adresowej zależy od:
+ rozmiaru wskaźników adresowych
dopuszczalnej liczby procesów
rozmiaru segmentu
maksymalnego rozmiaru partycji
4. W bloku aktywacji funkcji na stosie są umieszczone:
+ wskaźnik struktur lokalnych
+ wskaźnik powiązania dynamicznego
+ poprzedni stan wskaźnika stosu
kod rozkazu powrotu RET
+ adres powrotu
zmienne globalne
tryb adresowania
+ słowo stanu procesora
5. W bloku sterującym(PCB) każdego aktywnego procesu przechowywane są:
+ minimalny kontekst procesora
kontekst pamięci każdego procesu
pełny kontekst procesora
wskaźnik rekurencji procesu
+ rozmiar zbioru roboczego procesu
stos programowy
zbiór roboczy procesu
wskaźnik zagnieżdżenia procesu
6. Przerwania precyzyjne są skutkiem:
+ wyjątków
+ żądań obsługi we/wy
żądań transmisji DMA
krytycznych błędów sprzętu
+ braku strony w pamięci
+ wyjątków programowych
podwójnych błędów transmisji na magistrali
żądań transmisji DMA
7. Statyczna prognoza rozgałęzień(skoków):
jest skuteczna dla rozkazu skoku pośredniego
jest skuteczna średnio dla 90% skoków w przód
jest weryfikowana w fazie dekodowania
jest nieskuteczna dla skoku warunkowego
+ jest oparta na przesłankach statystycznych
musi być wykonana przed dekodowaniem
jest skuteczna dla skoku bezwarunkowego
musi być wykonana w fazie pobierania kodu
8. Bufor prognozy skoków jest aktualizowany: [BTB]
+ podczas wykonania rozkazu skoku
podczas prognozy wykonania
podczas dekodowania rozkazu skoku
zgodnie z regułą 90/50
przed wykonaniem rozkazu skoku
9. Maksymalny rozmiar wirtualnej przestrzeni adresowej zależy od:
+ dopuszczalnej liczby procesów
pojemności pamięci głównej
rozmiaru bufora TLB
maksymalnego rozmiaru partycji
+ rozmiaru wskaźników adresowych
rozmiaru strony
zakresu relokacji
pojemności pamięci wtórnej(dysku)
rozmiaru przestrzeni rzeczywistej
10. Skutkiem braku żądanej strony w pamięci jest:
+ wyjątek
przerwanie nieprecyzyjne ½ punktow
przerwanie niemaskowalne
+ przerwanie programowe
11. Bufor prognozy skoków BTB zawiera następujące informacje:
+ adres rozkazu skoku
+ bity używalności tej linii
adres względny skoku
kod rozkazu skoku
bit kierunku skoku(w przód/ w tył)
+ kod prognozy skoku
+ adres docelowy skoku
+ bity historii skoku
bit obecności kodu skoku w pamięci
12. Przerwania nieprecyzyjne są skutkiem:
+ krytycznych błędów sprzętu
wyjątków programowych
braku stron w pamięci
żądań obsługi we/wy
13. Skutkiem trafienia w buforze prognozy skoków BTB jest:
wykonanie rozkazu skoku
zmiana bitu kierunku skoku(w przód/ w tył)
obliczenie adresu docelowego skoku
+ ustawienie prognozy „wykonaj skok”
+ aktualizacja linii bufora
14. Pełny kontekst pamięci procesu jest przechowywany:
w rejestrach procesora
w odwróconej tablicy stron
w buforze TLB
w partycji przydzielanej procesorowi
w pamięci głównej
+ w pamięci wtórnej
na stosie programowym
w pamięci podręcznej
15. Charakterystycznymi cechami architektury klasy RISC są:
+ duża liczba rejestrów
rozbudowane tryby adresowania
niewielka liczba rozkazów
+ ustalony rozmiar kodu rozkazu
specjalne rejestry adresowe
+ proste tryby adresowania
+ specjalne rozkazy dostępu do pamięci
16. Jaka jest szybkość dodawania w układzie sumatora prefiksowego PPA:
+ odwrotnie proporcjonalna do logarytmu liczby bitów
17. Procesor ma architekture akumulatorową. Wskaż rozkazy spoza listy tego procesora.
+ bgt Rx, Ry, offset
add Rx
+ or Rx, Ry, A
+ load A,[Rz]
+ push Rx
+ sub Rx, #3, A
+ load Rx, [A]
18. Wystąpienie nadmiaru w dodawaniu w kodzie uzupełnieniowym U2 jest sygnalizowane jako:
wystąpienie wyjątku
przeniesienie równe 0
wskaźnik znaku równy 0
+ przeniesienie równe 1
19. Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora.
bgt Rx, Ry, offset
add Rx, #1, Rz
nand Rx, Ry, A
+ store Rx, [Rz]
20. Charakterystycznymi cechami architektury klasy CISC są:
+ użycie rejestru akumulatora
+ rozbudowanie tryby adresowania
niewielka liczba rozkazów
jednolita struktura kodów rozkazów
+ ograniczona używalność rejestrów
+ zmienny rozmiar kodu rozkazu
stosowa architektura procesora
21. Przekroczenie zakresu w odejmowaniu w kodzie znak-moduł jest sygnalizowane:
+ jako przeniesienie równe 1
jako wskaźnik nadmiaru równy 1
jako bit znaku równy 1
gdy znaki argumentu są jednakowe
22. Przekroczenie zakresu w dodawaniu i odejmowaniu w naturalnym kodzie binarnym sygnalizuje:
wskaźnik nadmiaru
wskaźnik przeniesienia
wskaźnik znaku
+ przeniesienie równe 1
23. Procesor ma architekture rejestr-pamięć. Wskaż rozkazy spoza listy tego procesora.
+ bgt offset
+ add Rx, [Ry], Rz
or [Rx], Ry
load A, [Rx, Rz]
24. Aktualizacja linii bufora pamięci podręczniej o organizacji asocjacyjnej następuje w trybie „no allocate on write”. Chybienie podczas odczytu po uprzednim unieważnieniu całego bufora:
powoduje unieważnienie linii chybionej
powoduje zmianę markowania przypadkowej linii
+ wymusza wypełnienia linii, jeśli nie jest to zakazane
+ powoduje przestój potoku
25. Linie bufora pamięci podręcznej z odwzorowaniem bezpośrednim są aktualizowane w trybie „no allocate on write”. Wymiana linii jest skutkiem:
chybienia podczas zapisu
błędnej prognozy skoku
+ chybienia podczas odczytu
+ pobrania antycypowanego
26. Aktualizacja linii bufora pamięci podręcznej o organizacji blokowo-skojarzeniowej(wielodrożnej) następuje w trybie „no allocate on write”. Chybienie podczas odczytu:
powoduje unieważnienie linii
+ powoduje zmianę markowania linii
+ zawsze wymusza wypełnienie linii
powoduje przestój potoku
27. Aktualizacja linii bufora pamięci podręcznej o organizacji wielodrożnej(blokowo-skojarzeniowej) następuje w trybie „allocate on write”. Bufor jest wypełniony. Chybienie podczas zapisu:
+ wymusza wymianę linii
jest skutkiem błędnej prognozy skoku
powoduje unieważnienie bufora
powoduje zapis argumentu do bufora zapisu
28. Linie bufora pamięci podręcznej z odwzorowaniem bezpośrednim są aktualizowane w trybie „allocate on write”, a bufor jest całkowicie wypełniony. Chybienie podczas zapisu:
+ wymusza wymianę linii
powoduje unieważnienie linii docelowej !! ½ punktów
powoduje blokadę bufora zapisu
powoduje przestój potoku <<może to ?
29. Aktualizacja linii bufora pamięci podręcznej o organizacji wielodrożnej (blokowo-skojarzeniowej) następuje w trybie „allocate on write”. Chybienie podczas zapisu:
+ wymusza wymianę linii
jest skutkiem błędnej prognozy skoku
wywołuje efekt migotania
powoduje zapis linii do bufora zapisu
30. Linie bufora pamięci podręcznej z odwzorowaniem bezpośrednim są aktualizowane w trybie „allocate on write”. Chybienie podczas zapisu:
+ wymusza wymianę linii
+ powoduje zmianą markowania linii
wywołuje efekt migotania
powoduje przestój potoku
odległość linii jednego podzbioru = 2048 linii / 4 (części cache) *128 bajtów rozmiar linii
####
Identyfikator linii = adres fizyczny - liczba bloków - liczba słów w linii
Liczba bloków = liczba linii / drożność pamięci
Liczba słów w linii = długość linii / długość słowa
####
Przestrzeń wirtualna = 2 ^ (identyfikator procesu - bity uprawnień + liczba bitów procesora)
Bufor TLB powinien zawierać co najmniej tyle deskryptorów = ilość stron
Deskryptor w TLB = bity kontrolne + bity uprawnień + wirtualny nr strony + ilość pamięci wirtualnej
####
Zbiór roboczy = ilość stron * rozmiar stron
Ilość deskryptorów = ilość stron
Ilość deskryptorów = zbiór roboczy / rozmiar stron
####
Ilość deskryptorów w TLB = liczba stron
Ilość deskryptorów w IPT = rozmiar pamięci głównej / rozmiar strony