Sop_04_wyk_1.0.pdf

(4600 KB) Pobierz
Microsoft PowerPoint - SOP_wyk_nr_4.ppt
Systemy operacyjne
Zarządzanie pamięcią operacyjną
Systemy operacyjne
Zarządzanie pamięciąoperacyjną
Wykład prowadzą:
Jerzy Brzeziński
Dariusz Wawrzyniak
Celem wykładu jest przedstawienie podejść do zarządzania jednym z kluczowych
zasobów systemu komputerowego — pamięcią operacyjną. Ponieważ
zarządzanie pamięcią operacyjną uwarunkowane jest rozwiązaniami na poziomie
architektury komputera, wyodrębnione są zadania realizowane sprzętowo oraz
zadania systemu operacyjnego, zmierzające do wykorzystania możliwości
sprzętowych.
529574079.002.png
Systemy operacyjne
Zarządzanie pamięcią operacyjną
Systemy operacyjne
Plan wykładu
• Pamięć jako zasób systemu komputerowego
– hierarchia pamięci
– przestrzeń adresowa
• Wsparcie dla zarządzania pamięcią na poziomie
architektury komputera
• Podział i przydział pamięci
• Obraz procesu w pamięci
• Stronicowania
• Segmentacja
Zarządzanie pamięcią operacyjną (2)
Wykład rozpoczyna się od przedstawienia podstawowych pojęć, związanych z
zarządzaniem pamięcią. Następnie wskazana jest rola układów sprzętowych na
poziomie architektury komputera w zarządzaniu pamięcią. Dalsza część dotyczy
najważniejszego zadania w zarządzaniu pamięcią, realizowanego przez system
operacyjny — przydziału, który ściśle wiąże się z podziałem pamięci. Pozostała część
wykładu dotyczy zjawisk wewnątrz przydzielonych obszarów pamięci, czyli tworzenia
obrazu procesu, jego ochrony oraz współdzielenia. Na końcu omawiane są techniki
odwzorowania logicznej przestrzeni adresowej w fizyczną, wspomagające przy tym
zarządzanie pamięcią, czyli stronicowanie i segmentacja.
529574079.003.png
Systemy operacyjne
Zarządzanie pamięcią operacyjną
Systemy operacyjne
Pamięćjako zasób systemu komputerowego
• Pamięć jest zasobem służący do przechowywania
danych i programów.
• Z punktu widzenia systemu pamięć jest zasobem o
strukturze hierarchicznej (począwszy od rejestrów
procesora, przez pamięć podręczną, pamięć główną,
skończywszy na pamięci masowej), w której na wyższym
poziomie przechowywane są dane, stanowiące fragment
zawartości poziomu niższego.
• Z punktu widzenia procesu (również procesora) pamięć
jest zbiorem bajtów identyfikowanych przez adresy, czyli
tablicą bajtów, w której adresy są indeksami.
Zarządzanie pamięcią operacyjną (3)
Pamięć jest kluczowym (obok procesora) zasobem systemu komputerowego dla
wykonywania programów. Zarządzanie pamięcią jest jednak dość
skomplikowane, gdyż jest ona (poszczególne jej części) jednocześnie
wykorzystywana przez wiele procesów często różnych użytkowników oraz przez
jądro systemu operacyjnego. Stabilność pracy systemu komputerowego wymaga
zatem odpowiedniej ochrony przestrzeni użytkowników, a tym bardziej jądra
systemu.
Podstawowe zadania, realizowane w ramach zarządzania pamięcią obejmują
przydział pamięci i jej odzyskiwanie, ochronę, udostępnianie w celu
współdzielenia, transformację adresów oraz transfer danych pomiędzy
poszczególnymi poziomami w hierarchii pamięci. Zadania te podzielone są
pomiędzy układy sprzętowe na poziomie architektury komputera, a system
operacyjny. Ze względu na efektywność realizacji, zadania takie jak ochrona,
transformacja i w dużej części transfer danych realizowane są przez odpowiednie
układy sprzętowe. Zadanie systemu operacyjnego sprowadza się do dostarczenia
odpowiednich danych tym układom. Dane te wynikają z wcześniejszych decyzji
o przydziale pamięci, co już należy do kompetencji systemu operacyjnego.
529574079.004.png
Systemy operacyjne
Zarządzanie pamięcią operacyjną
Systemy operacyjne
Hierarchia pamięci
rejestry
pamięć
podręczna
pamięć główna
dysk magnetyczny
taśma
dysk optyczny
Zarządzanie pamięcią operacyjną (4)
Dodatkowym elementem komplikującym zarządzanie pamięcią jest jej złożona
struktura — począwszy od rejestrów procesora, poprzez pamięć podręczną i
główną, a skończywszy na pamięci masowej. W hierarchii pamięci na wyższym
poziomie znajdują się szybkie układy o niewielkiej pojemności, a w miarę
schodzenia niżej zmniejsza się szybkość, a zwiększa pojemność.
Operowanie zawartością pamięci w takiej złożonej, hierarchicznej strukturze
oparte jest na tzw. zasadzie okna , zgodnie z którą dane na wyższym (szybszym,
ale mniej pojemnym) poziomie stanowią fragment danych, przechowywanych na
niższym poziomie.
Zależnie od architektury, procesor adresuje w pamięci bajty, słowa, podwójne
słowa itd., a zatem jednostki stosunkowo niewielkie. Takie jednostki obowiązują
w transferze pomiędzy rejestrami procesora a pamięcią podręczną lub główną.
Pomiędzy niższymi poziomami w hierarchii pamięci transferowane są większe
jednostki:
• linijki rzędu od kilkuset bajtów od kilku kilobajtów pomiędzy pamięcią
główną a pamięcią podręczną oraz poszczególnymi poziomami samej
pamięci podręcznej,
• bloki (sektory lub ich wielokrotności) rzędu od kilku kilobajtów do
kilkudziesięciu kilobajtów pomiędzy pamięcią zewnętrzną, a pamięcią
główną.
529574079.005.png
Systemy operacyjne
Zarządzanie pamięcią operacyjną
Systemy operacyjne
Przestrzeńadresowa
• Przestrzeń adresowa jest zbiór wszystkich
dopuszczalnych adresów w pamięci.
• W zależności od charakteru adresu odróżnia się:
– przestrzeń fizyczną — zbiór adresów
przekazywanych do układów pamięci głównej
(fizycznej).
– przestrzeń logiczną — zbiór adresów generowanych
przez procesor w kontekście aktualnie
wykonywanego procesu.
Zarządzanie pamięcią operacyjną (5)
Pamięć postrzegana jest najczęściej jako tablica bajtów, indeksowana przez
adresy. Taki jest obraz pamięci zarówno na poziomie architektury komputera, jak
i na poziomie systemu operacyjnego, czy też procesu działającego w systemie.
Poszczególne komórki pamięci mogą być jednak inaczej identyfikowane na
poziomie architektury, a inaczej na poziomie systemu operacyjnego. Te same
komórki pamięci mogą być nawet różnie identyfikowane w poszczególnych
procesach. Adresy, które identyfikują poszczególne komórki pamięci na
poziomie architektury komputera, tworzą fizyczną przestrzeń adresową. Adresy
fizyczne przekazywane są szyną adresową magistrali systemowej do układów
elektronicznych pamięci. W szczególnym przypadku takimi samymi adresami
można się posługiwać na poziomie systemu operacyjnego, ale takie podejście
wprowadza sporo ograniczeń, szczególnie uciążliwych w konstrukcji systemów
wielozadaniowych. Rozróżnianie przestrzeni fizycznej i logicznej oznacza, że w
kontekście procesu komórka pamięci jest inaczej identyfikowana, niż to wynika z
jej fizycznego adresu, co wymaga odpowiedniego przekształcenia adres
logicznego na fizyczny, zwanego transformacją adresu . Za transformację
odpowiada układ ściśle współpracujący z procesorem — jednostka zarządzania
pamięcią (ang. memory management unit — MMU).
529574079.001.png
Zgłoś jeśli naruszono regulamin