W07 AK2 Biernat


Architektura komputerów 2
Prof. PWr dr hab. inż. Janusz Biernat
Wykład 07
PAMIĆ WIRTUALNA CIG DALSZY
Sposób odwzorowania przestrzeni wirtualnej w pamięci operacyjnej (fizycznej, RAM), funkcja
dyskretna typu  w
a) liczba argumentów  rozmiar przestrzeni wirtualnej (potencjalny)
b) liczba wartości  rozmiar pamięci operacyjnej
a) >> b), dlatego funkcja typu  w
Wniosek:
" nie wszystkie przypisania wartości argumentów są zdefiniowane w danej chwili (oczywiście
podczas działania procesu mogą być zrealizowane wszystkie, ale nie jednocześnie)
" do bieżącej realizacji procesu wystarczy znać odwzorowania aktualnie potrzebne.
Sposoby wyboru potrzebnych odwzorowań:
1. uporządkowana selekcja odwzorowań
...->nadkatalog->katalog->opis
2. według zapotrzebowania  opis tylko
potrzebnych (aktualnie) elementów
odwzorowania (zasada) lokalności
odwołań (realizowane w architekturze von
Neumana), uporządkowana struktura
programu i danych, tzn. jeżeli jest na coś
zapotrzebowanie to może, ale nie musi, się powtórzyć, zakładamy, że tak, ale możemy się
pomylić, realizowane za pomocą BUFORA TLB (translation lookaside buffer).
3. według możliwości (odwrócenie funkcji dyskretnej, do wartości przypisywane są
argumenty), realizowane za pomocą odwróconej tablicy stron.
4. pierwszy sposób nie wyklucza drugiego i trzeciego.
Co w takim odwzorowaniu musi być?
Zawartość pojedynczego opisu odwzorowania przestrzeni wirtualnej (VM) na przestrzeń fizyczną
(PM).
P  znacznik aktualności odwzorowania
RWX  prawa dostępu, to musi być niezależnie od sposobu dostępu,
aby zapewnić ochronę pamięci
VMA  adres wirtualny, indeks tablicy w pełnej tablicy
stron/segmentów (niepotrzebny, bo tablica jest uporządkowana.
RA  adres rzeczywisty
TLB  musi być VMA, bo to jest identyfikator opisu, jeżeli jest długi
to wyszukiwanie w zbiorze będzie długie, czas wyszukiwania zależy
(logarytmicznie) od długości adresu wirtualnego.
skrót  funkcje haszujące/funkcje skrótu (xorowanie pierwszej połowy z
drugą połówką  najpopularniejsze).
#VMA  skrót VMA
Żeby przyspieszyć wyszukiwanie porównujemy skróty, a pózniej się upewniamy i porównujemy
pełne adresy, jeżeli zgodne to dobrze, jeżeli nie to szukamy dalej aż do znalezienia lub do końca,
wtedy należy stworzyć odwzorowanie.
IPT (odwrócona tablica stron) (tylko w stronicowaniu), nie ma RA
link  wskazanie innego potencjalnego miejsca odwzorowania, jeżeli skróty nie byłby używane to
link byłby niepotrzebny, nie ma potrzeby przeszukiwać całą tablicę, można posłużyć się skrótem.
VPA  nr strony
Na rysunku nie ma P, ale powinno być. Jeżeli nie ma odwzorowania, to sprawdzamy, czy cały bufor
jest zajęty, jeżeli nie to szukamy pierwszego wolnego, jeżeli cały zajęty to usuwamy te z P=0.
Oprócz fizycznej realokacji musimy zmienić też opisy, bo są inne adresy.
Strategie zarządzania pamięcią
" strategie pobierania (fetch policy)  decyzje, kiedy załadować informację do pamięci
głównej
" strategie przydziału (placement policy)  reguły i algorytmy wpasowania bloków informacji
w wolne obszary pamięci głównej
" strategie wymiany (relocation policy)  reguły i algorytmy usuwania informacji z pamięci
głównej.
Strategie pobierania
" pobranie wymuszone (demand fetching) na skutek błędu braku obiektu (missing item fault)
" pobranie antycypowane (prefetching) na podstawie prognozy zapotrzebowania procesu na
dane (zasady lokalności).
Strategie przydziału
" w pamięci stronicowanej  trywialne, rozmiar strony ustalony problem  wewnętrzna
fragmentacja pamięci
" w pamięci segmentowanej  wpasowanie segmentów o ró\nych rozmiarach problem 
zewnętrzna fragmentacja pamięci (dziury)
Przydział pamięci segmentowanej
segment umieszczany w pierwszej dziurze o wystarczającym rozmiarze
Metody:
" BF  najlepsze wpasowanie (best fit)  lista uporządkowana według rosnących adresów
" WF  najgorsze wpasowanie (worst fit)  lista uporządkowana według malejących adresów
" FF  pierwsze wpasowanie (first fit)  lista uporządkowana według rosnących adresów,
przeszukiwanie może być cykliczne (wznawialne)
" BB  wpasowanie binarne (binary buddy)  są tworzone listy dziur o rozmiarach [2ip, 2(i+1)p],
wpasowanie segmentu metodą FF w obrębie listy, kolejność adresów na listach jest liniowa.
Problemy
" aktualizacja listy dziur
" defragmentacja pamięci (komasacja dziur)
Zewnętrzna fragmentacja partycji spójnych
Partycje
Procesowi jest przydzielana część adresowalnego obszaru pamięci głównej.
intensyfikacja błędu braku bloku
Strategie przydziału obszaru pamięci procesom (memory allocation)
" partycja stała (fixed size partition)  rozmiar obszaru pamięci przydzielonej procesowi jest
stały w czasie życia procesu
" partycja zmienna (variable size partition)  dynamiczny przydział pamięci, odpowiednio do
aktualnych potrzeb procesu.
Strategie wymian dla stałych partycji:
" losowa (random replacement)  wyłącznie w środowisku programowym, w którym
lokalność jest niewielka (np. bazy danych)
" FIFO (first in, first out)  kolejka bloków do wymiany jest ustawiana zgodnie z kolejnością
ich umieszczania w pamięci; uwzględniana jest lokalność bloków, nie uwzględnia się
intensywności ich używania
" FINUFO (first in, not used, first out)  każde wejście do kolejki ma znacznik używalności,
kolejka przesuwa się cyklicznie
" LRU (least recently used)  wymienia się blok najdawniej używany. (najczęściej używany
sposób)
Anomalia Belady ego  częstość błędu braku strony nie jest monotoniczną funkcją rozmiaru
przydzielonego obszaru (liczby stron) i osiąga lokalne minimum dla pewnej niewielkiej liczby
stron.
sekwencje odwołań 1,2,3,4,5,1,2,3,6,1,2,3,4,5,6,4 oraz 1,2,3,4,1,2,5,1,2,3,4,5,4
Strategia optymalna (MIN)  wymiana bloku, który będzie użyty najpózniej teoretyczna, wymaga
antycypacji kolejności wymian.
Strategie wymian dla partycji zmiennych (przy stronicowaniu):
" WS  wymiana całego zbioru roboczego (working set replacement)
" PFF  wymiana stosownie do częstości występowania błędu braku strony (page fault
frequency)  ustala się wartość progową PFF i jeżeli częstość błędu braku strony pff < PFF,
to wymieniane są wszystkie strony nieużywane od ostatniej wymiany, jeśli zaś pff > PFF, to
nie jest dokonywana wymiana, lecz zwiększany jest rozmiar partycji.
Strategia optymalna VMIN  wymiana bloku, który będzie użyty najpózniej, lecz z możliwością
zmiany rozmiaru partycji. teoretyczna, wymaga antycypacji kolejności wymian.


Wyszukiwarka

Podobne podstrony:
W08 AK2 Biernat
W06 AK2 Biernat
W05 AK2 Biernat
W02 AK2 Biernat
W01 AK2 Biernat
W09 AK2 Biernat
W03 AK2 Biernat
W07 W08 SCR
Strona bierna
W07 08 WYKLADY TIORB 2007 MECHANIZACJA CALOSC z rysunkami
W02 AK1 Biernat
0708z sk zlm w07
Fund w07
Gazownictwo w07
ti w07
PKM II w07 Czolowe przekladnie walcowe o zebach srubowych

więcej podobnych podstron