Systemy operacyjne należą do programów o największej złożoności. Są to programy o wielkiej odpowiedzialności. Muszą być niezawodne. Często systemy operacyjne to setki zupełnie odrębnych programów.
Podstawą budowy SO jest warstwowa hierarchiczna budowa tego oprogramowania.
Funkcje systemowe
Powłoka:
Borna. Kerna, C, Bash Administrator decyduje jaką powłokę domyślnie włączyć użytkownikowi, ten jednak może włączyć inne jeśli chce
Inne warstwy wykorzystują tę warstwę, wi^c musi być szybka i niezawodna, stąd isana jest w Asscmblcrze
Przeważnie napisane są w C (na początku język C służył właśnie do pisania systemów operacyjnych)
Jadro - zbiór funkcji systemowych. Jego wersja określa konkretny zbiór funkcji systemowych. Fork - funkcja .ISO (w C)
Shell - powłoka (w Unix znakowa).