44 45 46

background image

44) Przydział pamięci dyskowej: listowy i indeksowy

System plików pełni w systemie operacyjnym rol

ę

pami

ę

ci trwałej. Informacje

zapisane w pami

ę

ci trwałej nie s

ą

gubione mi

ę

dzy kolejnymi uruchomieniami

systemu. Informacje przechowywane w systemie plików s

ą

pogrupowane w pliki i

katalogi.

Metody przydziału miejsca na dysku

Przydział ci

ą

gły

Przydział ci

ą

gły to najprostsza, ale i najgorsza metoda przydziału miejsca na dysku.

Ka

ż

dy plik zajmuje na dysku spójny obszar zło

ż

ony z kolejnych bloków. Metoda ta

jest zła, gdy

ż

wielko

ść

pliku mo

ż

e si

ę

zmienia

ć

w czasie. Je

ż

eli nie b

ę

dziemy w

stanie wydłu

ż

y

ć

pliku, a na dysku b

ę

dzie wolne miejsce, to oznacza

ć

to b

ę

dzie

konieczno

ść

przemieszczenia plików na dysku. Jest to bardzo czasochłonne. Z

drugiej strony informacja o rozmieszczeniu pliku na dysku jest bardzo prosta:
wystarczy pami

ę

ta

ć

pocz

ą

tek i rozmiar pliku.

Przydział listowy i FAT

Przydział listowy polega na tym,

ż

e bloki tworz

ą

ce jeden plik s

ą

poł

ą

czone w list

ę

jednokierunkow

ą

. Ka

ż

dy z bloków zawiera numer nast

ę

pnego bloku tworz

ą

cego plik.

Dzi

ę

ki temu bloki pliku mog

ą

by

ć

rozmieszczone dowolnie. Plik jest identyfikowany

przez pierwszy swój blok. Wad

ą

takiego rozwi

ą

zania jest bardzo wolny dost

ę

p

swobodny do pliku. Zmiana pozycji w pliku mo

ż

e wymaga

ć

przejrzenia bloków

tworz

ą

cych plik od pocz

ą

tku pliku.


Pewnym usprawnieniem przydziału listowego jest zebranie wszystkich wska

ź

ników

tworz

ą

cych list

ę

razem, w jednej tablicy. Tablic

ę

tak

ą

nazywamy FAT (ang. file

allocation table). Co prawda nadal dost

ę

p do dowolnego miejsca w pliku mo

ż

e

wymaga

ć

liniowej liczby kroków, ale liczba bloków dyskowych, które nale

ż

y odczyta

ć

jest du

ż

o mniejsza (zwłaszcza, je

ś

li plik zajmuje kolejne bloki na dysku). W praktyce,

obszary tablicy FAT dotycz

ą

ce przetwarzanych wła

ś

nie plików s

ą

przechowywane w

buforze, co eliminuje operacje dyskowe zwi

ą

zane z dost

ę

pem swobodnym. Nadal

pozostaje jednak liniowy koszt odnalezienia szukanego elementu na li

ś

cie.

background image

Przydział indeksowy

Przydział indeksowy polega na zebraniu numerów bloków tworz

ą

cych plik w jednym

bloku, tzw. bloku indeksowym. Plik na dysku jest reprezentowany przez numer bloku
indeksowego.


Przy zastosowaniu takiej strategii, dost

ę

p do dowolnego miejsca w pliku wymaga co

najwy

ż

ej dwóch operacji dyskowych. Jednak wielko

ść

pliku jest ograniczona.

Przykładowo, je

ż

eli bloki dyskowe maj

ą

po 4kB, a numer bloku zajmuje 32bity, to

maksymalna wielko

ść

pliku to 1024*4kB = 4MB.

Przydział indeksowo-listowy

Przydział indeksowo listowy to poł

ą

czenie podej

ś

cia listowego i indeksowego.

Numery kolejnych bloków dyskowych zawieraj

ą

cych tre

ść

pliku s

ą

zebrane w bloku

(lub blokach) indeksowych. Je

ż

eli numery bloków tworz

ą

cych plik nie mieszcz

ą

si

ę

w

jednym bloku indeksowym, to ostatni numer w tym bloku wskazuje na kolejny blok
indeksowy itd. Tak wi

ę

c bloki indeksowe tworz

ą

list

ę

jednokierunkow

ą

. Plik jest

identyfikowany przez numer pierwszego bloku indeksowego.


Przykładowo, je

ż

eli bloki dyskowe maj

ą

po 4kB, a numer bloku zajmuje 32bity, to

jeden blok indeksowy mo

ż

e zawiera

ć

do 1023 numerów bloków z tre

ś

ci

ą

pliku i jeden

numer kolejnego bloku indeksowego. Je

ż

eli mamy plik wielko

ś

ci 42MB, to b

ę

dziemy

mieli 11 bloków indeksowych. Dost

ę

p do ko

ń

cowych fragmentów pliku mo

ż

e

wymaga

ć

nawet 12 operacji dyskowych.

Takie podej

ś

cie w najgorszym przypadku b

ę

dzie działało tak samo jak FAT. Je

