System operacyjny zapewnia połączenie podstawowego sprzętu komputerowego, urządzeń peryferyjnych i użytkowników. Tworzy także spójną platformę programistyczną dla programistów. Komputery wszystkich rozmiarów, od telefonów komórkowych po superkomputery, potrzebują funkcjonujących systemów operacyjnych.
Większość komputerów ma procesor, który wykonuje obliczenia i przetwarza informacje, pamięć, która przechowuje informacje o programie i napęd dyskowy do przechowywania programów i danych. Te urządzenia potrzebują systemu operacyjnego do wspólnej pracy. Na przykład pamięć RAM komputera opiera się na systemie operacyjnym, aby ustalić, gdzie przechowywane są informacje.
Systemy operacyjne również zarządzają urządzeniami zewnętrznymi. Systemy operacyjne zazwyczaj zawierają sterowniki do układów graficznych i dźwiękowych oraz kart i zwykle obsługują klawiatury, myszy i inne urządzenia wejściowe. Inne urządzenia, takie jak drukarki i skanery, często potrzebują do działania sterowników innych firm. Większość systemów operacyjnych zapewnia interfejs sterownika ułatwiający proces tworzenia sterowników sprzętu.
Programiści polegają na abstrakcji dostarczanej przez systemy operacyjne, aby uprościć programowanie. Zamiast pracować bezpośrednio z klawiaturą lub myszą, programiści używają sygnałów dostarczonych przez system operacyjny. Zamiast tworzyć graficzny system okienkowy do wyświetlania informacji, programiści mogą wysyłać stosunkowo proste polecenia do systemu operacyjnego, który obsługuje większość pracy. Ta abstrakcja często pozwala programistom kierować reklamy na wiele systemów operacyjnych z jednym kodem bazowym, wykonując jednocześnie tylko niewielkie usprawnienia specyficzne dla systemu.