1. Wymień wady i zalety trzech typów odwzorowania pamięci podręcznej.
Mapowanie bezpośrednie - pamiec dzieli się na strony zgodnie z rozmiarem bloku pamieci podręcznej : prostota kontrukcji , szybkość odszukiwania informacji, brak elastyczności, mala efektywność szczególnie jeśli dochodzi do skokow poza granice stron
Pelna asocjacja - umozliwia skladowanie dowolnej linijki RAM, w dowolnym miejscu pamieci podręcznej, nie ma symbolicznego podzialu pamieci na strony, operuje się linijkami: odszukanie informacji w pamieci podręcznej wymaga przeszukania całego katalogu TRAM, bowiem linijka może znajdowac się na dowolnej pozycji. Konstrukcje tego typu maja uzasadnione zastosowanie dla blokow pamieci podręcznej nie przekraczających 4 KB
Asocjacja zespolowa- kombinacja dwoch poprzednich : podzial pamieci podręcznej na rowne porcje, zwykle 2,4,8 zwane kanałami. Wymiar strony pamieci RAM odpowiada kanałowi w pamieci podrecznej
2. Do czego służy bufor TLB w bloku zarządzania pamięcią?
pamięć podręczna funkcjonująca jak pamięć podręczna współpracująca z pamięcią główną ,zawiera te zapisy tablic stron które były ostatnio używane ,służy do szybkiego odwzorowywania adresów logicznych pamięci wirtualnej na adresy pamięci fizycznej w komputerach stosujących stronicowanie pamięci
3. Opisz jakie czynności musi wykonać CPU po odebraniu sygnału zgłoszenia przerwania?
Wstrzymuje aktualnie wykonywana prace
Przechodzi do ustalonego miejsca w pamieci. Miejsce to zawiera na ogół adres startowy procedury obsługującej dane przerwanie
Wykonanie procedury obsługi przerwania
Wznowienie przerwanych obliczen
Po przyjęciu przerwania procesor wykonuje następujące operacje :
wysyła na stos zawartość rejestru znaczników (flag)
zeruje znacznik zezwolenia przerwań I
zeruje znacznik pracy krokowej T
zawartość rejestrów CS (rejestr kodu segmentu programu) i PC (IP) (rejestr rozkazu) są wysyłane na stos, a z tablicy wektorów przerwań są pobierane nowe wartości dla tych rejestrów
4.Wymienić wady oraz zalety stosowania stronnic o małej lub dużej wielkości .
jak są małe ,to jest ich dużo i potrzeba więcej miejsca w pamieci na tablice deskryptorów tych stron ,czas wyszukiwania odpowiedniego deskryptora jest dłuższy
5.Co to jest MMX oraz jakie ma zastosowania ?
MMX (MultiMedia eXtensions lub Matrix Math eXtensions) to zestaw 57 instrukcji SIMD dla procesorów Pentium i zgodnych. Rozkazy MMX mogą realizować działania logiczne i arytmetyczne na liczbach całkowitych. Pierwotnie wprowadzone w 1997 przez Intela dla procesorów Pentium MMX, aktualnie dostępne również na procesory innych producentów - wraz z rozwojem procesorów i dodawaniem nowych rozszerzeń (np. SSE) zbiór rozkazów MMX powiększał się.
Przykłady zastosowań:
wyświetlanie grafiki trójwymiarowej: przekształcenia geometryczne, cieniowanie, teksturowanie;
filtrowanie sygnałów: obrazów statycznych, filmów, dźwięku;
wyświetlanie grafiki dwuwymiarowej (blue box, maskowanie, przezroczystość);
6. Jaki wpływ ma DMA na efektywność systemu?
DMA ma za zadanie odciążyć procesor główny od samego przesyłania danych z miejsca na miejsce (np. z urządzenia wejściowego do pamięci), procesor może w tym czasie zająć się 'produktywnym' działaniem, wykonując kod programu pobrany uprzednio z pamięci RAM do pamięci cache operujący na danych w tejże pamięci zgromadzonych, przeklada się to na szybkość dzialania systemu
7. Różnice między segmentacją a stronicowaniem .
Stronicowanie to rozwiązanie, w którym proces widzi spójny obszar pamięci logicznej, ale nie tworzy ona spójnego obszaru w pamięci fizycznej. Zarówno pamięć logiczna, jak i pamięć fizyczna jest podzielona na kawałki równej wielkości. W odniesieniu do pamięci logicznej mówimy o stronach, a w odniesieniu do pamięci fizycznej mówimy o ramkach. Wielkość stron i ramek jest potęgą dwójki z przedziału od 512B do 16MB. Typowa wielkość to 4kB. Strony i ramki są podstawowymi jednostkami przydziału pamięci. W rezultacie, wielkość przydzielonego procesowi obszaru jest wielokrotnością wielkości ramek i stron. Strony pamięci logicznej mogą być umieszczone w dowolnych ramkach pamięci fizycznej. Nie muszą tworzyć spójnego obszaru w pamięci fizycznej, ani nie muszą występować w określonej kolejności.
Segmentacja : Pamięć wykorzystywana przez proces, z logicznego punktu widzenia, nie stanowi jednego spójnego obszaru. Zwykle składa się z kilku segmentów. Typowe segmenty to: kod programu, zmienne globalne, stos i sterta. System operacyjny może więc przydzielać procesom pamięć nie w postaci jednego spójnego bloku, ale kilku takich bloków, segmentów. Co więcej, proces może w trakcie działania prosić o przydzielenie lub zwolnienie segmentów.
8. RAID ,co to jest oraz jakie ma zastosowanie ?
RAID (ang. Redundant Array of Independent Disks, Nadmiarowa macierz niezależnych dysków) - polega na współpracy dwóch lub więcej dysków twardych w taki sposób, aby zapewnić dodatkowe możliwości, nieosiągalne przy użyciu jednego dysku. RAID używa się w następujących celach:
zwiększenie niezawodności (odporność na awarie),
przyspieszenie transmisji danych,
powiększenie przestrzeni dostępnej jako jedna całość.
9. Opisz protokół MESI.
MESI (inaczej Illinois protocol) — protokół spójności danych w pamięci podręcznej komputera, stosowany w większości współczesnych procesorów.
Każda linia pamięci podręcznej ma przydzielony jeden z czterech stanów (zakodowanych na dwóch dodatkowych bitach):
M (Modified) - linia pamięci jest dostępna tylko w jednym z poziomów cache, i jest różna od zawartości pamięci operacyjnej.
E (Exclusive) - linia pamięci jest dostępna tylko w jednym z poziomów cache, oraz w pamięci operacyjnej.
S (Shared) - linia pamięci jest dostępna na wszystkich poziomach cache oraz w pamięci operacyjnej
I (Invalid) - linia pamięci jest nieaktualna i może zostać zastąpiona inną.
10.Dlaczego DDRAM jest 2x szybszy od SDRAM ?
W pamięciach DDR dane przesyłane są zarówno w czasie trwania rosnącego jak i opadającego zbocza zegara ,przez co została uzyskana większa przepustowość
11. Opisz fragmentacje wewnętrzną i zewnętrzna. Kiedy występuje i metody zapobiegania
Fragmentacja wewnętrzna (angielskie internal fragmentation), straty pamięci powodowane nieużytkami występującymi w ostatnich blokach plików lub w końcowych stronach programu. Zmniejszanie fragmentacji polega na stosowaniu mniejszych bloków, co jednak wydłuża czas przesyłania informacji między pamięcią operacyjną a pamięcią dyskową. Fragmentację wewnętrzną można zmniejszyć zmniejszając wielkość strony. To jednak oznacza zwiększenie rozmiaru tablicy stron.
Fragmentacja zewnętrzna (angielskie external fragmentation), straty pamięci powodowane nieużytkami, czyli dziurami (holes) występującymi na dysku lub w pamięci operacyjnej między poszczególnymi blokami informacji.
Fragmentację zewnętrzną można usunąć za pomocą stronicowania, jednak w przypadku dużych stron pojawia się fragmentacja wewnętrzna. Również przydział listowy lub indeksowy likwiduje fragmentację zewnetrzną, lecz powoduje zwiększone zużycie pamięci (na pamiętanie wskaźników bloków).
12. Narysuj schemat stronicowania.
13. Wymień i opisz rejestry 32 bitowego procesora x86
Ogolnego przeznaczenia
16bit=AX, BX,CX.,DX a te dziela się na dwie 8bitowe czesci AH,AL;BH,BL;CH,CL;DH,DL
Rejestry danych :32bit=E(extend)AX-akumulacji,EBX-bazowy,ECX-licznika,EDX-danych
64bit=REAX,REBX,RECX,REDX
BP-wskaznik bazowy, SP-wskaznik stosu, SI-zrodlo,DI-przeznaczenie,
Segmentowe
CS-segment kodu,SS-poczatek stosu(adres),DS-rejestr segmentu danych ,ES,FS,GS-pomocnicze danych
Systemowe(adresowe)
Flag:
CF-przeniesienia
PF-parzystosci
AF- przeniesienie pomocnicze
ZF-znacznik zera
SF- znacznik znaku
TF-znacznik pułapki
IF- znacznik zezwolenia na przyjmowanie przerwan
DF-znacznik kierunku
OF-nadmiar lub przepełnienie
IOPL-znacznik (2bitowy) poziomu uprzywilejowania
NT- znacznik zadania zagnieżdżonego
RF-znacznik wznowienia
VM-znacznik trybu wirtualnego 8086 w trybie chronionym wlacza tryb procesora wirtualnego 8086
AC-flaga sprawdzania wyrównania
VIF-flaga przerwania wirtualnego
VIP- flaga nie obsłużonego przerwania wirtualnego
ID-znacznik identyfikacji procesora
Wskaźnik instrukcji
Sterowania CR0,CR1,CR2,CR3
CR0- zapewnia ogolne sterowanie trybami pracy procesora
CR1- nie jest wykorzystywany
CR2-chroni 32bitowy adres uszkodzonej strony pamieci
CR3-chroni fizyczny adres bazowy tablicy katalogu stron
CR4- zawiera bity dotyczące poszczególnych rozszerzen architektury prosecorow (P+)
Przygotowania(ustawiania)
Testowania
Specyficzne (zalezne od modelu procesora)
14. Jaki powinien być optymalny rozmiar sektora na dysku na którym przechowujemy filmy dla systemu plików NTFS ?
4KB , ze względu na wielkość plikow przechowywanych
15. Co to jest CRC i do czego służy. Na jakiej zasadzie jest obliczany?
CRC (ang. Cyclic Redundancy Check - cykliczny kod nadmiarowy) to matematyczna suma kontrolna wykorzystywana do wykrywania uszkodzonych danych binarnych. CRC jest resztą z binarnego dzielenia ciągu danych przez relatywnie krótki dzielnik, zwany generatorem lub wielomianem CRC. W praktyce stosuje się najczęściej wielomiany o długości 17 lub 33 bitów, dające odpowiednio wyniki 16 (CRC-16) i 32 bitów (CRC-32).
16. Co oznacza na płycie CD logiczną 1?
Zmiane stanu (przejscie z Pit na Land) lub odwrotnie
17. Dlaczego płyta dvd mieści więcej danych niż płyta Cd?
Ponieważ, zagłębienia na dvd sa 2x mniejsze niż na Cd, podobnie jak oddalenie sciezek od siebie,dane na dvd sa przechowywane na 2 warstwach
18. Co to jest BIOS i do czego służy?
BIOS (akronim ang. Basic Input/Output System - podstawowy system wejścia-wyjścia) to zapisany w pamięci stałej, zestaw podstawowych procedur pośredniczących pomiędzy systemem operacyjnym a sprzętem. Jest to program zapisany w pamięci ROM (Read Only Memory - pamięć tylko do odczytu) płyty głównej oraz innych urządzeń takich jak karta graficzna. Zajmuje się wstępną obsługą urządzeń wejścia/wyjścia, kontroluje transfer danych pomiędzy komponentami takimi jak dysk twardy, procesor czy napęd CD-ROM. Inicjuje program rozruchowy. BIOS potrzebny jest w komputerach osobistych ze względu na architekturę płyt głównych, gdzie dzięki ACPI kontroluje zasilanie, jak również monitoruje temperaturę itp.
19. Opisz największe różnice pomiędzy architekturami CISC i RISC
CISC:
rozbudowane instrukcje - operacje arytmetyczne dozwolone bezpośrednio na lokalizacjach w pamieci(nie tylko na rejestrach)
Rozna długość instrukcji- najczęściej 8bitowe
Znaczne roznice czasu wykonania poszegolnych instrukcji
RISC:
Znacznie ograniczony zestaw instrukcji- operacje ALU tylko na rejestrach,prosty tryb adresowania
Wszystkie instrukcje identycznej długości ( np.:32bity), staly czas wykonania każdej instrukcji- najczęściej jeden cykl zegara
Znacznie prostsza kontrukcja procesora i wynikajaca stad możliwość pracy przy większych częstotliwościach zegara taktujacego
20. Narysowac schemat dzialania algorytmu LRU
21. Co to jest potok i dlaczego został wprowadzony. Opisz 4 podstawowe składniki potoku.
Potok jest kolejką bajtow organizowana miedzy dwoma procesami
Pobranie rozkazu
Dekodowanie
Wykonanie rozkazu
Zakończenie i zapisanie wynikow
22. Do czego służy mostek północny a do czego południowy.
Mostek północny (ang. northbridge) - element współczesnych chipsetów, realizujący połączenia pomiędzy procesorem, pamięcią operacyjną, magistralą AGP lub PCI Express i mostkiem południowym.
W większości współczesnych płyt głównych mostek północny pełni rolę kontrolera pamięci oraz pośrednika pomiędzy procesorem, pamięcią operacyjną i kartą graficzną
Mostek południowy (ang. southbridge) - element współczesnych chipsetów, realizujący połączenie procesora do wolniejszej części wyposażenia mikrokomputera:
sterownika przerwań
sterownika DMA
nieulotnej pamięci BIOS
modułu zegara czasu rzeczywistego
Opcjonalnie most południowy może obsługiwać również:
23. Opisz tryb DMA i PIO. Do czego służą i jakie są różnice między nimi.
PIO (ang. Programmed Input Output - programowane wejście/wyjście) - technika obsługi operacji wejścia/wyjścia między CPU a urządzeniami IDE/ATA polegająca na wykorzystaniu procesora jako układu je nadzorującego. Wymaga dużego zaangażowania procesora w procesie transferu danych, dlatego jest używana coraz rzadziej, zwłaszcza, gdy wymagane są duże prędkości transmisji.
DMA (ang. Direct Memory Access - bezpośredni dostęp do pamięci) - technika, w której inne układy (np. kontroler dysku twardego, karta dźwiękowa, itd.) mogą korzystać z pamięci operacyjnej RAM lub (czasami) portów we-wy pomijając przy tym procesor główny - CPU.
PIO jest znacznie wolniejsze od DMA.
24. Z czego składa się obraz 3D renderowany przez kartę graficzną. Dlaczego wybrano taki element a nie inny?
Elementem tym jest trójkąt ,można nim przedstawić dowolnie skomplikowaną bryłę wykluczając jedynie powierzchnie fraktalne.
25. Kabel USB umożliwia zasilanie urządzeń zewnętrznych. Jakie występuje napięcie i jaki jest maksymalny prąd który można pobierać przez pojedynczy port USB komputera.
Napiecie 5 V, maksymalny prad 0,5 A
26. Jakie magistrale służą do komunikowania się procesora z kartą graficzną. Podaj maksymalną przepustowość każdej z nich.
AGP- 2GB/s, PCI - Express - 16GB/s
27. Czym różni się pamięć RAM od ROM ?
RAM- jest to pamiec o dostępie swobodnym, możliwy jest w niej zapis i odczyt danych,dane zostaja skasowane po odlaczeniu zasilania, ROM- jest to pamiec tylko do odczytu, przechowuje dane mimo zaniku zasilania
28. Napisz wzór na transfer dla magistrali równoległej. Jakie znasz magistrale równoległe.
PCI, SCSI ; T- transfer= S-szerokosc magistrali * f- częstotliwość taktowania
29. Kolory laserów dla CD, DVD, HD DVD. Który ma najmniejszą długość .
CD- czerwony 780nm, DVD- czerwony 650nm,HD DVD- niebieski 405nm
30. Masz do wyboru 2 dyski. SSD 80GB i HDD 80GB. Który byś wybrał i dlaczego. 3 powody
Wybral bym SSD ze względu na wieksza szybkość odczytu/zapisu, dluzsza żywotność gdyz nie posiada ruchomych czesci, dysk SSD jest bardziej energooszczędny
31. Dlaczego w architekturze harvardzkiej wprowadzono osobną pamięć dla kodu i danych?
Prostsza budowa przeklada się na wieksza szybkość dzialania. Jest powszechnie stosowana w mikrokomputerach jednoukładowych w których dane programu sa najczęściej zapisane w pamieci ROM, a dane tymczasowe natomiast w RAM
architektura harvardzka ulatiwa potokowe przetwarzanie , w architekturze von neumanna tworzylo sie tzw "waskie gardlo" na magistrali , w architekturze harvardzkiej zostało to wyeliminowane ,adres danej można podawać do pamięci danych już w czasie podawania adresu następnej instrukcji pamięci programu
32. Opisz 3 poziomowy system uprawnień.
Przeznaczony jest do zarzadzania wykorzystywaniem uprzywilejowanych instrukcji i dostępem do deskryptorow. Poziomy numeruje się od 0 do 3. Zerowy poziom odpowiada maksymalnym możliwościom dostępu i przydzielony jest dla jadra systemu operacyjnego. Pierwszy poziom odpowiada narzędziom systemowym , drugi rozszerzeniom systemu operacyjnego. Poziom 3 ma najbardziej ograniczonego prawa i zazwyczaj pozostawia się programom uzytkowym. Poziomy uprzywilejowania odnosza się do deskryptorow selektorow i zadan.
33. .Co to jest mikroprocesor oraz jakie podstawowe funkcje musi wykonywać ?
Mikroprocesor - układ odpowiadający funkcjonalnie jednostce centralnej komputera CPU, zgrupowanej w jednym układzie scalonym. Musi wykonywac następujące funkcje :
pobranie rozkazu z pamieci
pobranie danych z pamieci lub urzadzenia wejściowego
wykonanie operacji arytmetyczno-logicznej lub sterującej, określonej przez rozkaz
zapis wyniku w pamieci lub przeslanie go do urzadzenia wyjsciowego
34. Do czego służą rozkazy specjalne LGDT/LIDT ?
Instrukcje LGDT i LIDT - instrukcje ładujące pseudo-deskryptory z pamięci do rejestrów GDTR i IDTR.
35. Uzupełnij zdanie - Jeżeli dany typ danych ma być obsługiwany przez określony rozkaz, to musi on być . . . . . . . . . . . . . . . . . . . . . . . . „zaimplementowany sprzętowo”.
36. Wymień 4 rejestry ogólnego przeznaczenia dla procesorów 16 bitowych .
AX,BX,CX,DX
37. Opisz jak działa tryb chroniony i dlaczego został wprowadzony ?
Tryb chroniony (ang. protected mode) - tryb pracy mikroprocesora w którym jedno zadanie nie ma dostępu do danych wykorzystywanych przez inne zadanie. W przypadku procesorów Intel nowszych od 8086 realizowane jest to poprzez adresowanie każdego segmentu programu za pomocą selektora segmentu, a nie jak we wcześniejszych modelach bezpośrednio.
Wielozadaniowy tryb chroniony, jak sama nazwa wskazuje, umożliwia ochronę danych oraz kodu jednego procesu przed innymi procesami działającymi w ramach tego samego systemu. Uniemożliwia to stosowanie popularnych wcześniej sztuczek programistycznych polegających np. na bezpośrednim zapisie danych do pamięci karty graficznej.
.
38. Narysuj format selektora .
15 3 2 1 0
+----------------+---+------+
| indeks |TI | RPL |
+----------------+---+------+
TI (1 bit ang. Table Indicator) - wskazuje czy deskryptor znajduje się w globalnej tablicy deskryptorów (TI=0), czy lokalnej (TI=1)
indeks (13 bitów) - indeks w tablicy deskryptorów (0-8191)
RPL (2 bity ang. Requested Privilege Level) - stanowi mechanizm ochronny. Określa prawa dostępu do segmentu. Priorytet mogą mieć wartość od 0 (największe prawa) do 3.
39. Ochrona pamięci za pomocą segmentacji nie pozwala na ?
Odczytywanie parametrow segmentow , Procesy nie mają też prawa „widzieć” segmentów należących do innych programów
40.Jakie zadania związane z adresowaniem wirtualnym rozwiązano na drodze sprzętowej a jakie na drodze programowej?
Podział adresu programu na nr strony i nr bajtu na stronie jest wykonywany środkami sprzętowymi i niewidocznymi dla programisty, natomiast podział adresu programu na numery segmentu i bajtu jest logiczny (czyli dokonywany w ramach programu.)
41.W trakcie transmisji danych na magistrali PCI możliwe jest wydłużenie fazy przesyłania adresu i danych , napisz kiedy taka sytuacja jest możliwa ?
W momencie gdy inicjator badz urzadzenie docelowe nie sa gotowe do zakonczenia danej fazy transmisji
42.Co to jest deskryptor segmentu ,jaka struktura jest ściśle z nim związana?
8 bajtowa struktura występująca w globalnej oraz lokalnej tablicy deskryptorów zawierająca informacje o fizycznej lokalizacji segmentu w pamięci ,prawach dostępu do tego segmentu i jego numerze uprawnienia.
Scisle zwiazanie z deskryptorem sa selektory ,mają one taki sam indeks deskryptora segmentu lecz różnią się prawami uprzywilejowania.
43.Typy bram , do czego są wykorzystywane :
Bramy są wykorzystywane do specyfikacji punktów wejść do segmentów kodu
-bramy komunikacji (wywołania) - służą do przemieszczania się między warstwami oprogramowania w ramach obsługi jednego zadania
-bramy zadań -> używane są do przełączenia procesora między zadaniami
-bramy przerwań - wskazują wejście w procedury obsługi przerwań
-bramy pułapek - > to samo co przerwań ( rozni sie tym ze brama pulapek nie zeruje znacznika IF)
44.Każdy pakiet danych przesyłany magistralą USB poprzedza pewien element , co to jest i do czego on służy?
Jest to bajt synchronizacji ,zakodowana NRZI sekwencja siedmiu zer ,zakończona jedynką. Bajt ten jest wykorzystywany do dostrojenia układów wejściowych odbierających informację z magistrali usb