ś

li

jednak plik nie jest zapisany w kolejnych blokach dyskowych, to numery bloków
tworz

ą

cych plik b

ę

d

ą

zebrane razem w blokach indeksowych, a w tablicy FAT ich

numery b

ę

d

ą

rozsiane.

background image

Przydział indeksowy wielopoziomowy

Wielopoziomowy przydział indeksowy polega na tym,

ż

e bloki indeksowe wraz z

blokami dyskowymi zawieraj

ą

cymi tre

ść

pliku tworz

ą

drzewo o okre

ś

lonej wysoko

ś

ci.

Na przykład, przy indeksowaniu dwupoziomowym, główny blok indeksowy
(pierwszego poziomu) zawiera numery bloków indeksowych drugiego poziomu, które
z kolei zawieraj

ą

numery bloków tworz

ą

cych tre

ść

pliku. Je

ż

eli bloki dyskowe maj

ą

po 4kB, a numer bloku zajmuje 32 bity, to stosuj

ą

c indeksowanie dwupoziomowe

wielko

ść

plików jest ograniczona przez 4GB, a przy indeksowaniu trójpoziomowym

przez 4TB.


Liczba odwoła

ń

do dysku potrzebnych do dostania si

ę

do dowolnego miejsca na

dysku jest równa liczbie poziomów indeksowania plus jeden.




























background image

45) Cechy tradycyjnego systemu unixowego

wielodost

ę

pny pozwala na logowanie si

ę

do systemu kilku u

ż

ytkowników w

tym samym czasie, a ka

ż

dy u

ż

ytkownik współdziała z systemem poprzez swój

własny terminal

wielozadaniowy pozwala na wykonywanie kilku zada

ń

w tym samym czasie -

gdy jedno zadanie jest wykonywane, mo

ż

na pracowa

ć

nad nast

ę

pnym

główne cz

ęś

ci: j

ą

dro, powłoka, system plików i programy u

ż

ytkowe. J

ą

dro

jest programem, który uruchamia inne programy i zarz

ą

dza urz

ą

dzeniami,

takimi jak dyski czy drukarki.

Powłoka jest interfejsem u

ż

ytkownika. Odbiera polecenia wydawane przez

u

ż

ytkownika i wysyła je do j

ą

dra w celu wykonania. System plików okre

ś

la

porz

ą

dek, w jakim pliki s

ą

zachowane na urz

ą

dzeniu takim jak dysk. Pliki s

ą

umieszczone w katalogach. Ka

ż

dy katalog mo

ż

e zawiera

ć

dowoln

ą

liczb

ę

podkatalogów, w których przechowywane s

ą

pliki. J

ą

dro, powłoka i system plików

stanowi

ą

razem podstawow

ą

struktur

ę

systemu operacyjnego. Dzi

ę

ki tym trzem

elementom mo

ż

na uruchamia

ć

programy, zarz

ą

dza

ć

plikami i współdziała

ć

z

systemem

przydział pami

ę

ci fizycznej (pami

ęć

fizyczna – faktyczny adres komórki w

pami

ę

ci) poszczególnym procesom,

odwzorowanie logicznej przestrzeni adresowej procesu na fizyczn

ą

przestrze

ń

adresow

ą

pami

ę

ci (adres logiczny - adres wytworzony przez procesor w

wyniku wykonania rozkazu programu nosi nazw

ę

),

ochrona zawarto

ś

ci pami

ę

ci,

współdzielenie obszarów pami

ę

ci przez ró

ż

ne procesy.

j

ą

dra systemów Unix s

ą

monolityczne. Chocia

ż

mo

ż

na w nich wyró

ż

ni

ć

funkcjonalne cz

ęś

ci składowe, to stanowi

ą

one jeden program i korzystaj

ą

ze

background image

wspólnych struktur danych. Takie rozwi

ą

zanie zapewnia najwi

ę

ksz

ą

efektywno

ść

systemu. Do podstawowych zada

ń

j

ą

dra nale

ż

y

zarz

ą

dzanie procesami,

zarz

ą

dzanie pami

ę

ci

ą

,

zarz

ą

dzanie plikami,

zarz

ą

dzanie urz

ą

dzeniami wej

ś

cia-wyj

ś

cia.

obsługa ró

ż

nych typów systemów plików,

obsługa ró

ż

nych protokołów sieciowych,

obsługa ró

ż

nych formatów plików wykonywalnych,

wykorzystanie współdzielonych bibliotek.







































background image

46) Wsparcie sprzętowe dla wielozadaniowych

systemów operacyjnych.


Wielozadaniowo

ść

to organizacja systemu operacyjnego pozwalaj

ą

ca na

kooperatywne

lub

konkurencyjne

wykonywanie

wielu

zada

ń

.

Systemy

wielozadaniowe posiadaj

ą

wbudowane mechanizmy kontroluj

ą

ce aktywne zadania -

mog

ą

przypisywa

ć

im poziomy wa

ż

no

ś

ci i uzale

ż

nia

ć

od nich wielko

ść

mocy

procesora, jaka po

ś

wi

ę

