Schematy zarzadzania pamięcia



Podobne dokumenty
Architektura komputerów

architektura komputerów w. 8 Zarządzanie pamięcią

Mikroinformatyka. Tryb wirtualny

Zarządzanie zasobami pamięci

Sprzętowe wspomaganie pamięci wirtualnej

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/ / 22

Programowanie na poziomie sprzętu. Tryb chroniony cz. 1

Zarządzanie pamięcią operacyjną

Programowanie Niskopoziomowe

Mikroinformatyka. Mechanizmy ochrony pamięci

System pamięci. Pamięć wirtualna

Mikroinformatyka. Wielozadaniowość

dr inż. Jarosław Forenc

Współpraca procesora ColdFire z pamięcią

Zarządzanie pamięcią. Od programu źródłowego do procesu. Dołączanie dynamiczne. Powiązanie programu z adresami w pamięci

Od programu źródłowego do procesu

Hierarchia pamięci w systemie komputerowym

Systemy operacyjne III

Zarządzanie pamięcią w systemie operacyjnym

System pamięci. Pamięć wirtualna

System pamięci. Pamięć wirtualna

Wykład 7. Zarządzanie pamięcią

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Pamięć. Jan Tuziemski Źródło części materiałów: os-book.com

Architektura komputerów

Mikroprocesory rodziny INTEL 80x86

Wykład 10 Zarządzanie pamięcią

Pamięć wirtualna w AS/400

Zarządzanie pamięcią operacyjną zagadnienia podstawowe

ZARZĄDZANIE PAMIĘCIĄ OPERACYJNĄ

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

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]

SOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus

dr inż. Jarosław Forenc

Zarządzanie pamięcią operacyjną

Wybrane zagadnienia elektroniki współczesnej

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

ZARZĄDZANIE PAMIĘCIĄ OPERACYJNĄ

Organizacja pamięci wewnętrznej komputerów

Zarządzanie pamięcią. Podstawy Wymiana (swapping). Przydział ciągły pamięci. Stronicowanie. Segmentacja. Segmentacja ze stronicowaniem.

Procesory rodziny Intel

Organizacja typowego mikroprocesora

Stronicowanie w systemie pamięci wirtualnej

Podstawy. Pamięć wirtualna. (demand paging)

Ograniczenia efektywności systemu pamięci

SYSTEMY OPERACYJNE WYKLAD 4 - zarządzanie pamięcią

Architektura komputerów

Przed wykonaniem program musi być pobrany z dysku i. Tam działa a jako proces. Podczas wykonywania, proces pobiera rozkazy i dane z

J. Ułasiewicz Komputerowe systemy sterowania 1. 1 Architektura PC Ogólna struktura systemu jednoprocesorowego

Architektura komputerów

ARCHITEKTURA PROCESORA,

WOJSKOWA AKADEMIA TECHNICZNA

Architektura systemów informatycznych

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

dr inż. Jarosław Forenc

dr inŝ. Jarosław Forenc

Systemy Operacyjne Pamięć wirtualna cz. 2

Od programu źródłowego do procesu

Działanie systemu operacyjnego

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania

Zarz arz dzanie pam dzanie ięci ę ą

Zarządzanie pamięcią. Zarządzanie pamięcią. Podstawy. Podsystem zarządzania pamięcią. Zadania podsystemu: W systemie wielozadaniowym:

Działanie systemu operacyjnego

Działanie systemu operacyjnego

Zarz arz dzanie pam dzanie ięci ę ą

CPU. Architektura FLAGS Bit: dr Paweł Kowalczyk; DPTNS, KFCS UŁ. SI 16 bit. 16 bit. 16 bit.

Architektura komputerów

Informatyka 2. Wykład nr 10 ( ) Plan wykładu nr 10. Politechnika Białostocka. - Wydział Elektryczny. ext2. ext2. dr inŝ.

Pamięć wirtualna w systemie AS/400. Tomasz Kokoszka

Rozproszona pamiêæ dzielona - 1

Celem wykładu jest przedstawienie podejść do zarządzania jednym z kluczowych zasobów systemu komputerowego pamięcią operacyjną. Ponieważ zarządzanie

Podstawowe zagadnienia informatyki

PODSTAWY INFORMATYKI

PLAN WYKŁADU BAZY DANYCH HIERARCHIA MECHANIZMÓW SKŁADOWANIA PRZECHOWYWANIA BAZ DANYCH

Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86

Programowanie niskopoziomowe

Ograniczenia efektywności systemu pamięci

Programowanie w asemblerze Środowiska 64-bitowe

Podstawy. Podsystem zarządzania pamięcią - zadania: Wiązanie (binding) rozkazów i danych z adresami pamięci. W systemie wielozadaniowym:

