System operacyjny

 System operacyjny (ang. operating system, skrót OS) – oprogramowanie zarządzające systemem komputerowym, tworzące środowisko do uruchamiania i kontroli zadań użytkownika.




Budowa systemu operacyjnego

 
Schematyczna budowa systemu komputerowego

Przyjęto podział na trzy główne elementy budowy systemu operacyjnego:

Jądro składa się z następujących elementów funkcjonalnych:

  • planisty czasu procesora, ustalającego które zadanie i jak długo będzie wykonywane,
  • przełącznika zadań, odpowiedzialnego za przełączanie pomiędzy uruchomionymi zadaniami,
  • Dodatkowo:
    • modułu zapewniającego synchronizacje i komunikację pomiędzy zadaniami,
    • modułu obsługi przerwań i zarządzania urządzeniami,
    • modułu obsługi pamięci, zapewniającego przydział i ochronę pamięci.
    • innych zależnie od funkcji i przeznaczenia systemu.
 


Podział systemów operacyjnych

Najszerszym, ale najbardziej podstawowym kryterium podziału systemów operacyjnych jest podział na:

Podział ten odnosi się do najbardziej podstawowej funkcjonalności systemu operacyjnego jakim jest planowanie i przydział czasu procesora poszczególnym zadaniom.

Ze względu na sposób realizacji przełączania zadań systemy operacyjne można podzielić na:

Inny rodzaj podziału to podział na:

  • otwarte systemy operacyjne
  • wbudowane systemy operacyjne.

Systemy otwarte można uruchomić na dowolnej maszynie wskazanego rodzaju np. PC i w określonym stopniu modyfikować. Systemy wbudowane jak sama nazwa wskazuje są zaszyte (wbudowane) wewnątrz urządzeń użytkowych, maszyn pojazdów itp. Aby uzyskać wysoką niezawodność pracy minimalizuje się w takich przypadkach możliwość dokonywania zmian w konfiguracji systemu operacyjnego.

Pod względem środowiska użytego do implementacji systemu można wprowadzić podział na:

  • programowe
  • sprzętowe.

Sprzętowe systemy operacyjne to: sprzętowo programowe rozwiązania integrowane z wybraną architekturą procesora. W takim przypadku sprzętowa część systemu przyśpiesza wybrany zakres czynności wykonywanych przez system (przykładowo przełączania zadań i zachowywanie ich kontekstu).

Można ustalić pewną relację pomiędzy wymienionymi kryteriami podziału. Zazwyczaj jako otwarte systemy operacyjne spotyka się systemy w pełni programowe, czasowo niedeterministyczne stosujące wywłaszczenie przy przełączaniu zadań. Wbudowane systemy operacyjne są najczęściej czasowo deterministyczne, zazwyczaj nie stosują wywłaszczenia zadań, bywa, że są realizowane również w sprzęcie.





System operacyjny jako interfejs pomiędzy maszyną a człowiekiem

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

Aby można było mówić, że system operacyjny tworzy środowisko niezbędne do uruchamiania i kontroli zadań musi on udostępniać interfejs pozwalający na wykonanie pewnych operacji. Przykładowo musi dostarczać metody pozwalające na uruchomienie lub zatrzymanie wskazanego zadania. Zazwyczaj system operacyjny udostępnia w tym celu zestaw funkcji zwanych API  lub wywołań systemowych. Programista aplikacyjny może skorzystać z tych funkcji w celu uzyskania żądanego efektu, przykładowo odczytu danych z pliku dyskowego (o ile system operacyjny posiada system plików).

Jakąkolwiek czynność na sprzęcie chcą wykonać zadania użytkownika, korzystają zawsze z interfejsu systemu. Ma to tę zaletę, że o szczegółach obsługi sprzętu jest poinformowany tylko i wyłącznie system operacyjny a same zadania nie muszą znać specyfiki obsługi urządzeń. Ułatwia to zadanie programistom aplikacyjnym oraz rozwiązuje potencjalne problemy.

Innym rodzajem interfejsu jest interfejs użytkownika. Dzięki niemu możliwa jest bezpośrednia interakcja użytkownika z komputerem, choćby tak trywialna jak bezpieczne wyłączenie maszyny. Należy przy tym zwrócić uwagę, że o ile interfejs programowy (API lub wywołania systemowe) jest elementem koniecznym to interfejs użytkownika jest elementem opcjonalnym.










Ta strona internetowa została utworzona bezpłatnie pod adresem Stronygratis.pl. Czy chcesz też mieć własną stronę internetową?
Darmowa rejestracja