cana jest poszczególnym zadaniom. Wielozadaniowo

ść

nie

byłaby wr

ę

cz niemo

ż

liwa do realizacji gdyby nie wbudowane mechanizmy wsparcia

sprz

ę

towego.

Jedynym dodatkowym urz

ą

dzeniem koniecznym do uruchomienia wielozadaniowego

systemu operacyjnego jest licznik zliczaj

ą

cy interwały czasowe. Ka

ż

dy nawet

najprostszy system operacyjny musi by

ć

taktowany, aby mógł odlicza

ć

czas

pozostały do zako

ń

czenia jednego a rozpocz

ę

cia innego zadania. Moduły te s

ą

wbudowane w ka

ż

dy nowoczesny procesor.

Jednak w celu uzyskania systemu komputerowego o du

ż

ym stopniu niezawodno

ś

ci

nowoczesne procesory posiadaj

ą

inne cechy wspieraj

ą

ce implementacje i działanie

systemów operacyjnych. S

ą

to:

a) tryby pracy:

o

uprzywilejowany (kernel/supervisor mode),

o

chroniony (protected mode), w chronionym trybie pracy niektóre
potencjalnie niebezpieczne instrukcje procesora s

ą

niedost

ę

pne, a

próba wywołania ich spowoduje wyst

ą

pienie przerwania

(obsługiwanego dalej przez system). Nawi

ą

zuj

ą

c do budowy systemu

operacyjnego, wszelka aktywno

ść

zada

ń

(aplikacji) u

ż

ytkownika oraz

powłoki odbywa si

ę

w chronionym trybie pracy (protected mode). J

ą

dro

systemu operacyjnego pracuje w trybie uprzywilejowanym (kernel
mode).

b) jednostki zarz

ą

dzania i ochrony pami

ę

ci

Działanie tych mechanizmów opiera si

ę

na wsparciu sprz

ę

towym

dostarczanym przez kontrolery pami

ę

ci wbudowane w procesor (lub

chipset).

Ogólna zasada polega na wydzielaniu poszczególnym procesom
obszarów pami

ę

ci do wył

ą

cznego u

ż

ytku. Oznacza to,

ż

e tylko dany

proces mo

ż

e pisa

ć

lub czyta

ć

tylko do/z danego obszaru. Próba zapisu

odczytu z nieprzydzielonego procesowi obszaru ko

ń

czy si

ę

wywołaniem przerwania przerywaj

ą

cego wykonywanie zadania.

Technicznie ochrona realizowana jest poprzez podział obszaru pami

ę

ci

na segmenty i strony. Zadanie u

ż

ytkownika, które jest aktywowane w

danej chwili przywraca swój kontekst poprzez ustawienie odpowiednich

background image

rejestrów CPU jak i równie

ż

rejestrów kontrolnych jednostki

zarz

ą

dzania pami

ę

ci

ą

.

Dzi

ę

ki ochronie pami

ę

ci awaria jednego zadania i próba bł

ę

dnego

nadpisana przestrzeni adresowej innych zada

ń

jest niemo

ż

liwa. W ten

sposób s

ą

równie

ż

chronione dane potrzebne systemowi operacyjnemu

do działania, przez co mo

ż

na zatrzyma

ć

uszkodzone zadanie.

Aktywno

ść

systemu operacyjnego jak i elementów typu sterowniki

sprz

ę

towe odbywa si

ę

w trybie kernel w którym ochrona pami

ę

ci nie

działa lub jest mocno ograniczona (zale

ż

nie od rodzaju CPU). Wobec

tego jest mo

ż

liwe awaryjne zatrzymanie systemu na skutek bł

ę

dnego

działania kodu systemu operacyjnego lub sterowników sprz

ę

towych.

c) kontrolery przerwa

ń

, gdy licznik taktuj

ą

cy system operacyjny wyliczy

żą

dany

interwał czasowy informacja o tym zdarzeniu przekazywana jest do procesora przy
pomocy przerwania. Podobnie informacje na temat innych zdarze

ń

przekazywane s

ą

do procesora a w ten sposób do systemu operacyjnego przy pomocy mechanizmu
przerwa

ń

.

d) specjalistyczne akceleratory sprz

ę

towe słu

żą

ce do przy

ś

pieszania pewnych

typowych czynno

ś

ci wykonywanych przez systemy operacyjne. Ta funkcjonalno

ść

jest rzadko spotykana i zazwyczaj spotyka si

ę

j

ą

we wbudowanych systemach RTOS


Wyszukiwarka

Podobne podstrony:
44-45-46
HLP - oświecenie - opracowania lektur, 30. Jan Potocki, Rękopis znaleziony w Saragossie. DZIEŃ 43, 4
2002 1 44,45,46
41 42 43 44 45 46 47
44 45
44,45
45,46
Ogolne Pytanie 44,45, 44
04 1995 45 46
Język polski 6 Ortografia Zasady i ćwiczenia fragment (strony 44 45)
page 44 45
45-46-47, 45
45,46,47,48
03 1996 45 46
fiszki 01 45 i 46
45 46
01 1996 45 46

więcej podobnych podstron