Wszystko zaczęło się od maszyn klasy mainframe. Pierwsze nie miały systemu operacyjnego, pochłaniały ogromne ilości energii, zajmowały mnóstwo miejsca i nie należały do niezawodnych. Każde zadanie, jakie wykonywały, było programowane za pomocą kart perforowanych. W ten sposób do komputera trafiały dane oraz program, za którego pomocą miały być one opracowywane. Proces programowania i przygotowywania maszyny liczącej do pracy był znacznie dłuższy niż wykonywane przez nią obliczenia.
Wysoki koszt usług spowodował jednak, że użytkownicy biznesowi wymusili na producentach urządzeń zoptymalizowanie procesu wprowadzania danych i zarządzania wykonywanymi zadaniami. W końcu płacili za moc obliczeniową, a nie za czas poświęcany na programowanie i tracony na usuwanie błędów. Doprowadziło to do powstania pierwszych systemów operacyjnych, których działanie polegało na wsadowym przetwarzaniu kolejnych zadań.
Lata 50. i General Motors
Za pierwszy system operacyjny uznawane jest stworzone w 1956 roku oprogramowanie opatrzone nazwą GM-NAA I/O. Przygotowali je pracownicy General Motors i North American Aviation do używanych przez te firmy komputerów IBM. Głównym i właściwie jedynym zadaniem tego systemu było uruchamianie kolejnego procesu obliczeniowego, gdy wcześniejszy został ukończony. Na podstawie GM-NAA powstał trzy lata później Share OS. Usprawniał współdzielenie programów wprowadzanych do pamięci oraz oferował lepsze mechanizmy zarządzania buforami danych i urządzeniami wejścia-wyjścia. Tak jak jego pierwowzór działał na maszynach IBM.
Mniej więcej w tym czasie powstały także pierwsze minikomputery. Model PDP-1, produkowany przez DEC, kosztował w 1959 roku tylko 120 tysięcy dolarów (uwzględniając inflację, w 2013 ta kwota oscylowałaby w granicach 900 tysięcy dolarów). Wraz z nim na rynku zagościł system operacyjny, który koncentrował się na interakcji z użytkownikiem, a nie jedynie na efektywnym wykorzystaniu sprzętu. Do niego została także napisana pierwsza gra komputerowa.
Era IBM-a
Obserwując rozwój oprogramowania oraz społeczności użytkowników używających maszyn IBM, koncern postanowił szybko naprawić braki i przygotował w 1960 roku własny system IBSYS. Obsługiwał on kilka rodzin komputerów tego producenta. Wyróżniał się tym, że pozwalał odczytywać dane oraz instrukcje sterujące programami z taśm magnetycznych, które przygotowywane były wcześniej. W 1964 IBM rozpoczął także prace nad kolejnym systemem – OS/360, który wszedł do użytku dwa lata później. OS/360 to jeden z pierwszych systemów pozwalających na tak zwany bezpośredni dostęp do nośników danych, takich jak dyski, bębny magnetyczne czy komórki pamięci. Odróżniało go to od systemów z dostępem sekwencyjnym stosowanym przy odczycie taśm. Oferował ujednolicone API programistyczne, obsługiwał system plików i królował w świecie mainframe w różnych wariantach i odmianach przez kolejne 15 lat. Uzupełniały go takie rozwiązania, jak na przykład EXEC z UNIVAC-a – pierwszego komercyjnego producenta komputerów, GECOS z General Electric czy TOPS10 DEC-a.
Początek lat 60. to także powstanie polskiej Odry 1001, która ze względu na dużą awaryjność nie doczekała się produkcji. Końcówka tego dziesięciolecia to seria Odra 1300 zbudowana na licencji firmy ICL i pracująca pod kontrolą systemu EXEC z nakładką GEORGE będącą interpreterem poleceń i umożliwiającą uruchamianie skryptów.
W tym samym czasie na świecie rozwijały się również mikrokomputery i obsługujące je systemy operacyjne. DEC instalował na swych maszynach system czasu rzeczywistego RT-11. Potrafił on obsługiwać jednocześnie kilka aplikacji, choć nie była to typowa wielozadaniowość. Wprowadzono w nim także możliwość ładowania dodatkowych sterowników urządzeń już po zainstalowaniu i uruchomieniu systemu. Istotną nowością w tamtych czasach było także zastosowanie podziału systemu na oddzielne bloki i stworzenie mechanizmu ich komunikowania się za pomocą kernela (jądra systemu). Prekursorem tego rozwiązania był RC 4000. Dominowało ono w architekturze systemów przez kolejne dwadzieścia lat.