1
Systemy operacyjne
Leszek Sieczko
2
Definicja systemu operacyjnego
(SO)
System
operacyjny
to
nadrzędny,
zorganizowany zespół
programów, które
pośredniczą
między
sprzętem
a
użytkownikami,
dostarczając użytkownikom zestawu środków
ułatwiających
projektowanie,
kodowanie,
uruchamianie i eksploatację programów oraz
w tym samym czasie sterują przydziałem
zasobów
dla
zapewnienia
efektywnego
działania.
3
System operacyjny
U
U
ż
ż
ytkownik
ytkownik
U
U
ż
ż
ytkownik
ytkownik
U
U
ż
ż
ytkownik
ytkownik
...
Edytory
tekstu
Arkusze
kalkulacyjne
Bazy
danych
programy
multymedialne
Narzędzia
...
4
•
Definicja interfejsu użytkownika
•
Udostępnianie systemu plików
•
Udostępnianie środowiska do
wykonywania programów użytkownika
• mechanizm ładowania i uruchamiania
programów
• mechanizmy synchronizacji i
komunikacji procesów
•
Sterowanie urządzeniami wejścia-
wyjścia
•
Obsługa podstawowej klasy błędów
Zadania systemu
operacyjnego
5
•
Przydział zasobów
•
Synchronizacja dostępu do zasobów
•
Ochrona i autoryzacja dostępu do
zasobów
•
Odzyskiwanie zasobów
•
Rozliczanie — gromadzenie danych o
wykorzystaniu zasobów
Zarządzanie zasobami
systemu komputerowego
6
•
Procesor — przydział czasu procesora
•
Pamięć
•
Urządzenia zewnętrzne
• udostępnianie i sterowanie urządzeniami
pamięci masowej
• alokacja przestrzeni dyskowej
• udostępnianie i sterownie drukarkami,
skanerami itp.
•
Informacja (system plików)
• organizacja i udostępnianie informacji
• ochrona i autoryzacja dostępu do informacji
Zasoby zarządzane przez
system operacyjny
p ֛◌
2
7
•
Początkowo komputery były używane do
rozwiązywania poszczególnych zadań stanowiących
określoną zamkniętą całość - słabo powiązaną lub
wcale z innymi - tryb pracy zwany tradycyjnym
•
Tryb wsadowy - pewna liczba zadań przetwarzania
w postaci programów i ich danych jest łączona we
wspólny wsad , który wprowadzają i realizują
proces przetwarzania nie użytkownicy
bezpośrednio, lecz specjalni operatorzy.
Geneza systemów
operacyjnych
8
Ponieważ komputer wykonuje tylko te czynności, które
wynikają z jego budowy i zostały odpowiednio
zaprogramowane, tryb wsadowy stworzył potrzebę
budowy programów zarządzających wykonaniem
zadań w trybie wsadowym - prototypy systemu
operacyjnego. Zadania realizowane przez prototyp
SO:
•
odczytywanie informacji opisującej kolejne zadanie,
•
przygotowanie komputera do wykonania kolejnego
zadania,
•
sprawdzenie , czy kolejne zadania zostało wykonane
do końca
•
przejście do następnego zadania.
Geneza systemów
operacyjnych
9
•
Tryb wsadowy nie usuwa wszystkich
niedogodności trybu tradycyjnego.
•
Znacznie intensywniejsze wykorzystanie mocy
jednostki centralnej uzyskuje się przy zastosowaniu
trybu wieloprogramowego, różniącego się od
wsadowego tym, że poszczególne zadania
wykorzystywane są w przeplocie.
System operacyjny - początki
10
•
Wykonywanie współbieżne wielu zadań
wsadowych - programy i ich dane muszą się
znajdować w pamięci operacyjnej.
•
Funkcje systemu operacyjnego:
•
podział pamięci operacyjnej miedzy kilka zadań;
•
organizacja zadania , tak by poszczególne procesy
przetwarzania przestrzegały obowiązującego podziału;
•
gospodarka innymi zasobami systemu cyfrowego (czas
jednostki centralnej, urządzenia zewnętrzne, i kanały
(magistrale) oraz oprogramowanie);
•
reagowanie na konflikty, wynikające ze współbieżności
wykonywania procesów;
System operacyjny - początki
11
•
Systemy przetwarzania bezpośredniego (ang. on-
line processing systems) — systemy interakcyjne
•
występuje bezpośrednia interakcja pomiędzy
użytkownikiem a systemem,
•
wykonywanie zadania użytkownika rozpoczyna
się zaraz po przedłożeniu.
Klasyfikacja SO ze względu
na sposób przetwarzania
12
•
Systemy przetwarzania pośredniego (ang. off-line
processing systems) — systemy wsadowe
•
występuje znacząca zwłoka czasowa między
przedłożeniem a rozpoczęciem wykonywania
zadania,
•
niemożliwa jest ingerencja użytkownika w
wykonywanie zadania
Klasyfikacja SO ze względu
na sposób przetwarzania
p ֛◌
3
13
•
Systemy jednozadaniowe — niedopuszczalne jest
rozpoczęcie wykonywania następnego zadania
użytkownika przed zakończeniem poprzedniego.
Klasyfikacja SO ze względu na liczbę
wykonywanych programów
14
•
Systemy wielozadaniowe — dopuszczalne jest
istnienie jednocześnie wielu zadań (procesów),
którym zgodnie z pewną strategią przydzielany jest
procesor. Zwolnienie procesora następuje w wyniku
•
żądania przydziału dodatkowego zasobu,
•
zainicjowaniu operacji wejścia-wyjścia,
•
przekroczenia ustalonego limitu czasu (kwantu
czasu).
Klasyfikacja SO ze względu na liczbę
wykonywanych programów
15
•
Systemy dla jednego użytkownika — zasoby
przeznaczone są dla jednego użytkownika (np. w
przypadku komputerów osobistych), nie ma
mechanizmów autoryzacji dostępu, a mechanizmy
ochrony informacji są ograniczone.
Klasyfikacja SO ze względu
na liczbę użytkowników
16
•
Systemy wielodostępne — wielu użytkowników
może korzystać ze zasobów systemu
komputerowego, a system operacyjny
gwarantuje ich ochronę przed niepowołaną
ingerencją.
Klasyfikacja SO ze względu
na liczbę użytkowników
17
•
Systemy czasu rzeczywistego (ang. real-time
systems) —zorientowane na przetwarzanie z
uwzględnieniem czasu zakończenie zadania,
tzw. linii krytycznej (ang. deadline).
•
Systemy sieciowe i rozproszone (ang. network
and distributed systems) — umożliwiają
zarządzanie zbiorem rozproszonych jednostek
przetwarzających, czyli zbiorem jednostek
(komputerów), które są zintegrowane siecią
komputerową i nie współdzielą fizycznie
zasobów.
Inne rodzaje SO
18
•
system jednozadaniowy;
•
nie zapewnia ochrony;
•
nie zarządza zasobami komputera;
•
obsługa systemu plików;
•
wsparcie dla programów rezydentnych;
•
aplikacje systemu DOS mają bezpośredni dostęp do
sprzętu i tylko 640 kB dostępnej pamięci;
•
architektura DOS złożona jest z trzech warstw:
BIOS, jądra systemu, powłoki;
Systemy operacyjne – klasa PC
MS DOS
p ֛◌
4
19
•
nakładka na system DOS (z cechami nowego systemu
operacyjnego);
•
wykorzystuje pamięć rozszerzoną, architekturę procesora 386;
•
możliwe uruchomienie wielu aplikacji (nie mylić z
wielozadaniowością);
•
możliwość wykorzystania wspólnych bibliotek funkcji (dll);
•
nowe jądro (kernel) systemu, obsługujące pamięć rozszerzoną,
moduł GDI udostępnia programom zbiór funkcji
wykonujących podstawowe operacje graficzne, moduł USER
obsługuje klawiaturę, mysz oraz wysokopoziomowe operacje
graficzne – wysyłanie narysowanych przez funkcje GDI
wzorów na ekran lub drukarkę, ramki okien, kontrolki;
Systemy operacyjne – klasa PC
MS Windows 3.1
20
•
Jądro systemu 32-bitowe;
•
32-bitowy system plików;
•
32-bitowe sterowniki, zgodność z modelem WDM;
•
Dynamiczna konfiguracja środowiska i sprzętu,
•
Mechanizm „plug and play”;
•
Rezygnacja z plików inicjujących (INI) na rzecz
Rejestru;
•
Implementacja protokołów sieciowych;
•
Resztkowy kod 16-bitowy majaczy na celu zgodność
z wcześniejszymi aplikacjami;
•
Bark zabezpieczeń;
Systemy operacyjne – klasa PC
MS Windows 9x
21
•
Sterowanie wykonaniem procesów przez umożliwienie ich
tworzenia, kończenia, zawieszenia i komunikowania;
•
Szeregowanie procesów ubiegających się o czas centralnego procesu.
Procesy korzystają z CPU na zasadzie przydziału czasu - CPU
wykonuje proces, jądro zawiesza go po upływie kwantu czasu i
wybiera do wykonania inny, później wznawia wykonanie
zawieszonego procesu.
•
Przydzielenie wykonywanemu procesowi pamięci głównej. Jądro
pod pewnymi warunkami umożliwia procesom współdzielenie części
ich przestrzeni adresowej, lecz chroni prywatna cześć przestrzeni
adresowej procesu przed niepowołanym dostępem z zewnątrz. Kiedy
system zaczyna brakować pamięci wolnej, jądro (menadżer pamięci)
zwalnia pamięć przepisując proces czasowo do pamięć pomocniczej,
zwanej urządzaniem do realizacji wymiennej. Jeśli jądro wysyła cale
procesy na urządzenie pomocnicze, to implementację określa się
systemem z wymianą. Jeśli zaś zapisuje strony pamięci, to jest
określana mianem systemu stronicującego.
Systemy operacyjne – klasa PC
MS Windows NT
22
•
Przydzielanie pamięci pomocniczej na efektywne
przechowywanie i odczytywanie danych użytkowych. Ta
usługa obejmuje system plików. Jądro przydziela pamięć
pomocnica na plik użytkowe, odzyskuje nieużywana pamięć,
nadaje systemowi plików czytelna strukturę i chroni pliki
użytkowe przed niepowołanym dostępem.
•
Umożliwianie procesom kontrowanego dostępu do urządzeń
peryferyjnych.
Systemy operacyjne – klasa PC
MS Windows NT
23