Ze względu na dopuszczalną liczbę zadań systemy dzielimy na:
- Systemy jednozadaniowe gdzie niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego,
- Systemy wielozadaniowe gdzie 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, zainicjowania operacji wejścia/wyjścia, przekroczenia ustalonego limitu czasu (kwantu czasu). Wielozadaniowe systemy operacyjne można podzielić na oferujące i pozbawione wywłaszczania. W systemie z wywłaszczaniem jest możliwe przerwanie wykonywania procesu i przeniesienie go z powrotem do kolejki kontrolowanej przez algorytm szeregowania. W systemie bez wywłaszczania zadania muszą przełączać się dobrowolnie. Proces aktywny (wykonujący się) jest przenoszony do kolejki procesów oczekujących tylko wtedy, gdy sam przerwie (wstrzyma, zawiesi) swoje działanie a dopóki tego nie uczyni (lub nie zakończy działania), żaden inny proces nie otrzyma dostępu do procesora.
Biorąc pod uwagę liczbę użytkowników systemy operacyjne można podzielić na:
- Systemy dla jednego użytkownika gdzie 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,
- Systemy wielodostępne gdzie wielu użytkowników może korzystać z zasobów systemu komputerowego, a system operacyjny gwarantuje ich ochronę przed niepowołaną ingerencją.
Budowa systemu operacyjnego:
Trzy główne elementy budowy systemu operacyjnego: jądro systemu wykonujące ww. zadania,
- powłoka - specjalny program komunikujący użytkownika z systemem operacyjnym,
system plików - sposób zapisu struktury danych na nośniku.
Powłoka systemowa - (ang. shell) to program pełniący rolę pośrednika pomiędzy
systemem operacyjnym lub aplikacjami a użytkownikiem, przyjmując jego polecenia i
"wyprowadzając" wyniki działania programów.
Przykłady: 4D0S/40S2/4NT - (DOS, OS/2, Windows NT)