Procesor ma architekturę akumulatorową . Wskaż rozkazy spoza
Transkrypt
Procesor ma architekturę akumulatorową . Wskaż rozkazy spoza
Procesor ma architekturę akumulatorową . Wskaż rozkazy spoza listy tego procesora. • bgt Rx, Ry, offset • or Rx, Ry, A • add Rx • load A, [Rz] • push Rx • sub Rx, #3, A • load Rx, [A] Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. • bgt Rx, Ry, offset • nand Rx, Ry, A • add Rx, #1, Rz • store Rx, [Rz] Procesor ma architekturę rejestr-pamięć. Wskaż rozkazy spoza listy tego procesora. • bgt offset • or [Rx], Ry • add Rx, [Ry], Rz • load A, [Rx, Rz] Aktualizacja linii bufora pamięci podręcznej o organizacji wielodrożnej (blokowoskojarzeniowej) następuje w trybie „allocate on write”. Chybienie podczas zapisu: • wywołuje efekt migotania • wymusza wymianę linii • powoduje zapis linii do bufora zapisu • jest skutkiem błędnej prognozy skoku • powoduje przestój potoku • powoduje zmianę markowania linii Aktualizacja linii bufora pamięci podręcznej o organizacji wielodrożnej (blokowoskojarzeniowej) następuje w trybie „allocate on write”. Jeżeli wszystkie linie są wypełnione, to chybienie podczas zapisu: • wymusza wymianę linii • jest skutkiem błędnej prognozy skoku • powoduje unieważnienie bufora • powoduje zapis argumentu do pamięci głównej (RAM) Aktualizacja linii bufora pamięci podręcznej o organizacji blokowo-skojarzeniowej (wielodrożnej) następuje w trybie „no allocate on write”. Chybienie podczas odczytu: • zawsze wymusza wypełnienie linii • powoduje unieważnienie linii • powoduje przestój potoku • powoduje zmianę markowania linii Aktualizacja linii bufora pamięci podręcznej 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łnienie linii, jeśli nie jest to zakazane • Powoduje przestój potoku Sterownik bufora pamięci podręcznej o organizacji blokowo-skojarzeniowej (wielodrożnej) działa w trybie ¸allocate on write". Jeśli wszystkie linie są wypełnione, to wymiana linii następuje wskutek: • Chybienia podczas zapisu • Błędnej prognozy skoku • Wywołania procedury jak wyżej. • Trafienia podczas odczytu Sterownik bufora pamięci podręcznej o organizacji asocjacyjnej działa w trybie ¸no allocate on write". Jeśli niektóre linie są unieważnione, to skutkiem chybienia podczas odczytu jest: • Unieważnienie linii chybionej • Wypełnienie jednej z unieważnionych linii • Usunięcie jednej spośród unieważnionych linii • Przestój potoku 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 • Powoduje blokadę bufora zapisu • Powoduje przestój potoku 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 • zapełnienia bufora zapisu • chybienia podczas odczytu • pobrania antycypowanego • błędnej prognozy skoku Statyczna prognoza rozgałęzień (skoków): • musi by wykonana w fazie pobierania kodu • jest oparta na przesłankach statystycznych • jest weryfikowana podczas dekodowania • jest skuteczna dla skoku bezwarunkowego • jest skuteczna dla rozkazu skoku pośredniego • jest skuteczna średnio dla 90% skoków w przód • jest nieskuteczna dla skoku warunkowego Dynamiczna prognoza rozgałęzień (skoków): • jest weryfikowana w etapie wykonania • jest oparta na historii skoku • musi poprzedzać dekodowanie rozkazu • jest skuteczna dla rozkazu powrotu (RET) • jest nieskuteczna dla rozkazu skoku w przód • jest weryfikowana podczas dekodowania • może być połączona z prognozą statyczną Bufor prognozy skoków BTB jest aktualizowany: • po wykonaniu każdego skoku warunkowego • podczas prognozy wykonania • podczas wykonania rozkazu skoku • przed wykonaniem rozkazu skoku • podczas dekodowania rozkazu skoku • zgodnie z regułą 90/50 Linia bufora BTB zawiera następujące informacje: • adres rozkazu skoku • adres względny skoku • bity używalności tej linii • kod rozkazu skoku • bit kierunku skoku (w przód/ w tył) • kod prognozy skoku • adres docelowy skoku • bit obecności kodu skoku w pamięci • bity historii skoku • bit prognozy statycznej Skutkiem trafienia w buforze prognozy skoków BTB jest: • wykonanie rozkazu skoku • aktualizacja linii bufora • obliczenie adresu docelowego skoku • ustalenie warunku • zmiana bitu kierunku skoku (w przód/w tył) Skutkiem chybienia w buforze prognozy skoku (BTB) jest: • wykonanie skoku • zmiana bitu kierunku skoku (w przód/w tył) • obliczenie adresu docelowego skoku • wypełnienie lub wymiana linii bufora Maksymalny rozmiar wirtualnej przestrzeni adresowej zależy od: • rozmiaru strony • rozmiaru wskaźników adresowych (nie jestem pewny) • dopuszczalnej liczby procesów • zakresu relokacji • rozmiaru bufora TLB • pojemności pamięci wtórnej (dysku) • rozmiaru przestrzeni rzeczywistej • pojemności pamięci głównej • maksymalnego rozmiaru partycji Rozmiar logicznej przestrzeni adresowej zależy od: • dopuszczalnej liczby procesów • rozmiaru wskaźników adresowych • rozmiaru segmentów • maksymalnego rozmiaru partycji W bloku aktywacji funkcji na stosie są umieszczone: • adres powrotu • wskaźnik powiązania dynamicznego • wskaźnik powiązania statycznego • zmienne globalne • poprzedni stan wskaźnika stosu • kod rozkazu powrotu RET • wskaźniki struktur lokalnych • tryb adresowania • słowo stanu procesora • zmienne lokalne lub wskaźniki W bloku sterującym (PCB) każdego aktywnego procesu przechowywane są: • stos programowy • pełny kontekst procesora • rozmiar zbioru roboczego procesu • wskaźnik rekurencji procesu • wskaźnik powiązania procesu • kontekst pamięci każdego procesu • zbiór roboczy procesu • minimalny kontekst procesora • wskaźnik zagnieżdżenia procesu • wskaźnik kontekstu pamięci Pełny kontekst pamięci procesu jest przechowywany (nie mam pojęcia, jakie są dobre odp): • w rejestrach procesora • w odwróconej tablicy stron • w buforze TLB • w partycji przydzielonej procesowi • w pamięci głównej • w pamięci wtórnej • na stosie programowym • w pamięci podręcznej Minimalny kontekst procesora aktywnego procesu zawiera: • Pełny kontekst procesora • Wskaźnik zagnieżdżenia procesu • Słowo stanu procesora • Stan rejestru akumulatora 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 Charakterystycznymi cechami architektury klasy CISC są: • użycie rejestru akumulatora • rozbudowane tryby adresowania • niewielka liczba rozkazów • jednolita struktura kodów rozkazów • ograniczona używalność rejestrów • stosowa architektura procesora • zmienny rozmiar kodu rozkazu W formacie zmiennoprzecinkowym pojedynczej precyzji liczbami znormalizowanymi są: • zero • nieskończoność • (1)1001,101 w U2 • 3,14159 • 2^(–131) • –1 • NaN • 2,73 • 2^129 W formacie zmiennoprzecinkowym pojedynczej precyzji liczbami zdenormalizowanymi są: • zero • nieskończoność • 1+∞^(-1) • 3,24159^(-5) • 32^(-2031) • 16^41 (2^164) • 2^–131 W formacie zmiennoprzecinkowym podwójnej precyzji liczbami znormalizowanymi są: • NaN • -1 • e = 2,718282 • 8^44 (2^132) W formacie zmiennoprzecinkowym podwójnej precyzji liczbami zdenormalizowanymi są: • zero • nieskończoność • 3,14159^–5 • 2^(–1031) • 0,00000000000001 • π ^–1 = 0,318309 • 2^(–1131) Przerwania nieprecyzyjne są skutkiem: • braku strony w pamięci • żądań obsługi we/wy • wyjątków programowych • krytycznych błędów sprzętu Przerwania precyzyjne są skutkiem: • braku strony w pamięci • wyjątków programowych • podwójnych błędów transmisji na magistrali • żądań obsługi we/we • żądań transmisji DMA • krytycznych błędów sprzętu Żądanie obsługi we/wy może byś sygnalizowane jako: • Przerwanie precyzyjne • Wyjątek programowy • Żądanie transmisji DMA Błąd jednostki zmiennoprzecinkowej jest sygnalizowany jako: • przerwanie precyzyjne • wyjątek programowy • wywołanie systemowe Skutkiem braku danej strony w pamięci jest: • wyjątek • przerwanie nieprecyzyjne • przerwanie niemaskowalne • przerwanie programowe Przerwanie programowe jest: • Synchroniczne z programem • Skutkiem braku strony w pamięci • Skutkiem wystąpienia wyjątku Skutkiem normalizacji wyniku dzielenia zmiennoprzecinkowego może być: • nadmiar zmiennoprzecinkowy • niedomiar zmiennoprzecinkowy • nieskończoność Skutkiem normalizacji wyniku mnożenia zmiennoprzecinkowego może być: • nadmiar zmiennoprzecinkowy • niedomiar zmiennoprzecinkowy • nieskończoność Skutkiem normalizacji wyniku dodawania zmiennoprzecinkowego może być: • nadmiar zmiennoprzecinkowy • niedomiar zmiennoprzecinkowy • utrata dokładności Skutkiem normalizacji wyniku odejmowania zmiennoprzecinkowego może być: • nadmiar zmiennoprzecinkowy • niedomiar zmiennoprzecinkowy • NaN Deskryptor ramki strony w odwróconej tablicy stron zawiera: • bity obecności, używalności i zapisu • adres rzeczywisty ramki • numer strony wirtualnej • rozmiar ramki (raczej nie) Deskryptor ramki strony w pełnej tablicy stron zawiera: • Bity obecności, używalności i zapisu • Uprawnienia dostępu do strony • Skrót wirtualnego numeru (adresu) strony • Numer (adres) ramki strony w pamięci głównej Deskryptor strony w buforze tablicy stron (TLB) zawiera: • Bity obecności, używalności i zapisu • Skrót rzeczywistego numeru strony • Pełny wirtualny numer strony • Adres partycji, na której zlokalizowana jest strona • Adres strony na dysku • Wskaźnik wypełnienia strony Wyjątek jest skutkiem: • braku strony na dysku • błędu programowego • żądania obsługi we/wy Wystąpienie nadmiaru w dodawaniu w kodzie uzupełnieniowym U2 jest sygnalizowane jako: • przeniesienie równe 0 • wskaźnik znaku równy 0 • wystąpienie wyjątku • przeniesienie równe 1 *** Tych poniżej nie jestem pewny *** Przekroczenie zakresu w odejmowaniu w kodzie znak-moduł jest sygnalizowane: • jako przeniesienie równe 1 • jako bit znaku równy 1 • jako wskaźnik nadmiaru równy 1 • gdy znaki argumentów są jednakowe Przekroczenie zakresu w dodawaniu i odejmowaniu w kodzie uzupełnieniowym U2 sygnalizuje: • wskaźnik znaku • wskaźnik nadmiaru • wskaźnik przeniesienia • przeniesienie równe 0 Przekroczenie zakresu w dodawaniu i odejmowaniu w naturalnym kodzie binarnym sygnalizuje: • wskaźnik znaku • wskaźnik nadmiaru • wskaźnik przeniesienia • przeniesienie równe 1