Jądro Systemu

background image

Jądro Systemu

Rafał Grzybowski

background image

Rafał Grzybowski

Podstawowe wymagania sprzętowe

Mechanizm przerwań
Ochrona pamięci
Zbiór rozkazów uprzywilejowanych

– włączanie i wyłączanie przerwań;
– przełączanie procesora od procesu do procesu;
– obsługiwanie rejestrów używanych przez sprzętową ochronę

pamięci operacyjnej

– wykonywanie operacji wejścia i wyjścia;
– zatrzymywanie procesora centralnego i sterowanie jego operacjami

Zegar czasu rzeczywistego

background image

Rafał Grzybowski

Rozkazy uprzywilejowane

Proces użytkownika wywołuje system operacyjny w
celu wykonania pewnej czynności, która wymaga
użycia rozkazu uprzywilejowanego
Nadeszło przerwanie
Pojawił się błąd w procesie użytkownika
Wystąpiła próba wykonania rozkazu
uprzywilejowanego, podczas gdy komputer
pracuje w trybie użytkownika

background image

Rafał Grzybowski

Podstawowe składniki jądra

program wstępnej obsługi przerwań

dyspozytor przełączający procesor

pomiędzy procesami

procedury komunikacji

pomiędzy procesami

SPRZĘT

JĄDRO SYSTEMU

INNE WARSTWY

background image

Rafał Grzybowski

Reprezentacja procesów

deskryptor procesu - wektor stanu

procesu

nazwa procesu

stan procesu

• wykonywany -

proces bieżący

• wykonywalny
• niewykonywalny

sprzętowy deskryptor procesu

background image

Rafał Grzybowski

Tablica główna

Reprezentacja procesów c.d.

środowisko ulotne procesu (kontekst
procesu) -

podzbiór takich podlegających zmianom

właściwości systemu, do których proces może mieć dostęp.

struktura procesów

Numer wersji

Data

Struktura procesów

Deskryptor

procesu 1

Deskryptor

procesu 2

background image

Rafał Grzybowski

Wstępna obsługa przerwań

odpowiadanie na syganły nadchodzące z
zewnątrz do systemu (przerwania) oraz
pochodzące z samego systemu (pułapki
błędów itp.)

Dwa zadania główne:

określenie źródła przerwania

zainicjować obsługę przerwania

background image

Rafał Grzybowski

Łańcuch przeskoków

Czy przerwanie ze źródła 3 ?

Czy przerwanie ze źródła 2 ?

Czy przerwanie ze źródła 1?

Pamiętaj rejestry programu

Procedura obsługi
dla źródła 1

T

N

T

T

N

Procedura obsługi
dla źródła 2

Procedura obsługi
dla źródła 3

background image

Rafał Grzybowski

Dyspozytor

Przydzielanie procesora centralnego do różnych
procesów w systemie

po przerwaniu, zmieniającym stan jakiegoś procesu,

po odwołaniu do systemu, które powoduje, że chwilowo nie można
kontynuować wykonywania bieżącego procesu,

po wykryciu błędu, nasuwającego podejrzenie, że wystąpił on w
bieżącym procesie.

Do dyspozytora przechodzi się z zasady po
wszystkich przerwaniach !

background image

Rafał Grzybowski

Dyspozytor

Czy bieżący proces nadal nadaje się do wykonania przez ten

procesor? Jeżeli tak, to przekaż sterowanie do tego miejsca w

pamięci operacyjnej, na które wskazuje licznik rozkazów. Jeżeli

nie, to:

Zapamiętaj środowisko ulotne bieżącego procesu w jego

deskryptorze procesu.

Znajdź najodpowiedniejszy proces i odtwórz jego środowisko

ulotne na podstawie jego deskryptora procesu.

Przekaż sterowanie do nowo wybranego procesu, do miejsca

wskazywanego przez jego odtworzony licznik rozkazów.

background image

Rafał Grzybowski

Kolejka procesora

Deskryptor procesu 1

Niewykonywalny

Wykonywalny

Wykonywalny

Deskryptor procesu 2

Deskryptor procesu 3

Deskryptor procesu 4

Wykonywany

background image

Rafał Grzybowski

Dyspozytor

Czy bieżący proces dla tego procesora jest nadal pierwszym

niewykonywanym procesem w kolejce procesora? Jeżeli tak, to

podejmij jego wykonanie. Jeżeli nie, to:

Zapamiętaj środowisko ulotne bieżącego procesu.

Odtwórz środowisko ulotne pierwszego niewykonywanego

procesu w kolejce procesora.

Przekaż sterowanie do tego procesu.

background image

Rafał Grzybowski

Kolejka wielopoziomowa ze

sprzężeniem zwrotnym

Kilka kolejek procesora, z każdą kolejką jest
związany pewien ustalony kwant czasu
Najmniejszy kwant określa się dla kolejki o
najwyższym priorytecie, największy zaś - dla
kolejki o najniższym priorytecie
Jeżeli proces wykonuje się przez cały
przydzielony mu kwant czasu, to jest
odsyłany do następnej kolejki o niższym
priorytecie

background image

Rafał Grzybowski

Czekaj i sygnalizuj

Operacje te powinny być dostępne dla wszystkich procesów.

Wynikiem operacji czekaj może być zablokowanie procesu, które

spowoduje przejście do dyspozytora w celu ponownego

przydziału procesora.

Wygodnym sposobem “obudzenia procesu” jest włączenie w

procedurę obsługi przerwania operacji sygnalizuj

background image

Rafał Grzybowski

Blokowanie i odblokowywanie procesów

czekaj(s):

if s <> 0 then s := s – 1
else dodaj proces do kolejki
semafora i uczyń go niewykonywalnym;

sygnalizuj(s): if kolejka pusta then s := s + 1

else usuń jakiś proces z kolejki semafora
i uczyń go wykonywalnym;

background image

Rafał Grzybowski

Dołączanie procesów do kolejki i

usuwanie ich z niej

Dla większości semaforów można przyjąć
organizację kolejki zgodną z prostą zasadą - kto
pierwszy przyszedł, ten pierwszy wychodzi;
gwarantuje ona, że w końcu uwolni się wszystkie
zablokowane procesy
Procesy o wysokich priorytetach nie powinny być
odsyłane na długo do kolejki semafora.
Zmiana implementacji
semafora

background image

Rafał Grzybowski

Niepodzielność operacji

operacje czekaj i sygnalizuj powinny być
niepodzielne w tym znaczeniu, iż w dowolnej
chwili tylko jeden proces może je wykonywać
W komputerze z jednym procesorem
niepodzielność zapewnia wyłączanie
mechanizmu przerwań
W komputerze z kilkoma procesorami
centralnymi wykorzystywany jest rozkaz
"sprawdź i ustaw"


Wyszukiwarka

Podobne podstrony:
Jądro systemu operacyjnego
Jądro systemu operacyjnego, java, javascript, oprogramowanie biurowe, programowanie, programowanie 2
jadro systemu windows
Jądro systemu Linux
Jądro i system plików, Informatyka, Linux, Linux - Podręcznik
Jądro systemu operacyjnego
10 Linux Jądro systemu
J─ůdro i system plik├│w , Jądro i system plików
2006 07 Jądro systemu operacyjnego [Inzynieria Oprogramowania]
JADRO I SYSTEM PLIK W, █▓▓█ INFORMATYKA ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
jadro systemu linux
budowa systemu,jadro
System finansowy w Polsce 2

więcej podobnych podstron