przypisanie różnym strukturom programowym tych samych obszarów pamięci fizycznej
|
|
- Konrad Kurowski
- 7 lat temu
- Przeglądów:
Transkrypt
1 1 Arytmetyka 1.1 Reprezentacja danych Kod znak moduł Intuicyjną metodą reprezentacji liczb całkowitych jest osobne kodowanie znaku + albo - i wartości bezwzględnej liczby. Kod 0... reprezentuje liczbę dodatnią, 1... liczbę ujemną. Zero można przedstawić jako +0 (00..00) lub -0 (10..00) Kod U2 Aby uzyskać reprezentację w kodzie U2 liczby przeciwnej do liczby o kodzie np = 76 10, wykorzystujemy algorytm negowania bitów i dodania Kod ASCII Ze względu na początkowe bity (najwyższe) kodu ASCII mamy: Kody znaków sterujących 000b bbbb oraz Kody liczb dziesiętnych 0011 bbbb gdzie bbbb jest dwójkowym kodem wartości liczby Kody liter alfabetu (małe) 011b bbbb gdzie b bbbb jest dwójkowym kodem nru. porządkowego w alfabecie Kody liter alfabetu (duże) 010b bbbb gdzie b bbbb jest dwójkowym kodem nru. porządkowego w alfabecie Kod spolaryzowany +N Zapis spolaryzowany z przyjętym N = 2 n 1 1 powoduje, że gdyby bity z tego zapisu traktować jako NKB, od liczby dziesiętnej odejmujemy N, otrzymując naszą liczbę. Np = = ( ) 2 = Arytmetyka zmiennoprzecinkowa Normalizacja wyniku operacji zmiennoprzecinkowej Skutkiem normalizacji wyniku mnożenia może być nadmiar (niedomiar) lub usunięcie pozornego niedomiaru (nadmiaru), w zależności od potęgi w podstawie β. Skutkiem normalizacji wyniku dzielenia może być wystąpienie nadmiaru, niedomiaru bądź uzyskanie w wyniku nieskończoności. Skutkiem normalizacji wyniku dodawania lub odejmowania może być wystąpienie nadmiaru, niedomiaru bądź utrata dokładności wyniku. 2 Pamięć 2.1 Zarządzanie pamięcią Pamięć wirtualna Zaniechanie bezpośredniego odwzorowania adresów logicznych używanych w programie na adresy fizyczne w pamięci głównej prowadzi do koncepcji pamięci wirtualnej. Brak stałych powiązań między logiczną i fizyczną strukturą pamięci umożliwia: przypisanie różnym strukturom programowym tych samych obszarów pamięci fizycznej łatwą realizację mechanizmów zarządzania pamięcią Translacja adresu wirtualnego na rzeczywisty wymaga relokacji bloków pamięci. Najprostszym mechanizmem translacji, który może być użyty gdy rozmiar pamięci wirtualnej jest mniejszy niż rozmiar pamięci rzeczywistej, jest relokacja. Polega ona na sumowaniu adresu wirtualnego i wektora relokacji pobranego z rejestru relokacji. Wyklucza on dzielenie zasobów pamięci (dla jednego procesu jest określony jeden wektor relokacji). Możliwa jest jednak ochrona zasobów przez porównanie adresu wirtualnego z zakresem jego zmienności, deponowanym w dodatkowym rejestrze ochrony. 1
2 Jednoczesna ochrona i dzielenie zasobów możliwe są podczas stronicowania lub segmentacji (możliwe jest jednoczesne stosowanie obu tych metod translacji adresu), które umożliwiają odwzorowanie większej wirtualnej przestrzeni adresowej w mniejszą rzeczywistą przestrzeń adresową. Cechą wspólną segmentacji i stronicowania jest adresowanie deskryptorowe. Adres wirtualny zawiera wskaźnik opisu adresu rzeczywistego umieszczonego w tablicy opisów oraz adres lokalny, określający względne położenie obiektu w segmencie lub na stronie (przemieszczenie adresu rzeczywistego względem adresu odniesienia). W stronicowaniu pamięci cały obszar pamięci rzeczywistej dzieli się na bloki o identycznym rozmiarze, zwane stronami, których typowym rozmiarem jest obecnie 4 kb przy 32-bitowych adresach rzeczywistych. Alternatywnie stosować można rozwiązanie integracji stron w bloki o rozmiarze 2 K. W segmentacji cały obszar pamięci rzeczywistej jest podzielony na bloki zwane segmentami o rozmiarach odpowiadających logicznym strukturom danych programu, definiowanych w przestrzeni adresów wirtualnych Różne obliczenia Rozmiar zbioru roboczego: ilość stron * rozmiar strony (bajtów) Wirtualna przestrzeń adresowa procesora m-bitowego: 2 (rozmiar ident. procesu bity uprawnień+m) bajtów Adres strony wirtualnej: przestrzeń adresowa / rozmiar strony Ilość różnych procesów: przestrzeń wirtualna / 2 m Ilość deskryptorów TLB: ilość stron Rozmiar skrótu adresu wirtualnego: ilość stron (rozmiar w bitach) Rozmiar tablicy TLB: ilość deskryptorów * rozmiar deskryptora po zaokrągleniu do wielokrotności 2 Ilość deskryptorów TLB: 2 (bity uprawnień) + 2 (bit obecności i używalności) + ilość bitów przestrzeni adresowej + ilość bitów przestrzeni po haszowaniu Rozmiar tablicy IPT: pamięć główna / rozmiar strony Rozmiar deskryptora IPT: ilość bitów adresu strony + hash strony wirtualnej Pełna tablica stron Deskryptor w pełnej tablicy stron zawiera bit obecności, kod praw dostępu, numer segmentu wirtualnego i jego adres Odwrócona tablica stron Wykorzystywania do zmniejszenia rozmiaru tablicy, zawiera jeden wpis dla każdej strony rzeczywistej, który obejmuje znacznik strony (skrót wirtualnego adresu strony), numer strony wirtualnej i jej adres. 2.2 Organizacja pamięci Ze względu na sposób dostępu do danych wyróżnia się trzy rodzaje pamięci: pamięć o dostępie swodobnych (RAM) stały czas dostępu do danych pamięć tylko do odczytu (ROM) PROM pamięć programowalna EPROM pamięć kasowana promieniowaniem UV EEPROM pamięć kasowana silnym impulsem elektrycznym pamięć do odczytu-zapisu (RAM) DRAM pamięć dynamiczna SRAM pamięć statyczna NVRAM pamięć nieulotna (nie niszczona dzięki dodatkowemu zasilaniu) pamięć o dostępie sekwencyjnym (SAM) czas dostępu do danej zależy od jej położenia 2
3 pamięci optyczne (nośniki CD) pamięci magnetyczne (dyski twarde, dyskietki) pamięć adresowana zawartością (CAM), zwana też pamięcią asocjacyjną Hierarchia pamięci jednopoziomowej rejestry pamięć główna pamięć wtórna archiwum czas dostępu ns ns 1 15 ms pojemność B MB 1 40 GB > 100 GB pobór mocy duży mały bardzo mały bardzo mały Tablica 1: Hierarchia pamięci jednopoziomowej Skuteczność buforów cache Ilościowa ocena skuteczności: współczynnik trafień h współczynnik chybień m = 1 h t mp średnia strata czasu w razie chybienia Średni czas dostępu do pamięci: w pamięci jednopoziomowej t a = (1 m)t ca + m(t ram + t mp ) w pamięci dwupoziomowej t a = (1 m 1 )t cal + (m 1 m 2 )(t ca2 + t mp1 ) + m 2 (t ram + t mp1 + t mp2 ) Linia adresowa Jeśli linia zawiera 2 k bajtów, to tylko część adresu fizycznego jest użyta jako identyfikator adresu linii, a pozostałe k bitów adresu służy do identyfikacji bajtów. Rozmiar linii powinien być dostosowany do możliwości szybkich transferów danych. Czas wyszukiwania w buforze log 2 N, optymalna ilość linii bufora to N = 2 n linii. Bufor pamięci podręcznej ma rozmiar C = s N, gdzie N to liczba, a s rozmiar linii. Jeśli szerokość magistrali danych wynosi 2 k bajtów, a transfer blokowy jest zestawieniem 2 m (zwykle 4) transferów całą szerokością magistrali, to linia powinna zawierać 2 k 2 m = 2 k+m bajtów. Z drugiej strony, liczba linii w pamięci podręcznej powinna umożliwić skopiowanie kilkunastu (najlepiej 2 N ) stron o rozmiarze 2 P bajtów każda. Linia zawiera zwykle 4, 8 lub q6 słów (16/32/6B), liczba linii wynosi od 2 7 do Charakterystyka pamięci podręcznej Pojemność bufora: ilość linii * rozmiar linii (bajty) Ilość bloków: ilość linii / drożność (2 b ) Identyfikator linii: rozmiar adresu fizycznego - rozmiar bloków (b) - rozmiar słowa - 1 Ilość słów w linii: ilość bajtów w linii / rozmiar słowa W odwzorowaniu bez przeplotu, linie podzbioru pamięci głównej tworzą spójne obszary o rozmiarze 2 K+N, gdzie 2 K jest rozmiarem linii, zaś 2 N liczbą podzbiorów linii (liczbą bloków). W odwzorowaniu w przeplotem, podzbiór tworzą linie których adresy (etykiety) różnią się o 2 K+N. 3
4 2.2.5 Strategie wypełniania pamięci Zapis może być poprzedzony kopiowaniem nieobecnej linii (allocate on write), ale nie musi (no allocate on write). Organizacja całkowicie skojarzeniowa Linia pamięci może być kopiowana do jednej dowolnej lokacji pamięci podręcznej. W celu identyfikacji linii w pamięci podręcznej należy porównać adres tej linii z wszystkimi etykietami adresowymi, co komplikuje układ porównania i wydłuża czas kojarzenia. Zaletą pamięci całkowicie skojarzeniowej jest brak konfliktu odwzorowania (największy współczynnik trafień, zależny tylko od rozmiaru i liczby linii). Organizacja z odwzorowaniem bezpośrednim Zaletą pamięci z odwzorowaniem bezpośrednim jest najkrótszy czas kojarzenia. Adres linii porównywany jest tylko z jedną etykietą adresową, wskazaną przez rekord indeksujący adresu, odpowiadający numerowi linii pamięci głównej w zbiorze linii. W pamięci z odwzorowaniem bezpośrednim, linii pamięci jest przypisana lokacja w pamięci podręcznej. Jeśli dwie linie ze zbioru roboczego programu należą do tego samego zbioru skojarzeń, to wystąpi zjawisko migotania (trashing) naprzemianna wymiana tych linii której skutkiem są chybienia oraz zmniejszenie współczynnika trafień i wydłużenie czasu dostępu. Organizacja wielodrożna Pamięć wielodrożna jest rozwiązaniem kompromisowym. W danym podzbiorze linii takiego bufora mogą być kopiowane tylko linie skojarzonego z nimi podzbioru linii pamięci głównej. Identyfikacja po części adresu zwaną rekordem indeksującym, dzięki czemu poszukiwanie linii jest zawężone do podzbioru wskazanego indeksem, mamy rzadsze konflikty, osłabione jest zjawisko migotania i rośnie współczynnik trafień Model zbioru roboczego 1. Lokalność czasowa oznacza tendencję do powtarzania odwołań, realizowanych w niedawnej przeszłości. 2. Lokalność przestrzenna oznacza tendencję do odwołań do obiektów umieszczonych w obszarze adresowym obejmującym obiektu, które były już użyte w programie Strategie pobierania informacji Udostępnienie (czyli pobranie) informacji w celu jej użycia może być realizowane jako pobranie planowane w chwili ustanawiania procesu, pobranie wymuszone na skutek błędu braku obiektu (np. braku strony lub segmentu) oraz pobranie antycypowane na podstawie prognozy zapotrzebowania procesu na dane. Realizacja tego ostatniego jest bardzo trudna w segmentacji, ponieważ segmenty to niezależne jednostki logiczne, a ich zbiór nie okazuje lokalności przestrzennej. Dodatkowym problemem jest zmienny rozmiar segmentu, co znakomicie utrudnia planowanie przydziału pamięci Strategie przydzielania linii Aby uniknąć wymiany pamięci podczas przełączania procesów, jednemu procesowi jest przydzielana tylko część adresowalnego obszaru pamięci głównej zwana partycją. Obszar taki może być spójny (o ciągłym adresowaniu) lub podzielony na kilka bloków. Jeśli rozmiar pamięci udostępnionej procesom jest mniejszy od sumy potrzeb, konieczna jest wymiana przydzielanych bloków. Wyróżniamy partycję stałą, tj. taką o stałym w czasie życia procesu rozmiarze bloku (łatwa implementacja, nieefektywna przy procesach o dużej zmienności lokalności), oraz zmienną o dynamicznym przydziale pamięci, odpowiednio do aktualnych potrzeb procesu (trudniejsza do implementacji, umożliwiają relokację części pamięci przydzielonej innemu procesowi). Strategia przydziału powinna nie tylko minimalizować rozmiar dziur powstałych podczas wymiany linii (ze względu na fragmentację pamięci), ale także uwzględniać koszt relokacji. Najczęściej stosowane metody przydziału, dzięki którym możliwe jest efektywne usuwanie powstałych dziur z listy, to: BF najlepsze wpasowanie uporządkowanie według rosnących rozmiarów dziur, prowadzi do powstania w pamięci wielu bezużytecznych małych dziur WF najgorsze wpasowanie uporządkowanie według malejących rozmiarów dziur, statystycznie równoważna strategii WF FF pierwsze wpasowanie uporządkowanie według rosnących adresów, zasadniczą wadą jest kumulacja dziur o małym rozmiarze na początku listy 4
5 BB wpasowanie binarne konieczne jest utworzenie wielu list i weryfikacji dwóch przy każdej wymianie Strategie wymiany stron dla partycji stałych Dla partycji stałych stosowanymi strategiami wymiany są FIFO, gdzie kolejka stron do wymiany jest ustawiona w kolejności ich umieszczania w pamięci (nie uwzględnia intensywności używania stron), LRU, w której wymienia się stronę najdawniej używaną (wymaga użycia etykiet czasowych i indeksacji kolejności referencji). W przypadku strategii LRU stosujemy algorytmy przybliżone, tj. algorytm dodatkowych bitów odwołań (cykliczny łańcuch odniesień, przesuwanie bitu w lewo co określony czas) oraz algorytm drugiej szansy (zmodyfikowane FIFO, tj. FINUFO) Strategie wymiany stron dla partycji zmiennych Partycje zmienne są nieco trudniejsze w realizacji od partycji stałych, ale umożliwiają dynamiczne zmiany obszaru przydzielonej pamięci. Wyróżniamy strategie dla pamięci stronicowanych oraz segmentowanych. Dla stronicowanych wyróżniamy: WS strategia globalna, w której występuje wymiana całego zbioru roboczego; przyjmuje się, że zbiór roboczy tworzą wszystkie strony, do których nastąpiło d ostatnich lub wszystkie odwołania w ustalonym przedziale czasu między kolejnymi wywłaszczeniami procesu (po każdym planowym wznowieniu procesu następuje korekcja rozmiaru); PFF stosownie do częstości błędu braku strony, ustalamy wartości progowe min i max i jeśli częstość błędy jest mniejsza od wartości minimalnej, to pomniejszamy rozmiar partycji o wszystkie strony nieużywane od ostatniej wymiany, jeśli zaś większe od wartości maksymalnej, to wstrzymana jest wymiana stron, a rozmiar partycji zostaje zwiększony; Partycje zmienne są bardzo trudne do stosowania, jeśli używana jest segmentacja, bo rozszerzenia musiałyby mieć rozmiar segmentu, który nie jest stały. W praktyce ustala się rozmiar partycji równy wielokrotności standardowego rozmiaru segmentu lub jego połowy (zwykle 32 lub 64 KB), choć problem można rozwiązać stosując segmentację stronicową Obsługa linii Unieważnienie linii następuje przed pierwszym wypełnieniem (linie nie wypełnione) wskutek zewnętrznej zmiany oryginału danych w pamięci głównej wskutek przełączania procesów Wypełnianie linii oraz wymiana linii następuje wskutek chybienia podczas odczytu wskutek chybienia (w trybie allocate on write) podczas zapisu Podczas odczytu danej trafienie powoduje brak zmian stanu linii chybienie uruchamia procedurę wypełniania linii i powoduje przestój potoku Podczas zapisu danej wskutek trafienia * wykonujemy zapis skrośny modyfikacja kopii w buforze wyższego poziomu * wykonujemy zapis lokalny + opóźniony zapis do bufora wyższego poz. podczas usuwania linii * wykonujemy unieważnienie linii trafionej i zapis bezpośredni do p. głównej lub bufora w. poz. wskutek chybienia no allocate on write zapis do pamięci głównej lub bufora poziomu wyższego allocate on write wypełnienie i zapis 5
6 3 Przepływ sterowania 3.1 Obszar bloku aktywacji na stosie funkcje W tym obszarze stosu znajdują się: parametry bezpośrednie przekazane przez funkcję wywołującą parametry implikowane (tworzone automatycznie) wskaźnik powiązania statycznego funkcji nadrzędnej wskaźnik powiązania dynamicznego funkcji nadrzędnej adres powrotu kontekst funkcji wywołującej (słowo procesora PSW i zawartość rejestrów) dane lokalne Okna rejestrowe W procesorach RISC jest stosowany też inny mechanizm powiązania funkcji, zwany oknami rejestrowymi. Na każdym spośród P poziomów zagnieżdżania oprócz s rejestrów globalnych, dostępny jest zestaw rejestrów lokalnych i dwa zestawy po k rejestrów transferowych (jeden na wyższym, drugi na niższym poziomie zagnieżdżenia). Indeksy rejestrów lokalnych i globalnych są jednakowe na każdym poziomie. Rejestry transferowe są przeindeksowywane po wywołaniu lub zakończeniu wywołania funkcji tak, że ich początek nie ulega zmianie, a ich indeksy na każdym poziomie zagnieżdżenia są zawsze takie same. Zaletą stosowania okien rejestrowych jest szybkość przekazywania parametrów (przeindeksowanie wykonać można w tle). Wadą jest ograniczona pojemność pliku rejestrowego (ale w praktyce liczba parametrów jest niewielka, więc nie jest to wada zbyt istotna). 4 Przetwarzanie współbieżne 4.1 Przełączanie procesów Wszystkie przełączenia procesów inicjowane przez proces aktualnie wykonywany są jawne i synchroniczne. Szczególnym przypadkiem jest żądanie wykonania usługi systemowej, realizowane przy każdym jawnym przełączaniu. Skutkiem niepożądanego przebiegu procesu jest zdarzenie zwane wyjątkiem, którego powodem może być wykryty błąd danych (nadmiar, dzielenie przez zero), naruszenie ochrony pamięci, przepełnienie stosu lub próba wykonania niedozwolonej operacji. Wystąpienie wyjątku jest sygnalizowane przez przerwanie wewnętrzne, ale jego obsługa może być też wywoływana na skutek pułapki programowej. Przerwanie może być też skutkiem zdarzenia zewnętrznego (asynchronicznego z procesem) i sygnalizuje ono zwykle potrzebę obsługi peryferium. Jeśli nie jest ono skutkiem wyjątku krytycznego, jego obsługa może być odłożona Konteksty Przełączanie procesów wiąże się z przełączaniem kontekstu. O ile możliwa jest podzielność tej czynności, o tyle przełączenie minimalnego kontekstu procesora musi być niepodzielne. Obejmuje on następujące dane: rejestr stanu procesora licznik programu wskaźnik systemowych struktur danych procesu Ze względu na dynamiczny charakter tych danych konieczne jest sprzętowe wspomaganie przełączania minimalnego kontekstu procesora. Przełączanie pełnego kontekstu procesora, znajdującego się w tablicy procesu, może być wykonane programowo. Pełny kontekst procesora obejmuje rejestr stanu, licznik programu, rejestry ogólne, rejestry sterujące i połączenia do procesów współpracujących. Blok sterujący (kontekst) procesu zawiera informacje identyfikując proces, obejmujące: identyfikator procesu priorytet i informacje o harmonogramie wykonania procesu 6
7 rozmiar i lokalizacja przydzielonej pamięci wskaźnik kontekstu procesora wskaźnik kontekstu pamięci Przydatne wzory Ilość jednocz. procesów: rozmiar pamięci / rozmiar zbioru roboczego - ilość zbiorów dla proc. rezydentnych Obszar procesów rezydentnych: ilość proc. rezydentnych * rozmiar zbioru roboczego Przerwania Przełączanie procesów jest inicjowane przez przerwanie wewnętrzne lub zewnętrzne. Nie wszystkie są jednakowo ważne, więc mamy priorytety przerwań (H high, M medium, L low). Przerwania najwyższego rzędu (H) muszą być bezzwłocznie obsłużone. Przerwania poziomu pośredniego (M) muszą być obsłużone bez opóźnień Odłożenie obsługi przerwania poziomu najniższego (L) grozi tylko zmniejszeniem przepustowości systemu lub opóźnieniem wykonania procesu. Z uwagi na hierarchię przerwań i potrzebę synchronizacji procesów ich obsługi z innymi procesami, niezbędna jest kontrola możliwości zgłoszenia. Takie sterowanie można zrealizować za pomocą mechanizmów maskowania przerwań i odkładania obsługi. Najprostszy sposób maskowania polega na blokowaniu wszystkich przerwań danej klasy, z tym, że przerwania z klasy H są przerwaniami niemaskowalnymi, zatem częściej stosujemy odkładanie przerwań, aczkolwiek odkładanie przerwań krytycznych ze względu na czas obsługi poziomu M może powodować takie same skutki jak ich ignorowanie. Choć zgłoszenia przerwań mogą być asynchroniczne, to ich obsługa musi być synchroniczna. Wyróżniamy przerwania precyzyjne i nieprecyzyjne. Przerwania precyzyjne ich obsługa może rozpocząć się dopiero po zakończeniu instrukcji, podczas której nastąpiło zgłoszenie i wszystkich instrukcji ją poprzedzających. Mogą być inicjowane zdarzeniami zewnętrznymi albo wykonaniem instrukcji. Są one głównie skutkiem: wytworzenia błędnego wyniku (wyjątek programowy) naruszenia reguł ochrony niemożliwego wykonania instrukcji (np. brak strony na dysku) wstrzymania instrukcji sygnalizacji żądania obsługi we/wy Nie zablokowanie przerwania precyzyjnego skutkuje zatrzymaniem potoku. Przerwania nieprecyzyjne ich obsługa rozpoczyna się natychmiast po zgłoszeniu, bez względu na stan procesu. Mają one charakter katastroficzny i są zwykle związane z błędem sprzętu albo zerowaniem systemu Obsługa przerwań krytycznych Przerwania o najwyższym priorytecie są rozpoznawane niezależnie od innych przez osobne wejścia przerywające. Dotyczy to zwykle przerwań nieprecyzyjnych, takich jak błąd transmisji na magistrali, częściowe wznowienie, ale może także dotyczyć przerwań precyzyjnych generalnego znaczenia (systemowych). 4.2 Obsługa wyjątków Wyjątki sprzętowe są skutkiem technologicznej degradacji elementów lub wpływu środowiska i nie można ich uniknąć. Uszkodzenia te mogą być trwałe i nietrwałe (przemijające lub chwilowe). Ich obsługa polega na zapewnieniu poprawnego działania systemu nawet w obecności błędów, co wymaga wprowadzenia nadmiaru w postaci statycznej (nadmiarowe kodowanie na poziomie architektury), czasowej (ponawianie operacji i porównywanie wyników) bądźdynamicznej (automatyczne włączenie modułów zapasowych). Pierwsze dwie eliminują błędy przemijające, ostatnie dwa (tak, tak) błędy trwałe. Wyjątki programowe są skutkiem nieuniknionych błędów programów, a ich obsługa obejmuje wykrywanie (testowanie poprawności danych) i identyfikację ich przyczyn. 7
8 5 Przetwarzanie potokowe 5.1 Rozwiązywanie konfliktów przetwarzania W sekwencyjnym przetwarzaniu programu przyczyną zakłóceń są przerwania lub wyjątki, które wymuszają wstrzymanie wykonania programu w celu obsługi tych zdarzeń. Przyczyny blokady potoku można podzielić na trzy zasadnicze grupy - konflikt sterowania, konflikt danych i konflikt strukturalny Konflikt strukturalny Konflikt strukturalny, nazywany też konfliktem zasobu lub konfliktem dostępu może przejawiać się jako konflikt dostępu do pamięci podręcznej (w wyniku żądania dostępu do 2 linii jednocześnie), konflikt wydłużonego dostępu do pamięci (chybienie), konflikt dostępu do pliku rejestrowego (jednoczesne żądania użycia rejestrów pliki), konflikt przedłużonego wykonania instrukcji złożonej Konflikt danych Sposoby łagodzenia lub eliminacji konfliktów zależą od typu zależności. Wyróżnia się cztery rodzaje komfliktów: RAR odczyt po odczycie; wymagane umożliwienie dwuportowego odczytu rejestrów RAW odczyt po zapisie; skrót na ścieżkach przepływu danych WAR zapis do odczycie; przemianowanie rejestrów, ze względu na destruktywność operacji zapisu WAW zapis do zapisie; jak wyżej - przemianowanie rejestrów Konflikt sterowania Konflikty sterowania można minimalizować na podstawie prognozy rozgałęzienia (skoku). Prognoza może być statyczna oparta na identyfikacji kodu rozkazu, lub dynamiczna oparta na historii przetwarzania. Straty wywołane przez rozgałęzienia warunkowe można zmniejszać metodami programowymi (przyspieszenie chwili wytworzenia warunku przez zmianę sekwencji rozkazów) lub sprzętowymi. Prognoza statyczna jest oparta na rozpoznawaniu skoków bezwarunkowych lub warunkowych i polega na dwóch regułach statystycznych: Prawo 90/10 około 90% rozgałęzień warunkowych w tył jest wykonywanych Prawo 50/50 szanse wykonania i niewykonania rozgałęzienia warunkowego do przodu są jednakowe Prognoza statyczna nie jest skuteczna dla skoku warunkowego i skoku pośredniego. Prognoza dynamiczna jest oparta na analizie szansy wykonania rozgałęzienia na podstawie dotychczasowej historii jego wykonania. Etykieta szansy skoku jest przypisana adresowi docelowemu skoku, więc układ dynamicznej prognozy rozgałęzień musi zawierać rejestr wcześniejszych rozgałęzień, zwany buforem prognozy BTB. Przechowuje on etykietę szansy (bit prognozy statycznej) oraz adres instrukcji docelowej skoku. Bufor ten jest aktualizowany po wykonaniu każdego skoku warunkowego. Jest ona weryfikowana w trakcie dekodowania i może być połączona z prognozą statyczną. 6 Architektura 80x86/Pentium 6.1 Lista rozkazów jednostki MMX Jednostka MMX operuje na argumentach 64-bitowych i używa rejestrów pliku zmiennoprzecinkowego, lecz w trybie dostępu swobodnego a nie sekwencyjnego jak FPU. Podczas wykonywania działań MMX rejestry stosu są nazywane MM# (numery od 0 do 7), a dla każdego działania jeden z operandów może być umieszczony w pamięci. Rozkazy MMX operują na 8-, 16- lub 32-bitowych rekordach słowa podwójnej długości (64-bitowego), wykonując wskazane działanie współbieżnie na wszystkich rekordach. Argumentu rozkazów MMX są zawsze traktowane jako stałoprzecinkowe. 8
9 Spis treści 1 Arytmetyka Reprezentacja danych Kod znak moduł Kod U Kod ASCII Kod spolaryzowany +N Arytmetyka zmiennoprzecinkowa Normalizacja wyniku operacji zmiennoprzecinkowej Pamięć Zarządzanie pamięcią Pamięć wirtualna Różne obliczenia Pełna tablica stron Odwrócona tablica stron Organizacja pamięci Hierarchia pamięci jednopoziomowej Skuteczność buforów cache Linia adresowa Charakterystyka pamięci podręcznej Strategie wypełniania pamięci Model zbioru roboczego Strategie pobierania informacji Strategie przydzielania linii Strategie wymiany stron dla partycji stałych Strategie wymiany stron dla partycji zmiennych Obsługa linii Przepływ sterowania Obszar bloku aktywacji na stosie funkcje Okna rejestrowe Przetwarzanie współbieżne Przełączanie procesów Konteksty Przydatne wzory Przerwania Obsługa przerwań krytycznych Obsługa wyjątków Przetwarzanie potokowe Rozwiązywanie konfliktów przetwarzania Konflikt strukturalny Konflikt danych Konflikt sterowania Architektura 80x86/Pentium Lista rozkazów jednostki MMX Ostatnia aktualizacja: 17 czerwca 2010, 22:32 9
przypisanie różnym strukturom programowym tych samych obszarów pamięci fizycznej
1 Arytmetyka 1.1 Reprezentacja danych 1.1.1 Kod znak moduł Intuicyjną metodą reprezentacji liczb całkowitych jest osobne kodowanie znaku + albo - i wartości bezwzględnej liczby. Kod 0... reprezentuje liczbę
Bardziej szczegółowoProcesor 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ę 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ą
Bardziej szczegółowoZarządzanie pamięcią operacyjną
SOE Systemy Operacyjne Wykład 7 Zarządzanie pamięcią operacyjną dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Hierarchia pamięci czas dostępu Rejestry Pamięć podręczna koszt
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 7 Jan Kazimirski 1 Pamięć podręczna 2 Pamięć komputera - charakterystyka Położenie Procesor rejestry, pamięć podręczna Pamięć wewnętrzna pamięć podręczna, główna Pamięć zewnętrzna
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 12 Wspomaganie systemu operacyjnego: pamięć wirtualna Partycjonowanie Pamięć jest dzielona, aby mogło korzystać z niej wiele procesów. Dla jednego procesu przydzielana jest
Bardziej szczegółowoZarządzanie pamięcią w systemie operacyjnym
Zarządzanie pamięcią w systemie operacyjnym Cele: przydział zasobów pamięciowych wykonywanym programom, zapewnienie bezpieczeństwa wykonywanych procesów (ochrona pamięci), efektywne wykorzystanie dostępnej
Bardziej szczegółowoSystemy operacyjne III
Systemy operacyjne III WYKŁAD Jan Kazimirski Pamięć wirtualna Stronicowanie Pamięć podzielona na niewielki bloki Bloki procesu to strony a bloki fizyczne to ramki System operacyjny przechowuje dla każdego
Bardziej szczegółowoarchitektura komputerów w. 8 Zarządzanie pamięcią
architektura komputerów w. 8 Zarządzanie pamięcią Zarządzanie pamięcią Jednostka centralna dysponuje zwykle duża mocą obliczeniową. Sprawne wykorzystanie możliwości jednostki przetwarzającej wymaga obecności
Bardziej szczegółowoSchematy zarzadzania pamięcia
Schematy zarzadzania pamięcia Segmentacja podział obszaru pamięci procesu na logiczne jednostki segmenty o dowolnej długości. Postać adresu logicznego: [nr segmentu, przesunięcie]. Zwykle przechowywana
Bardziej szczegółowoSOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus
SOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Pamięć wirtualna Stronicowanie na żądanie większość współczesnych systemów
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 9 Pamięć operacyjna Właściwości pamięci Położenie Pojemność Jednostka transferu Sposób dostępu Wydajność Rodzaj fizyczny Własności fizyczne Organizacja Położenie pamięci
Bardziej szczegółowoKsięgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86
Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86 Spis treści Wprowadzenie... 11 1. Architektura procesorów rodziny x86... 17 1.1. Model procesorów
Bardziej szczegółowoZarządzanie pamięcią operacyjną
Dariusz Wawrzyniak Plan wykładu Pamięć jako zasób systemu komputerowego hierarchia pamięci przestrzeń owa Wsparcie dla zarządzania pamięcią na poziomie architektury komputera Podział i przydział pamięci
Bardziej szczegółowoZarządzanie pamięcią. Od programu źródłowego do procesu. Dołączanie dynamiczne. Powiązanie programu z adresami w pamięci
Zarządzanie pamięcią Przed wykonaniem program musi być pobrany z dysku i załadowany do pamięci. Tam działa jako proces. Podczas wykonywania, proces pobiera rozkazy i dane z pamięci. Większość systemów
Bardziej szczegółowoOd programu źródłowego do procesu
Zarządzanie pamięcią Przed wykonaniem program musi być pobrany z dysku i załadowany do pamięci. Tam działa jako proces. Podczas wykonywania, proces pobiera rozkazy i dane z pamięci. Większość systemów
Bardziej szczegółowoPamięć. Jan Tuziemski Źródło części materiałów: os-book.com
Pamięć Jan Tuziemski Źródło części materiałów: os-book.com Cele wykładu Przedstawienie sposobów organizacji pamięci komputera Przedstawienie technik zarządzania pamięcią Podstawy Przed uruchomieniem program
Bardziej szczegółowoPamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4
Pamięć wirtualna Przygotował: Ryszard Kijaka Wykład 4 Wstęp główny podział to: PM- do pamięci masowych należą wszelkiego rodzaju pamięci na nośnikach magnetycznych, takie jak dyski twarde i elastyczne,
Bardziej szczegółowoZarządzanie pamięcią operacyjną zagadnienia podstawowe
Zarządzanie pamięcią operacyjną zagadnienia podstawowe Pamięć jako zasób systemu komputerowego Pamięć jest zasobem służący do przechowywania danych. Z punktu widzenia systemu pamięć jest zasobem o strukturze
Bardziej szczegółowoWprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy
1 Wprowadzenie do informatyki i użytkowania komputerów Kodowanie informacji System komputerowy Kodowanie informacji 2 Co to jest? bit, bajt, kod ASCII. Jak działa system komputerowy? Co to jest? pamięć
Bardziej szczegółowoSpis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne
Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...
Bardziej szczegółowoWydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1
Wydajność systemów a organizacja pamięci Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Motywacja - memory wall Krzysztof Banaś, Obliczenia wysokiej wydajności. 2 Organizacja pamięci Organizacja pamięci:
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania
Bardziej szczegółowoStruktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami
Rok akademicki 2015/2016, Wykład nr 6 2/21 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2015/2016
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoZarządzanie zasobami pamięci
Zarządzanie zasobami pamięci System operacyjny wykonuje programy umieszczone w pamięci operacyjnej. W pamięci operacyjnej przechowywany jest obecnie wykonywany program (proces) oraz niezbędne dane. Jeżeli
Bardziej szczegółowoWykład 7. Zarządzanie pamięcią
Wykład 7 Zarządzanie pamięcią -1- Świat idealny a świat rzeczywisty W idealnym świecie pamięć powinna Mieć bardzo dużą pojemność Mieć bardzo krótki czas dostępu Być nieulotna (zawartość nie jest tracona
Bardziej szczegółowoStronicowanie w systemie pamięci wirtualnej
Pamięć wirtualna Stronicowanie w systemie pamięci wirtualnej Stronicowanie z wymianą stron pomiędzy pamięcią pierwszego i drugiego rzędu. Zalety w porównaniu z prostym stronicowaniem: rozszerzenie przestrzeni
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoAdresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów
Adresowanie obiektów Bit - stan pojedynczego sygnału - wejście lub wyjście dyskretne, bit pamięci Bajt - 8 bitów - wartość od -128 do +127 Słowo - 16 bitów - wartość od -32768 do 32767 -wejście lub wyjście
Bardziej szczegółowoDziałanie systemu operacyjnego
Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej I NIC sieci Pamięć operacyjna Przerwania Przerwania
Bardziej szczegółowoMOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje
Bardziej szczegółowoLABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q
LABORAORIUM PROCESORY SYGAŁOWE W AUOMAYCE PRZEMYSŁOWEJ Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q 1. Zasady arytmetyki stałoprzecinkowej. Kody stałopozycyjne mają ustalone
Bardziej szczegółowoUkład sterowania, magistrale i organizacja pamięci. Dariusz Chaberski
Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy
Bardziej szczegółowoSystem pamięci. Pamięć podręczna
System pamięci Pamięć podręczna Technologia Static RAM (SRAM) Ułamki nanosekund, $500-$1000 za GB (2012r) Dynamic RAM (DRAM) 50ns 70ns, $10 $20 za GB Pamięci Flash 5000-50000 ns, $0.75 - $1 Dyski magnetyczne
Bardziej szczegółowoWydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1
Wydajność systemów a organizacja pamięci Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Wydajność obliczeń Dla wielu programów wydajność obliczeń można traktować jako wydajność pobierania z pamięci
Bardziej szczegółowoLogiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
Bardziej szczegółowoWydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.
Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Organizacja pamięci Organizacja pamięci współczesnych systemów komputerowych
Bardziej szczegółowoDziałanie systemu operacyjnego
Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej sieci Pamięć operacyjna Przerwania Przerwania Przerwanie
Bardziej szczegółowoPamięć wirtualna. Jan Tuziemski Źródło części materiałów: os-book.com
Pamięć wirtualna Jan Tuziemski Źródło części materiałów: os-book.com Pamięć wirtualna Na poprzednich wykładach omówiono sposoby zarządzania pamięcią Są one potrzebne ponieważ wykonywane rozkazy procesów
Bardziej szczegółowoDziałanie systemu operacyjnego
Działanie systemu operacyjnego Budowa systemu komputerowego Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej Pamięć
Bardziej szczegółowoPRZYDZIAŁ PAMIĘCI OPERACYJNEJ
PRZYDZIAŁ PAMIĘCI OPERACYJNEJ dr inż. Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Wstęp Pamięć komputera wielka tablica słów (bajtów)
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 4 Tryby adresowania i formaty Tryby adresowania Natychmiastowy Bezpośredni Pośredni Rejestrowy Rejestrowy pośredni Z przesunięciem stosowy Argument natychmiastowy Op Rozkaz
Bardziej szczegółowoSystem plików przykłady. implementacji
Dariusz Wawrzyniak Plan wykładu CP/M MS DOS ISO 9660 UNIX NTFS System plików (2) 1 Przykłady systemu plików (1) CP/M katalog zawiera blok kontrolny pliku (FCB), identyfikujący 16 jednostek alokacji (zawierający
Bardziej szczegółowoWydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1
Wydajność systemów a organizacja pamięci Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Wydajność obliczeń Dla wielu programów wydajność obliczeń można traktować jako wydajność pobierania z pamięci
Bardziej szczegółowoPrzykładowe pytania DSP 1
Przykładowe pytania SP Przykładowe pytania Systemy liczbowe. Przedstawić liczby; -, - w kodzie binarnym i hexadecymalnym uzupełnionym do dwóch (liczba 6 bitowa).. odać dwie liczby binarne w kodzie U +..
Bardziej szczegółowoOrganizacja typowego mikroprocesora
Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają
Bardziej szczegółowoSystemy Operacyjne Pamięć wirtualna cz. 2
Systemy Operacyjne Pamięć wirtualna cz. 2 Arkadiusz Chrobot Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 20 stycznia 2007 1 1 Wstęp 2 Minimalna liczba ramek 3 Algorytmy przydziału
Bardziej szczegółowoARCHITEKTURA PROCESORA,
ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy
Bardziej szczegółowoMikroprocesory rodziny INTEL 80x86
Mikroprocesory rodziny INTEL 80x86 Podstawowe wła ciwo ci procesora PENTIUM Rodzina procesorów INTEL 80x86 obejmuje mikroprocesory Intel 8086, 8088, 80286, 80386, 80486 oraz mikroprocesory PENTIUM. Wprowadzając
Bardziej szczegółowoSystem plików przykłady implementacji
System plików przykłady implementacji Dariusz Wawrzyniak CP/M MS DOS ISO 9660 UNIX NTFS Plan wykładu System plików (2) Przykłady implementacji systemu plików (1) Przykłady implementacji systemu plików
Bardziej szczegółowoStruktura i działanie jednostki centralnej
Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala
Bardziej szczegółowoSpis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11
Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1 Spis treúci Przedmowa... 9 Wstęp... 11 1. Komputer PC od zewnątrz... 13 1.1. Elementy zestawu komputerowego... 13 1.2.
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2009/2010 Wykład nr 8 (29.01.2009) dr inż. Jarosław Forenc Rok akademicki
Bardziej szczegółowodr inŝ. Jarosław Forenc
Rok akademicki 2009/2010, Wykład nr 8 2/19 Plan wykładu nr 8 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2009/2010
Bardziej szczegółowo3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/2012 2 / 22
ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH struktury procesorów ASK SP.06 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 1 Maszyny wirtualne 2 3 Literatura c Dr inż. Ignacy
Bardziej szczegółowoSystem pamięci. Pamięć podręczna
System pamięci Pamięć podręczna Technologia Static RAM (SRAM) Ułamki nanosekund, $500-$1000 za GB (2012r) Dynamic RAM (DRAM) 50ns 70ns, $10 $20 za GB Pamięci Flash 5000-50000 ns, $0.75 - $1 Dyski magnetyczne
Bardziej szczegółowoSystem plików. Warstwowy model systemu plików
System plików System plików struktura danych organizująca i porządkująca zasoby pamięci masowych w SO. Struktura ta ma charakter hierarchiczny: urządzenia fizyczne strefy (partycje) woluminy (w UNIXie:
Bardziej szczegółowoTechnologie Informacyjne
System binarny Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności October 7, 26 Pojęcie bitu 2 Systemy liczbowe 3 Potęgi dwójki 4 System szesnastkowy 5 Kodowanie informacji 6 Liczby ujemne
Bardziej szczegółowoWprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne
Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne 1. Bit Pozycja rejestru lub komórki pamięci służąca do przedstawiania (pamiętania) cyfry w systemie (liczbowym)
Bardziej szczegółowoMikrokontroler ATmega32. Język symboliczny
Mikrokontroler ATmega32 Język symboliczny 1 Język symboliczny (asembler) jest językiem niskiego poziomu - pozwala pisać programy złożone z instrukcji procesora. Kody instrukcji są reprezentowane nazwami
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoSystem pamięci. Pamięć wirtualna
System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni
Bardziej szczegółowoBazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania
Plan wykładu Bazy danych Wykład 10: Fizyczna organizacja danych w bazie danych Model logiczny i model fizyczny Mechanizmy składowania plików Moduł zarządzania miejscem na dysku i moduł zarządzania buforami
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły
Bardziej szczegółowoHaszowanie (adresowanie rozpraszające, mieszające)
Haszowanie (adresowanie rozpraszające, mieszające) Tadeusz Pankowski H. Garcia-Molina, J.D. Ullman, J. Widom, Implementacja systemów baz danych, WNT, Warszawa, Haszowanie W adresowaniu haszującym wyróżniamy
Bardziej szczegółowoSystem pamięci. Pamięć wirtualna
System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni
Bardziej szczegółowoSYSTEMY OPERACYJNE WYKLAD 4 - zarządzanie pamięcią
Wrocław 2007 SYSTEMY OPERACYJNE WYKLAD 4 - zarządzanie pamięcią Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl www.equus.wroc.pl/studia.html 1 PLAN: 2. Pamięć rzeczywista 3. Pamięć wirtualna
Bardziej szczegółowo, " _/'--- " ~ n\l f.4e ' v. ,,v P-J.. ~ v v lu J. ... j -:;.",II. ,""", ",,> I->~" re. dr. f It41I r> ~ '<Q., M-c 'le...,,e. b,n '" u /.
I, ", - hk P-J.. ~,""", ",,> I->~" re. dr... j -:;.",II _/'--- " ~ n\l f.4e ' v f It41I r> ~ '
Bardziej szczegółowoArytmetyka binarna - wykład 6
SWB - Arytmetyka binarna - wykład 6 asz 1 Arytmetyka binarna - wykład 6 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Arytmetyka binarna - wykład 6 asz 2 Naturalny kod binarny (NKB) pozycja 7 6 5 4 3 2
Bardziej szczegółowoDziałanie systemu operacyjnego
Działanie systemu operacyjnego Budowa systemu komputerowego I NIC Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej
Bardziej szczegółowoDodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych
Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych B.1. Dostęp do urządzeń komunikacyjnych Sterowniki urządzeń zewnętrznych widziane są przez procesor jako zestawy rejestrów
Bardziej szczegółowoMikroprocesor Operacje wejścia / wyjścia
Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych
Bardziej szczegółowoJęzyki i metodyka programowania. Reprezentacja danych w systemach komputerowych
Reprezentacja danych w systemach komputerowych Kod (łac. codex - spis), ciąg składników sygnału (kombinacji sygnałów elementarnych, np. kropek i kresek, impulsów prądu, symboli) oraz reguła ich przyporządkowania
Bardziej szczegółowoMagistrala systemowa (System Bus)
Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki systemowa (System Bus) Pamięć operacyjna ROM, RAM Jednostka centralna Układy we/wy In/Out Wstęp do Informatyki
Bardziej szczegółowoang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku
System plików 1. Pojęcie pliku 2. Typy i struktury plików 3. etody dostępu do plików 4. Katalogi 5. Budowa systemu plików Pojęcie pliku (ang( ang. file)! Plik jest abstrakcyjnym obrazem informacji gromadzonej
Bardziej szczegółowoSystem pamięci. Pamięć wirtualna
System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni
Bardziej szczegółowoPośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:
Współpraca mikroprocesora z urządzeniami zewnętrznymi Urządzenia wejścia-wyjścia, urządzenia których zadaniem jest komunikacja komputera z otoczeniem (zwykle bezpośrednio z użytkownikiem). Do najczęściej
Bardziej szczegółowoSystemy operacyjne System plików
Systemy operacyjne System plików Dr inż. Dariusz Caban mailto:dariusz.caban@pwr.wroc.pl tel.: (071)320-2823 Pamięci o bezpośrednim dostępie powierzchnia/głowica sektor cylinder/ścieżka Przykłady: HDD,
Bardziej szczegółowoNaturalny kod binarny (NKB)
SWB - Arytmetyka binarna - wykład 6 asz 1 Naturalny kod binarny (NKB) pozycja 7 6 5 4 3 2 1 0 wartość 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 wartość 128 64 32 16 8 4 2 1 bity b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 System
Bardziej szczegółowoarchitektura komputerów w. 7 Cache
architektura komputerów w. 7 Cache Pamięci cache - zasada lokalności Program używa danych i rozkazów, które były niedawno używane - temporal locality kody rozkazów pętle programowe struktury danych zmienne
Bardziej szczegółowo16MB - 2GB 2MB - 128MB
FAT Wprowadzenie Historia FAT jest jednym z najstarszych spośród obecnie jeszcze używanych systemów plików. Pierwsza wersja (FAT12) powstała w 1980 roku. Wraz z wzrostem rozmiaru dysków i nowymi wymaganiami
Bardziej szczegółowoArchitektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
Bardziej szczegółowoZarządzanie pamięcią operacyjną i pamięć wirtualna
Zarządzanie pamięcią operacyjną i pamięć wirtualna Pamięć jako zasób systemu komputerowego. Wsparcie dla zarządzania pamięcią na poziomie architektury komputera. Podział i przydział pamięci. Obraz procesu
Bardziej szczegółowoPamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci. Ptc 2013/2014 13.12.2013
Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci półprzewodnikowe, Betty Prince, WNT Ptc 2013/2014 13.12.2013 Pamięci statyczne i dynamiczne Pamięci statyczne SRAM przechowywanie informacji
Bardziej szczegółowoLEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
Bardziej szczegółowoPrzerwania, polling, timery - wykład 9
SWB - Przerwania, polling, timery - wykład 9 asz 1 Przerwania, polling, timery - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Przerwania, polling, timery - wykład 9 asz 2 Metody obsługi zdarzeń
Bardziej szczegółowoKod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.
Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych. Jeśli bit znaku przyjmie wartość 0 to liczba jest dodatnia lub posiada wartość 0. Jeśli bit
Bardziej szczegółowoBudowa systemów komputerowych
Budowa systemów komputerowych Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Współczesny system komputerowy System komputerowy składa
Bardziej szczegółowoProjektowanie. Projektowanie mikroprocesorów
WYKŁAD Projektowanie mikroprocesorów Projektowanie układ adów w cyfrowych - podsumowanie Algebra Boole a Bramki logiczne i przerzutniki Automat skończony System binarny i reprezentacja danych Synteza logiczna
Bardziej szczegółowoPodstawy. Pamięć wirtualna. (demand paging)
Pamięć wirtualna Podstawy Podstawy Stronicowanie na żądanie Wymiana strony Przydział ramek Szamotanie (thrashing) Pamięć wirtualna (virtual memory) oddzielenie pamięci logicznej użytkownika od fizycznej.
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2009/2010 Wykład nr 7 (15.05.2010) dr inż. Jarosław Forenc Rok akademicki
Bardziej szczegółowoWspółpraca procesora ColdFire z pamięcią
Współpraca procesora ColdFire z pamięcią 1 Współpraca procesora z pamięcią zewnętrzną (1) ROM Magistrala adresowa Pamięć programu Magistrala danych Sygnały sterujące CS, OE Mikroprocesor FLASH, SRAM, DRAM
Bardziej szczegółowoMetody obsługi zdarzeń
SWB - Przerwania, polling, timery - wykład 10 asz 1 Metody obsługi zdarzeń Przerwanie (ang. Interrupt) - zmiana sterowania, niezależnie od aktualnie wykonywanego programu, spowodowana pojawieniem się sygnału
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 4 Jan Kazimirski 1 Reprezentacja danych 2 Plan wykładu Systemy liczbowe Zapis dwójkowy liczb całkowitych Działania arytmetyczne Liczby rzeczywiste Znaki i łańcuchy znaków
Bardziej szczegółowoArchitektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania
Architektura Systemów Komputerowych Jednostka ALU Przestrzeń adresowa Tryby adresowania 1 Jednostka arytmetyczno- logiczna ALU ALU ang: Arythmetic Logic Unit Argument A Argument B A B Ci Bit przeniesienia
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2012/2013 Wykład nr 6 (03.04.2013) Rok akademicki 2012/2013, Wykład
Bardziej szczegółowodr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury
Rok akademicki 2012/2013, Wykład nr 6 2/43 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2012/2013
Bardziej szczegółowoWydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1
Wydajność obliczeń a architektura procesorów Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność komputerów Modele wydajności-> szacowanie czasu wykonania zadania Wydajność szybkość realizacji wyznaczonych
Bardziej szczegółowo