System operacyjny jest ważnym programem, który występuje w każdym komputerze dzięki niemu można wykonywać kilka żądań w tej samej jednostce czasu oraz przydzielać procesorowi odpowiedni czas na ich wykonanie. System operacyjny jest bardzo złożony z podstawowego kryterium wynika, że dzieli się on na system operacyjny czasu rzeczywistego, który zamiennie nazywany jest rtos i na system operacyjny czasowo niedeterministyczny. Podział ten dotyczy przede wszystkim planowania pracy komputera oraz przydzielania procesorowi poszczególnych zadań. Drugi podział systemu operacyjnego dotyczy sposobu realizacji przełączeń zadań, wyróżniamy tutaj system z wywłaszczaniem zadań lub system bez wywłaszczania zadań. Kolejny podział to podział na otwarte systemy operacyjne oraz na wbudowane systemy operacyjne. Systemy te różnią się przede wszystkim tym, że systemy otwarte można uruchomić na dowolnej maszynie i dodatkowo dowolnie modyfikować z kolei systemy wbudowane znajdują się wewnątrz urządzeń użytkowych i nie można ich dowolnie konfigurować. Systemy operacyjne można też podzielić pod względem środowiska zastosowanego do implementacji systemu. W tym wypadku wyróżniamy podział na programowe i sprzętowe systemy operacyjne. Sprzętowe systemy to przede wszystkim programowe rozwiązania, które są integrowane z wybraną architekturą naszego procesora. W tym wypadku dzięki sprzętowej części sytemu przyspieszona zostaje praca czynności wykonywanych przez system może to być na przykład przełączanie zadań. Miedzy wymienionym kryteriami podziału sytemu operacyjnego można ustalić pewną małą relacje, ponieważ systemy programowe zazwyczaj spotyka się jako otwarte systemy programowe są one czasowo niedeterministyczne i stosują one zazwyczaj wywłaszczanie przy przełączaniu zadań. Z kolie wbudowane systemy operacyjne wręcz przeciwnie są najczęściej czasowo deterministyczne, najczęściej nie stosują też wywłaszczania zadań. Co ważne bardzo często wbudowane systemy operacyjne są realizowane również w samym sprzęcie. Komputer bardzo często musi wykonywać kilka żądań w jednym czasie nosi to nazwę wielozadaniowości może jednak wtedy dojść do interferencji procesorów, aby temu zapobiec organizuje się często ustanowienie zasobów systemowych, które mają przed tym chronić. Do głównych zasobów zarządzanych przez system operacyjny nalezą sam procesor, który odpowiada za czas pracy naszego procesora następnie jest pamięć oraz urządzenia wewnętrzne, czyli dysk twardy, uradzenia odpowiedzialne za sterowanie drukarkami, skanerami.