Wykład 8. Pamięć wirtualna. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Systemy Operacyjne Zarządzanie pamięcią operacyjną

Działanie systemu operacyjnego

Architektura komputera typu PC z procesorem IA-32

Architektura systemu komputerowego

WYKŁAD. Zarządzanie pamięcią operacyjną

Materiały do wykładu. 7.Architekturax86. Marcin Peczarski. Instytut Informatyki Uniwersytet Warszawski

Zarządzanie dyskowymi operacjami we-wy. Zarządzanie pamięcią operacyjną. dr inż. Jarosław Forenc. systemy plików (NTFS, ext2)

Systemy Operacyjne i Sieci Komputerowe

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania

Monitor maszyn wirtualnych

Zarządzanie pamięcią operacyjną i pamięć wirtualna

Pamięć wirtualna. Jan Tuziemski Źródło części materiałów: os-book.com

Materiały do wykładu. 4. Mikroprocesor. Marcin Peczarski. Instytut Informatyki Uniwersytet Warszawski

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH. Poziomy abstrakcji cyfrowego systemu komputerowego. Procesor i pamięć. organizacja pamięci

Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury

Technologie informacyjne (2) Zdzisław Szyjewski

Mapowanie bezpośrednie

Rys. 1. Podłączenie cache do procesora.

WINDOWS NT. Diagram warstw systemu Windows NT

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Transkrypt:

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 jest w pamięci lub rejestrach procesora tablica deskryptorów segmentów zawierajacych bazę (fizyczny adr. poczatku), granicę (rozmiar segmentu) i dodatkowe informacje. Można nieużywane w danej chwili segmenty przechowywać na dysku, ale wymiana zwykle zwykle trudna w realizacji. Typowy problem: fragmentacja zewnętrzna pamięci operacyjnej. (Jest dużo drobnych wolnych fragmentów, ale nie ma miejsca na jeden duży segment.) Stronicowanie... M.Kik ASK 7 p.1/16

Pamięć wirtualna/stronicowanie Pamięć wirtualna wykorzystanie pamięci głównej jako bufora znacznie większej pamięci przechowywanej zwykle na dysku twardym. stronicowanie pamięć wirtualna dzielona jest na strony o jednakowej wielkości (zwykle 512 do 4096 bajtów). Pamięć główna jest dzielona na ramki stron (page frames) o tej samej wielkości. Dowolna strona może być umieszczona w dowolnej ramce. Fragmentacja wewnętrzna niewykorzystana końcówka ostatniej strony. adres wirtualny:, numer strony, przesunięcie. adres fizyczny:, numer ramki, przesunięcie. M.Kik ASK 7 p.2/16

Translator adresów tłumaczy adres wirtualny na adres fizyczny lub sygnalizuje brak odpowiedniej strony w pam. głównej (bład stronicowania). Zarzadca pamięci część systemu operacyjnego, wykorzystuje translator adresów do obsługi pam. wirtualnej. M.Kik ASK 7 p.3/16

stronicowanie Tablica stron zawiera deskryptory stron. Deskryptor na -tej pozycji zawiera bity sterujace (obecności, modyfikacji, blokujacy (zabraniajacy usunięcia)... ) oraz numer ramki -tej strony. Stronicowanie na żadanie wymiana strony gdy wystapi bład stronicowania. Uwaga: duże tablice stron moga również podlegać stronicowaniu. Sprzętowe wsparcie zarzadzania pamięcia Blok zarzadzania pamięcia (MMU memory management unit) dokonuje translacji adresów wirtualnych na fizyczne; wykorzystuje mały asocjacyjny bufor translacji adresów (translation lookaside buffer TLB). TLB zawiera kopie ostatnio używanych pozycji z tablicy stron. M.Kik ASK 7 p.4/16

Działanie MMU Start Sprawdz TLB Program obslugi bledu strony Deskryptor strony obecny? tak Wygeneruj adres fizyczny Uaktualnij tablice stron nie Wczytaj strone z dysku Wymiana strony nie Sprawdz w tablicy stron Strona w pamieci? tak Uaktualnij TLB tak Pamiec zapelniona? nie M.Kik ASK 7 p.5/16

Współpraca TLB i Cache Adres wirtualny Nr strony Wyrownanie chybienie TLB trafienie Adres fizyczny + Znacznik Reszta Cache chybienie trafienie wartosc Tablica stron DRAM wartosc M.Kik ASK 7 p.6/16

