W jednym z wcześniejszych felietonów (27 maja 2022 r.) pisałem o systemach operacyjnych – programach, których zadaniem jest nadzór nad wszystkimi czynnościami wykonywanymi przez komputer. Wcześniejsze felietony są dostępne na stronie rp.pl, można więc do nich zajrzeć, do czego bardzo zachęcam. W przywołanym felietonie pisałem o tym, że system operacyjny współpracuje z użytkownikiem, obsługując jego polecenia, a także współdziała ze wszystkimi programami użytkowymi, pełniąc wobec nich dwojakiego rodzaju rolę: zwierzchnika, który może program uruchomić lub zatrzymać, oraz służącego, który wyręcza programy użytkowe przy wykonywaniu rutynowych czynności – np. przy drukowaniu czy wyszukiwaniu potrzebnych danych na dysku.
Opisywane systemy przeznaczone były dla dużych komputerów (np. IBM 360) albo minikomputerów (np. PDP 11). Jednak pojawienie się pod koniec lat 70. mikrokomputerów spowodowało, że potrzebne stały się systemy operacyjne obsługujące te maleństwa. O ich ewolucji opowiadam w tym felietonie.
Zaczęło się od CP/M
Pierwszym systemem operacyjnym dla mikrokomputerów osobistych był CP/M (od angielskiej nazwy Control Program/Microcomputer, czyli Program Sterujący do Mikrokomputerów). System ten stworzył w 1974 r. Gary Kildall. Co ciekawe, ten system nie był dedykowany do konkretnego mikrokomputera, tylko dostosowano go do właściwości mikroprocesora Intel 8080, nadawał się więc do wszystkich mikrokomputerów budowanych na bazie tego 8-bitowego mikroprocesora. Co więcej, obsługiwał także mikrokomputery, które napędzał tańszy mikroprocesor Zilog Z80, używano go więc w mikrokomputerach ZX Spectrum (i jego polskiej wersji Elwro 800 Junior) oraz na Atari XL/XE. Korzystałem przed laty (co opisywałem we wcześniejszych felietonach) zarówno z ZX Spectrum, jak i Atari 800 XL, mogę więc potwierdzić, że był to system prymitywny, ale wygodny. Co więcej, po latach zetknąłem się z twórcami czysto polskiego mikrokomputera o nazwie ComPAN 8, który został zaprojektowany w Zakładzie Systemów Automatyki Kompleksowej PAN (stąd ten człon PAN pisany w nazwie komputera wielkimi literami) i był produkowany w latach 80. XX wieku w zakładach MERA-ELZAB w Zabrzu. Moja styczność z zespołem twórców tego mikrokomputera wynika z faktu, że wspomniany zakład rozwinął się potem i został przekształcony w funkcjonujący do dziś Instytut Informatyki Teoretycznej i Stosowanej PAN z siedzibą w Gliwicach, a ja od blisko 20 lat jestem przewodniczącym Rady Naukowej tego Instytutu.
Produkcją i sprzedażą systemu CP/M zajmowała się stworzona przez Kildalla firma Digital Research Incorporated (DRI). Zasadniczą cechą systemu CP/M było to, że dopuszczał on funkcjonowanie w kontrolowanym mikrokomputerze tylko jednego programu, dlatego nie musiał mieć skomplikowanych narzędzi do podziału pamięci na obszary należące do różnych programów ani nie musiał przydzielać mikroprocesora kolejno do obsługi różnych procesów (tzw. time sharing), co bardzo podrażało systemy przeznaczone dla dużych komputerów.
Pod systemem CP/M na obsługiwanych przez ten system mikrokomputerach działała całkiem dobra kolekcja programów. Oczywiście był język BASIC, będący podstawowym narzędziem zarówno programowania, jak i wydawania na bieżąco komend komputerowi, dostępne były liczne gry, funkcjonował dość prymitywny, ale sprawny edytor tekstów WordStar i arkusz kalkulacyjny Multiplan. Twórcy systemu CP/M opracowali potem jego wersję dla 16-bitowych komputerów, ale ta wersja się nie przyjęła, bo zaczęło się już panowanie systemu MS-DOS. Ale o tym za chwilę.