background image

Systemy operacyjne komputerów

1.Definicja

2.Funkcje

3.Budowa

4.Podziały systemów operacyjnych
5.Przykladowe systemy operacyjne

background image

1.Definicja

System operacyjny – Zestaw podstawowych programów i narzędzi do zarządzania sprzętem 
komputerowym, urządzaniami przenośnymi, komputerami wbudowanymi itp.

Schemat warstw logicznych obrazujący relacje pomiędzy elementami systemu komputerowego

[źródło:http://pl.wikipedia.org/wiki/System_operacyjny]

2.Funkcje

2.1 Zarządzanie sprzętem.
2.2 Kontrola, obsługa zadań. 

Wielozadaniowość

kontrola przydzielanie pamięci – semafory, mutexy, blokowanie przerwań,

synchronizacja zadań – zmienne warunkowe, sygnały, przerwania, zdarzenia, spinlocki,

komunikacja między procesami – potoki, pamięć współdzielona, kolejki, gniazdka,

przydzielanie czasu procesora – scheduler.

Wielodostępność

Wieloprocesorowość

background image

3.Budowa

Warstwowa budowa systemu operacyjnego

[ źródło: http://einformatyka.cba.pl/systemy-operacyjne-opis-zadania-podzial-budowa]

[ źródło: http://einformatyka.cba.pl/systemy-operacyjne-opis-zadania-podzial-budowa]

background image

Konstrukcje jąder sys. operacyjnych:

monolityczne -   wszystkie zadania są wykonywane przez jądro, będące jednym, dużym 
programem działającym w trybie jądra. Zaletą tej techniki jest prostota, 
stabilność[potrzebne źródło], łatwość komunikacji pomiędzy różnymi członami jądra (jedna 
przestrzeń adresowa).(np. Linux)

Jądro monolityczne

[źródło: http://jedrzej.ulasiewicz.staff.iiar.pwr.wroc.pl/SystemyCzasuRzeczywistego/wyklad/Architektura-Neutrino-1.pdf]

mikrojądro - w tej technice z monolitycznego jądra zostaje tylko jego podstawowa część, a 
części odpowiedzialne za bardziej wyrafinowane funkcje są wydzielone do funkcjonalnych 
bloków albo realizowane jako zwykłe procesy w trybie użytkownika.(np. QNX)

Jądro monolityczne

[źródło: http://jedrzej.ulasiewicz.staff.iiar.pwr.wroc.pl/SystemyCzasuRzeczywistego/wyklad/Architektura-Neutrino-1.pdf]

background image

hybrydowe – połączenie jądra monolitycznego i mikrojądra. (np. Windows)

nanokernel – jeszcze mniejszy od mikrojądra,

exokernel - architektura będąca odmianą nanojądra. Cechą wyróżniającą jest możliwość 
zarządzania zasobami systemu przez nieuprzywilejowanego użytkownika, a rola jądra 
sprowadza się do zabezpieczania zasobów. (np. XOK) 

[źródło: http://pl.wikipedia.org/wiki/J%C4%85dro_systemu_operacyjnego]

4.Podziały systemów operacyjnych

CZASU RZECZYWISTEGO

OTWARTE
można uruchomić na dowolnej maszynie 
danego rodzaju
SPRZĘTOWE
programowe rozwiązania, które są 
integrowane z wybraną architekturą 
procesora. 
Z WYWŁASZCZANIEM
scheduler może wstrzymać aktualnie 
wykonywane zadanie (proces lub wątek), aby 
umożliwić działanie innemu.
WIELOZADANIOWE

WIELODOSTĘDNE
możliwość pracy wielu użytkowników w tym 
samym czasie.
TEKSTOWE

CZASU NIEDETERMINISTYCZNEGO

WBUDOWANE
napisane indywidualnie na dane urządzenie oraz brak w 
nich konfiguracji.
PROGRAMOWE

BEZ WYWŁASZCZANIA
zadania jawnie informują scheduler, w którym 
momencie chcą umożliwić przejście do innych zadań

JEDNOZADANIOWE

JEDNODOSTĘPNE

GRAFICZNE

5.Przykladowe systemy operacyjne

http://pl.wikipedia.org/wiki/Systemy_operacyjne#Systemy_operacyjne


Document Outline