przykład Pentium Możliwy wybór jednego z czterech sposobów organizacji pamięci: Niesegmentowana niestronicowana adresy wirtualne takie same jak fizyczne (duża szybkość) Niesegmentowana stronicowana Stronicowana linowa przestrzeń adresowa (np. UNIX Berkeley). Segmentowana niestronicowana (tablica translacji (deskryptory) segmentów danego procesu w buforowane rejestrach procesora) CS, DS, ES, FS, SS zawieraja selektory (indeksy tablicy translacji). Deskryptory o tych indeksach skopiowane do procesora (do niewidocznych rejestrów)+ Segmentowana stronicowana Pamięć wirtualna dzielona na segmenty a następnie stornicowana (np. UNIX System V). M.Kik ASK 7 p.7/16

Segmentacja pentium Adres wirtualny: 16-bitowe odniesienie do segmentu (z CS,DS,ES,FS,GS lub SS) plus 32-bitowy adres względny. Razem TeraBajty (osobno po 8K segmentów po 4GB lokalnych i globalnych umieszczonymi pod adresami z rej. GDTR i LDTR) Adres wirtualny jest przekształcany na 32-bitowy adres liniowy (4GB przestrzeni). Selektor: 15 3 2 Indeks T I 1 0 RPL RPL poziom uprzywilejowania (w SS i CS CPL) TI wskaźnik (tablica ogólnych/lokalnych segmentów) Index Indeks w tablicy segmentów. M.Kik ASK 7 p.8/16

Deskryptor segmentu Deskryptor segmentu (64 bity) zawiera: Baza (32) poczatek segmentu wewnatrz 4GB przestrzeni. Granica (20) rozmiar segmentu (do 1MB lub do 4GB). Bit granulacji czy Granica w bajtach czy jednostkach 4KB. Bit D/B rozmiar operacji (znaczenie zależy od tego czy z SS,CS, czy dane) Bit S Czy segment systemowy DPL (2) poziom uprzywilejowania (porównywany z CPL i RPL). Bit P bit obecności (ważny jeśli nie ma stronicowania) Rodzaj segmentu (4) AVL M.Kik ASK 7 p.9/16

Pentium stronicowanie Adres liniowy (32 bity) ma postać: Katalog (10) numer tablicy stron w katalogu (o adresie fizycznym z CR3 pole: PDBR) Tablica (10) indeks deskryptora w tablicy stron Wyrównanie (12) przesunięcie na stronie Adres liniowy zamieniany jest na adres fizyczny. M.Kik ASK 7 p.10/16

zapis w tablicy stron/katalogu (32 bity) adres ramki strony/tablicy stron Bit A Bit D Bit PCD Bit PWT (20) górne 20 bitów adresu (pozostałe 12 bitów to zera) bit użycia (ustawiany przy dostępie do strony wykorzystywany w algorytmie wymiany syst. oper.) bit zabrudzenia (ustawiany przy zapisie; czy konieczny zapis na dysku przy wymianie tej strony) Bit PS (w katalogu) Bit RW Bit US Bit P AVL czy podlega cache owaniu czy wymaga Write Through czy rozmiar strony 4KB czy 4MB (dla 4MB pole adres wpisu w katalogu jest adresem ramki (jego dolne 10 bitów to zera), a pole Tablica adresu liniowego staje się górnymi bitami wyrównania) czy tylko do odczytu user/supervisor bit obecności M.Kik ASK 7 p.11/16

Stronicowanie z segmentacja Adres logiczny [selektor segmentu, przesunięcie] przekształcany jest na adres liniowy [katalog, tablica, wyrównanie]. Adres linowy przekształcany jest na adres fizyczny [32-bitowy]. M.Kik ASK 7 p.12/16

Power PC 32 bitowy adres efektywny: Segment (4) nr jednego z 16 rejestrów segmentowych Strona (16) identyfikator strony ( segment) stron na Bajt (12) przesunięcie na stronie (rozmiar strony: ) M.Kik ASK 7 p.13/16

Zawartość rejestru segmentowego ID segmentu efektywnego (24) doklejany do części [Strona,bajt] adresu efektywnego Bit ważności V Bit rodzaju segmentu T czy segment pamięci czy wejścia-wyjścia Klucz nadzorcy K M.Kik ASK 7 p.14/16

Zapis tablicy stron nr ramki (20) doklejone do pola Bajt tworzy adres rzeczywisty Bit ważności V Identyfikator haszowania H (1) czy zapis pierwotny czy wtórny API 6 najbardziej znaczacych bitów pola Strona Bit odniesienia R Bit zmiany C zabrudzenie Bity WMIG W dotyczy cache czy zapis opóźniony czy jednoczesny I M G czy dozwolone przenoszenie do cache czy jest to pamięć wspólna czy jest to pamięć chroniona Bity zabezpieczenia PP dostępu wraz z bitami K zapisu z tablicy segmentów stosowane do kontroli M.Kik ASK 7 p.15/16

Odwzorowania adresów Odwrócona tablica stron. Do przerysowania na tablicy dla wersji 32-bitowej i 64-bitowej :-( M.Kik ASK 7 p.16/16