Gdyby zapytać przechodnia, jakie zna systemy operacyjne, zapewne wymieniłby Windowsa, być może Linuksa i macOS-a. Bardziej zaawansowani podaliby jeszcze nazwy konkretnych linuksowych dystrybucji i systemy z rodziny *BSD. Do takiego krajobrazu przyzwyczajeni jesteśmy od dekad, ale to nie oznacza, że będzie on trwał wiecznie. Okazuje się, że rozwijane jest już oprogramowanie, które znajdzie zastosowanie, gdy zabraknie procesorów x86, ARM, a światowa produkcja elektroniki użytkowej po prostu się zatrzyma.
Apokalipsa w wersji lite
Od czasu do czasu wśród systemów operacyjnych pojawiają się dalece wyspecjalizowane perełki, które często imponują założeniami lub zastosowaniami. Jedną z nich jest z całą pewnością samodzielnie rozwijany przez kanadyjskiego programistę Virgila Duprasa Collapse OS. W pewnym sensie jest to postapokaliptyczny system operacyjny przygotowany z myślą o... upadku globalnego łańcucha dostaw, który cofnie nasze (tj. ludzkości) możliwości produkcyjne w zakresie elektroniki użytkowej o dekady.
Brzmi jak pomysł schorowanego umysłu? Cóż, przykład TempleOS-a i jego twórcy, Terry’ego A. Davisa, pokazuje, że nawet najtrudniejsze choroby psychiczne nie muszą być przeszkodą w tworzeniu oprogramowania, a nawet całych systemów operacyjnych. Wygląda jednak na to, że Dupras jest zdrowy. Wśród innych kanadyjskich programistów wyróżnia go jedynie przekonanie, że do 2030 roku nastąpi potężny krach, wspomniany upadek łańcucha dostaw, i nie będziemy już w stanie produkować mikroprocesorów i komputerów w ogóle.
Dupras nie ma zamiaru czekać na to z założonymi rękami. Wyszedł on z założenia, że aktualnie mikrokontrolery będziemy mogli programować za pomocą dzisiejszych komputerów jeszcze maksymalnie przez kilkadziesiąt lat. Po upływie tego czasu wszystkie ulegną trwałemu uszkodzeniu, przez co konieczne będzie budowanie nowych maszyn. Ale z czego? Twórca Collapse OS-a jest zdania, że w tym celu będziemy poszukiwać jednostek obliczeniowych w starej elektronice, tak jak dziś niektórzy przeczesują ulice i śmietniki w poszukiwaniu m.in. puszek czy jedzenia.
Zobacz też: Czy Rust to nowe C? Przed językiem Mozilli maluje się świetlana przyszłość
Procesory Z80 na wagę złota
Dupras zadał sobie zatem pytanie – gdy padną już nasze smartfony, tablety i komputery osobiste, gdy będziemy przeczesywać miasta i wysypiska, to jakie układy będziemy podczas takich poszukiwań znajdować najczęściej? Które są dziś najpowszechniejsze i będzie je można wykorzystać w przyszłości w nowych zastosowaniach, gdy stanie już produkcja w dalekowschodnich fabrykach? Wybór padł na 8-bitowe układy Z80, które od dekad montowane są w zasadzie wszędzie: od leciwych komputerów przez kasy fiskalne, a na kalkulatorach kończąc.
Collapse OS to zatem przedsięwzięcie znacznie bardziej przemyślane i uporządkowane, niż mogłoby się pierwotnie wydawać. Nawet jeśli cokolwiek pesymistyczna wizja kreślona przez Drupasa nie znajdzie odzwierciedlenia w rzeczywistości, to nie można mu odmówić konsekwencji. Jeśli dopuścimy na chwilę, że za dekadę faktycznie będziemy musieli dokonywać swoistego recyklingu czy też upcyklingu procesorów, to okaże się, że projektowanie systemu zdolnego działać na tak popularnych Z80 ma sporo sensu.
Zwłaszcza że Collapse OS nie ma wielu konkurentów, na co wskazuje sam autor: „minimalne systemy? Jest ich mnóstwo. Systemy samoreplikujące się? Jest ich mnóstwo. Systemy, które będą działać na mniej niż 10 tys. tranzystorów? Tych nie ma zbyt wiele” – pisze Dupras. A właśnie tego nam według niego potrzeba, jeśli mamy w obliczu zbliżającej się quasiapokalipsy posiadać jeszcze jakiekolwiek możliwości wykorzystywania mikroprocesorów. Czym zatem konkretnie jest na bieżącym stadium rozwoju Collapse OS?
Zobacz też: Privacy Sandbox. Nowy, tragikomiczny pomysł Google na ochronę prywatności w Sieci
Collapse OS – co oferuje dzisiaj?
Jak nietrudno się domyślić, Collapse OS nie jest systemem szczególnie zaawansowanym. Same jego założenia sprawiają, że nie może taki być. Nie chodzi jedynie o ograniczenia platformy sprzętowej w postaci mikroprocesorów Z80. Ważne jest także, aby to jego użytkownicy dostosowywali w przyszłości interfejsy i usługi systemu do urządzeń wejścia i innych podzespołów, którymi będą dysponować. Jeśli założymy, że komputery czy nawet urządzenia mobilne będą w przyszłości w pewnym sensie improwizowane, sklecane ze znalezionych części, to system operacyjny będzie musiał wykazywać ogromną elastyczność.
Autorskie jądro ma 3 KB wielkości. Na razie system udało się uruchomić na komputerze RC2014 i Sega Master System, działa już wyjście wideo i adapter PS/2 umożliwiający korzystanie z klawiatury, obsługiwane są karty pamięci SD. Z poziomu powłoki można wykonać dowolny kod z pamięci, dostępny jest też edytor tekstu. Plany są jednak znacznie bardziej ambitne: na roadmapie znajdziemy takie punkty, jak kompatybilność z maszynami TI-83+, TI-84+, TRS-80 model 1, obsługę wyświetlaczy VGA, lCD, a nawet E-Ink i kolejnych procesorów, m.in. 8080 czy AVR, czy zgodność z kolejnymi formatów pamięci oraz zróżnicowanymi dyskietkami.
Oczywiście całe przedsięwzięcie to skrajnie niszowa ciekawostka, ale twórcy – jeśli przyjmiemy jego punkt widzenia – nie można odmówić konsekwencji, samo podejście do rozwoju systemu i jego wizja są bardzo uporządkowane i logiczne. Jeśli się zastanowić, to być może to właśnie rozwijane przez niego oprogramowanie będzie optymalnym rozwiązaniem w świecie, gdzie sprzęt będziemy składać z elektrośmieci metodą chałupniczą, a oprogramowanie pisać wedle możliwości, a nie potrzeb. Więcej informacji na temat Collapse OS-a i spostrzeżeń jego twórcy znaleźć można na oficjalnej stronie.
Zobacz też: Do czego Microsoftowi jest dziś potrzebny na rynku konsumenckim Windows?