• Artykuły
  • Forum
  • Ciekawostki
  • Encyklopedia
  • Memory management unit



    Podstrony: 1 [2] [3]
    Przeczytaj także...
    Motorola była międzynarodową firmą telekomunikacyjną założoną w 1928 roku, z siedzibą w Schaumburgu na przedmieściach Chicago (USA). Była spółką publiczną notowaną na giełdzie nowojorskiej (NYSE) (od 26 maja 1946) (symbol giełdowy: MOT), a w przeszłości także tokijskiej (od października 1988 do czerwca 2005) i Chicago Stock Exchange. 4 stycznia 2011 podzieliła się na dwie firmy, Motorola Mobility i Motorola Solutions.Struktura danych (ang. data structure) - sposób uporządkowania informacji w komputerze. Na strukturach danych operują algorytmy.
    Schemat działania MMU

    Jednostka zarządzania pamięcią (skr. MMU od ang. memory management unit) – zestaw układów realizujących dostęp do pamięci fizycznej żądanej przez CPU. Wśród zadań tych układów znajdują się funkcje translacji pamięci wirtualnej do pamięci fizycznej, ochronę pamięci, obsługę pamięci podręcznej, zarządzanie szynami danych oraz, w prostszych (szczególnie 8-bitowych) systemach, przełączanie banków pamięci.

    Stronicowanie jest jednym ze sposobów rozwiązania problemu zewnętrznej fragmentacji polegającym na dopuszczeniu nieciągłości rozmieszczenia logicznej przestrzeni adresowej procesu w pamięci fizycznej. Zostało użyte przez polskiego inżyniera Jacka Karpińskiego w architekturze komputera K-202.Tablica stron pamięci (Tablica stron, ang. Page table) to struktura danych używana przez mechanizmy wirtualizacji pamięci (zazwyczaj układ MMU) do przechowywania sposobu odwzorowania adresów pamięci logicznej (wirtualnej) w adresy pamięci fizycznej.
    Motorola 68451 – MMU dla procesora Motorola 68010 w postaci osobnego układu scalonego

    Charakterystyka[ | edytuj kod]

    Obecne układy MMU dzielą przestrzeń logiczną (wirtualną) pamięci na strony, których rozmiar wynosi 2, zazwyczaj kilka kilobajtów. Młodsze N bitów adresu (przesunięcie - ang. offset) pozostaje niezmienione, podczas gdy starsze bity adresu określają numer (logiczny) strony pamięci. MMU tłumaczy adresy logiczne (wirtualne) na adresy fizyczne za pomocą asocjacyjnej pamięci podręcznej nazywanej TLBang. translation lookaside buffer. Jeżeli TLB nie posiada odpowiedniego przypisania (rozmiar pamięci TLB jest ograniczony) uruchamiane są wolniejsze, sprzętowe mechanizmy procesora przeszukujące struktury danych znajdujące się w pamięci, co wymaga niekiedy pomocy ze strony oprogramowania (systemu operacyjnego). Pozycje w tych strukturach nazywają się wpisami (elementami) tablicy stron pamięci (PTEs - ang. page table entries), a cała struktura nazywana jest tablicą stron pamięci (ang. page table). Kompletny adres w pamięci fizycznej jest ustalany poprzez dodanie bitów przesunięcia do przetłumaczonego numeru strony.

    W informatyce tablica mieszająca lub tablica z haszowaniem (ang. hash table, niekiedy błędnie tłumaczone jako "tablica haszująca") to struktura danych, która jest jednym ze sposobów realizacji tablicy asocjacyjnej, tj. abstrakcyjnego typu danych służącego do przechowywania informacji, w taki sposób aby możliwy był do nich szybki dostęp. Tablica mieszająca umożliwia również szybkie porównywanie danych, np. fragmentów tekstów, plików.Pamięć komputerowa to różnego rodzaju urządzenia i bloki funkcjonalne komputera, służące do przechowywania danych i programów (systemu operacyjnego oraz aplikacji). Potocznie przez "pamięć komputerową" rozumie się samą pamięć operacyjną.

    Wpisy w TLB lub PTE mogą także przechowywać informację o tym, czy dostęp do strony odbył się w trybie zapisu (ang. dirty bit) czy w trybie odczytu (ang. accessed bit - bit pomocny algorytmom wymiatania pamięci), bity uprawnień do operacji na stronie pamięci (prawa dla trybu nadzorcy lub trybu użytkownika) lub informację o tym, czy strona może być przeniesiona do pamięci wymiany.

    System operacyjny (ang. Operating System, skrót OS) – oprogramowanie zarządzające systemem komputerowym, tworzące środowisko do uruchamiania i kontroli zadań użytkownika.Procesor (ang. processor), także CPU (ang. Central Processing Unit) – urządzenie cyfrowe sekwencyjne, które pobiera dane z pamięci, interpretuje je i wykonuje jako rozkazy. Wykonuje on ciąg prostych operacji (rozkazów) wybranych ze zbioru operacji podstawowych określonych zazwyczaj przez producenta procesora jako lista rozkazów procesora.

    Jeżeli w strukturach TLB lub PTE nie znajduje się odpowiedni opis aktualnie wykorzystywanej logicznej strony pamięci lub znajdujący się wpis zabrania dostępu w danym trybie, MMU sygnalizuje CPU wyjątek związany z błędnym dostępem do strony pamięci, tzw. page fault. System operacyjny może wtedy podjąć akcje związane z wyjątkiem, np. uzupełnić wpisy w tablicy stron lub w TLB, ew. przerwać proces, którego działanie spowodowało wystąpienie wyjątku.

    Proces – jedno z podstawowych pojęć w informatyce, definiowane jako egzemplarz wykonywanego programu. Każdy nowo powstały proces otrzymuje unikatowy numer, który go jednoznacznie identyfikuje, tzw. PID (od (ang.) process identifier).Ochrona pamięci (ang. memory protection) dotyczy sposobów kontroli praw dostępu do pamięci komputera i stanowi integralną część większości nowoczesnych systemów operacyjnych. Podstawowym celem ochrony pamięci jest uniemożliwienie procesowi dostępu do obszaru pamięci, który nie został mu przydzielony. Zapobiega to przypadkom, w których proces może zakłócić pracę innego procesu lub pracę nadzorującego systemu operacyjnego.


    Podstrony: 1 [2] [3]




    Warto wiedzieć że... beta

    MC68010 - mikroprocesor firmy Motorola należący do rodziny M68000 (68k). Obecnie już nie produkowany. Najważniejszą zmianą w stosunku do MC68000 jest możliwość obsługi pamięci wirtualnej poprzez poprawną obsługę błędów stronicowania (gdy strona nie jest obecna w pamięci, procesor jest w stanie przekazać kontrolę systemowi operacyjnemu w celu załadowania danych, a następnie kontynuować wykonywanie programu). Aby w pełni wspierać wirtualizację zmieniono tryb wykonywania instrukcji MOVE from SR na uprzywilejowany. Dodano także 3 rejestry - Vector Base Registry (VBR), Source Function Code (SFC) oraz Destination Function Code (DFC). Czas wykonywania niektórych instrukcji (zwłaszcza mnożenia i dzielenia) został skrócony, a dodany wewnętrzny bufor pozwala na wykonywanie 2-rozkazowych pętli bez konieczności odczytu pamięci - panuje opinia, że daje to ok. 10% szybszą pracę.
    Szyna danych (ang. data bus) – część magistrali odpowiedzialna za transmisję właściwych danych, w odróżnieniu od danych adresowych (za co odpowiedzialna jest szyna adresowa), czy sygnałów sterujących. Podział taki ma sens jedynie dla magistrali, w których taka część jest wydzielona, czyli na ogół dla magistral równoległych.
    Pamięć podręczna (ang. cache) – mechanizm, w którym część spośród danych zgromadzonych w źródłach o długim czasie dostępu i niższej przepustowości jest dodatkowo przechowywana w pamięci o lepszych parametrach. Ma to na celu poprawę szybkości dostępu do tych informacji, które przypuszczalnie będą potrzebne w najbliższej przyszłości.
    Tryb chroniony (ang. protected mode) – tryb pracy mikroprocesorów serii x86 wprowadzony w mikroprocesorze Intel 80286. Tryb chroniony umożliwia adresowanie pamięci przekraczającej wielkość 1 MB (tryb rzeczywisty), wprowadza wiele nowych udogodnień wspierających wielozadaniowość, takich jak: sprzętowa ochrona pamięci (układ MMU), wsparcie w przełączaniu kontekstu procesora i wiele innych.
    Kilobajt (KB, rzadziej kB, ang. Kbyte, kbyte, kilobyte) – jednostka używana w informatyce do określenia ilości informacji lub wielkości pamięci.
    Segmentacja pamięci – jedna z metod ochrony pamięci, używana przy wielozadaniowości. Każdy proces otrzymuje swój własny obszar pamięci, realizowany poprzez rejestry segmentowe.
    TLB (ang. Translation Lookaside Buffer) jest buforem pamięci w mikroprocesorze typu asocjacyjnej pamięci podręcznej (cache), który zawiera fragmenty tablicy stron pamięci głównej komputera (pamięci operacyjnej).

    Reklama

    Czas generowania strony: 0.034 sek.