Człowiek rozmawia ze sprzętem i vice versa

Człowiek rozmawia ze sprzętem i vice versa
Powstały ich setki. Zatrzęsienie wersji i dystrybucji. Niektóre są niszowymi ciekawostkami, inne używane przez niewielu, mają jednak wielkie znaczenie, gdyż odpowiadają za kluczowe fragmenty infrastruktury komputerowej i sieciowej. Mimo tej mnogości, w każdym segmencie rynku dominatorów jest najwyżej dwóch.

System operacyjny to najważniejsze oprogramowanie, które działa na komputerze. Zarządza pamięcią, procesami i całym jego oprogramowaniem oraz sprzętem. Pozwala również na komunikację z komputerem bez konieczności znajomości maszynowego "języka". W większości przypadków w tym samym czasie działa w urządzeniu wiele różnych programów i każdy musi mieć dostęp do centralnej jednostki przetwarzania danych (CPU), pamięci i układu przechowywania danych. System operacyjny koordynuje to wszystko, zapewniając każdemu z programów to, czego potrzebuje. Bez systemu operacyjnego oprogramowanie nie byłoby nawet w stanie rozmawiać ze sprzętem, a komputer byłby bezużyteczny.

Użytkownicy i programy aplikacyjne mają dostęp do usług oferowanych przez systemy operacyjne za pomocą wywołań systemowych i interfejsów programowania aplikacji. Współdziałają z komputerowym systemem operacyjnym za pomocą interfejsów wiersza poleceń (CLI) lub graficznych interfejsów użytkownika, znanych jako GUI (zobacz także: Liczba zastosowań i znaczenie interfejsów głosowych szybko rośnie). Krótko mówiąc, system operacyjny umożliwia interakcję użytkowników z systemami komputerowymi, działając jako interfejs między użytkownikami lub programami aplikacyjnymi a sprzętem komputerowym.

1. Logotypy najpopularniejszych systemów operacyjnych

Systemy operacyjne (1) można znaleźć na prawie każdym urządzeniu, które zawiera komputer - od telefonów komórkowych i konsoli do gier wideo po superkomputery i serwery internetowe. Przykłady popularnych nowoczesnych systemów operacyjnych to: Android, iOS, GNU/Linux, Mac OS X, Microsoft Windows lub z/OS firmy IBM. Wszystkie te systemy, z wyjątkiem Windows i z/OS, mają korzenie w UNIX-ie. Od niedawna, jeśli nie rozróżniamy pomiędzy platformami stacjonarnymi a mobilnymi, nie ma już dominacji Windowsa, lecz jest dzielenie panowania z Androidem (2).

2. Zmiany udziału w globalnym rynku systemów operacyjnych w ciągu ostatniej dekady ogólnie, według StatCounter
3. Zmiany udziału w globalnym rynku systemów operacyjnych w ciągu ostatniej dekady, w komputerach klasy desktop, według StatCounter
4. Zmiany udziału w globalnym rynku systemów operacyjnych w ciągu ostatniego roku w urządzeniach mobilnych, według StatCounter
5. Udziały rodzajów systemów operacyjnych na rynku serwerów w 2018 r.

Trzy najbardziej popularne systemy operacyjne dla komputerów osobistych to Microsoft Windows, Apple Mac OS X i Linux, którego udział oscyluje około 1-2 proc. (3) W urządzeniach mobilnych dominuje system Android przed iOS Apple, który ma drugie miejsce z rosnącym jednam w ostatnim czasie udziałem w rynku (4). Zaś na globalnym rynku serwerów nieomal połowę mają produkty firmy Microsoft, choć ten odsetek powoli spada, zaś wraz z dystrybucją Red Hat Linuxa te dwa systemy mają ok. 4/5 tego rynku (5).

Od smartfona do serwera

Microsoft stworzył system operacyjny Windows w połowie lat 80. XX wieku. Opierał się na rdzeniu MS-DOS, wówczas najczęściej używanym menedżerze programów do uruchamiania aplikacji. Następnie firma Billa Gatesa szybko wprowadzała nowe wersje systemu Windows, w tym pierwszą dużą aktualizację w 1987 r. a za nią - Windows 3.0. Kilka lat później kolejna wersja, Windows 95, stała się zdecydowanie dominującym systemem operacyjnym. Specjaliści uważają, że system Microsoftu nie zmienił się już zasadniczo, jeśli chodzi o podstawową architekturę od czasów Windows 95, chociaż dodano do niego ogromną ilość funkcji mających na celu sprostanie nowym wymogom obliczeniowym. Wiele elementów, które dziś rozpoznajemy, było obecnych już od lat 90. Na przykład menu Start, pasek zadań i Eksplorator Windows (obecnie znany jako File Explorer).

Na przestrzeni lat powstało wiele różnych wersji systemu Windows. Najpopularniejsze z nich to Windows 7 (wydany w 2009 roku), Windows Vista (2007) i Windows XP (2001). Windows jest preinstalowany na większości nowych komputerów PC, co uznaje się za główną przyczynę jego supremacji na świecie. Użytkownik kupujący peceta lub laptopa albo aktualizujący system Windows w posiadanej maszynie może wybrać jedną z kilku różnych wersji systemu, w tym Home Premium, Professional lub Ultimate.

Podobnie na wszystkich nowych komputerach Macintosh lub Mac preinstalowany fabrycznie jest od 2002 r. system operacyjny firmy Apple, obecnie znany jako macOS (dawniej OS X, a także Mac OS X). OS-y Apple to rodzina opartych na starszym UNIX-ie systemów operacyjnych dostępnych oficjalnie jedynie dla komputerów Apple, instalowanych fabrycznie w nich od 2002 roku. Nazwa systemu ogłoszona została w 2016 roku na konferencji WWDC w związku z potrzebą unifikacji nazw używanych przez Apple dla swoich systemów operacyjnych (zatem macOS wpisuje się w szereg: iOS, watchOS, tvOS itd.).

Oprócz starego UNIX-a podstawą do stworzenia nowoczesnego systemu Apple był dawniej używany system NeXTStep z drugiej połowy lat 80., wykupiony przez Apple wraz z producentem, firmą NeXT w 1996 r. Ostatnią wersją tamtego "klasycznego" systemu komputerów Macintosh był Mac OS 9. W 2006 wydano pierwszą wersję dla nowych "maców" o architekturze x86 - Mac OS X 10.4. W 2005 roku wydano pierwszą wersję w pełni zgodną z Single UNIX Specification w wersji trzeciej - Mac OS X 10.5, działający na "macach" PowerPC i x86 za pomocą technologii zwanej Universal binary, czyli formatu plików wykonywalnych działających na obu architekturach. Na bazie tej właśnie wersji powstał system iOS (początkowo iPhone OS), system operacyjny Apple Inc. dla urządzeń mobilnych iPhone, iPod touch oraz iPad. Jak widać, historia systemu/systemów operacyjnych Apple jest znacznie bardziej skomplikowana niż historia Windowsa.

Nic to jednak w porównaniu z różnorodnością rodziny Linuxa, systemów operacyjnych typu open source, co oznacza, że mogą one być modyfikowane i rozpowszechniane przez każdego na całym świecie. Zasadniczo różni się od oprogramowania własnościowego, takiego jak Windows, które może być modyfikowane tylko przez firmę, która jest jego właścicielem. Zaletą Linuxa jest to, że jest to "wolne oprogramowanie" i istnieje wiele różnych dystrybucji (wersji), wśród których można wybrać taką, która odpowiada potrzebom użytkownika. Każda dystrybucja ma inny wygląd i możliwości. Za najpopularniejsze uważa się dystrybucje znane pod nazwami: Ubuntu, Mint i Fedora. Nazwa Linux pochodzi od nazwiska Linusa Torvaldsa, który stworzył jądro systemu Linux w 1991 roku.

Linux został po raz pierwszy rozpowszechniony na zasadach Powszechnej Licencji Publicznej GNU w 1992 roku. Rozwinął się od początkowych kilku linii kodu źródłowego w oryginalnym wydaniu do ponad dwudziestu milionów linii dzisiaj. System ten może być modyfikowany przez każdego dla własnych celów. W rezultacie mamy setki systemów operacyjnych opartych na Linuksie, zwanych dystrybucjami. To sprawia, że wybór pomiędzy nimi jest niezwykle trudny, o wiele bardziej skomplikowany niż wybranie wersji systemu.

Różnorodność dystrybucji Linuxa jest tak wielka, że każdy znajdzie coś, co odpowiada jego potrzebom i preferencjom. Na przykład są wersje, które do złudzenia przypominają system Apple’a oraz takie, które imitują popularny Windows XP. Istnieją również bardziej wyspecjalizowane smaki Linuxa, takie jak dystrybucje, które są zaprojektowane, aby dać starożytnym komputerom o małej mocy nowe życie, lub też dystrybucje super bezpieczne, które mogą być uruchamiane z dysku USB. Oczywiście, istnieje również wiele wersji Linuxa do uruchamiania serwerów i innych aplikacji klasy korporacyjnej. Adeptom Linuxa poleca się Ubuntu jako dobry punkt wyjścia. To system bardzo przyjazny dla użytkownika (nawet w porównaniu z Windows), a jednocześnie na tyle wszechstronny i bogaty w funkcje, by zadowolić biegłych w sztuce komputerowej.

Urządzenia mobilne, takie jak telefony, tablety i odtwarzacze mp3, istotnie różnią się od komputerów stacjonarnych i przenośnych, więc działają na nich systemy operacyjne zaprojektowane specjalnie dla urządzeń przenośnych. Systemy operacyjne dla urządzeń przenośnych na ogół nie oferują takiego szerokiego wachlarza funkcji jak te, które są przeznaczone dla komputerów stacjonarnych lub przenośnych, i nie są w stanie uruchomić wszystkich programów znanych z pecetów. Jednak nadal można nimi robić wiele rzeczy, takich jak oglądanie filmów, przeglądanie Internetu, zarządzanie kalendarzem, granie w gry i wiele innych.

Są jeszcze systemy operacyjne dla serwerów, czyli waga ciężka i superciężka. Jaka jest różnica między serwerowym systemem operacyjnym a systemem operacyjnym dla zwykłego użytkownika? "Zwykły" system operacyjny potrafi uruchamiać programy takie jak MS Word, PowerPoint, Excel, także programy graficzne, odtwarzacze wideo itp. Umożliwia też uruchamianie aplikacji, które ułatwiają przeglądanie stron internetowych i sprawdzanie wiadomości e-mail. Wykorzystuje on połączenia LAN i Bluetooth i jest tańszy niż system operacyjny serwera.

System operacyjny serwera jest znacznie droższy nie bez powodu. Jego zadaniem jest umożliwianie nieograniczonej liczby połączeń użytkownikom, zapewnianie znacznie większych zasobów pamięci i odgrywanie roli uniwersalnych serwerów dla stron internetowych, poczty elektronicznej i baz danych. System serwerowy może obsługiwać wiele komputerów stacjonarnych, ponieważ jest zoptymalizowany dla sieci, a nie dla pojedynczego użytkownika.

Systemy operacyjne dla urządzeń Internetu Rzeczy
Contiki - opracowany w 2002 roku system operacyjny typu open source, skupia się głównie na sieciowych mikrokontrolerach małej mocy i urządzeniach IoT.
Android Things - stworzony przez Google. Jego poprzednia nazwa brzmiała Brillo. Obsługuje technologie Bluetooth i Wi-Fi.
RIOT - ma liczną społeczność deweloperów i został wydany na Powszechnej Licencji Publicznej GNU - Lesser General Public License. Stąd RIOT jest nazywany Linuxem świata IoT.
Apache Mynewt - jest podobny do systemu operacyjnego RIOT. Udostępniany na licencji Apache 2.0. Działa w czasie rzeczywistym. Może być używany w wielu mikrokontrolerach, w przemysłowych urządzeniach IoT i urządzeniach medycznych.
LiteOS - został uruchomiony przez chińskiego giganta technologicznego Huawei w 2015 r. Jest uznawany za bezpieczny i interoperacyjny.
Zephyr - został wydany w 2016 roku przez Fundację Linuxa. Łatwa integracja różnych urządzeń IoT sprawiła, że ten system operacyjny należy do najbardziej popularnych na świecie.
Snappy - to Ubuntu core IoT OS. Opierając się na społeczności Ubuntu, gwarantuje silne bezpieczeństwo urządzeń IoT.
Tiny OS - po raz pierwszy został wydany w 2000 roku. Jest to jeden z najstarszych systemów operacyjnych dla urządzeń IoT. Korzysta głównie z bezprzewodowych sieci czujników. 
Windows IoT - wcześniej był również znany jako Windows Embedded. Został zmieniony na Windows IoT wraz z pojawieniem się Windows 10.
Raspbian - jest to system operacyjny oparty na Debianie tylko dla Raspberry Pi. Jądro jest podobne do jądra Unixa.
FreeRTOS - system operacyjny typu open source dla mikrokontrolerów. Wykorzystuje usługę chmury Amazon, czyli AWS.
Embedded Linux - system operacyjny Linux ma w tej odsłonie zastosowanie do inteligentnych telewizorów, routerów bezprzewodowych (Wi-Fi), itp.

Krótka historia graficznego interfejsu

Większość ludzi używa systemu operacyjnego, który jest zainstalowany w ich komputerze, zanim go kupią, ale oczywiście zawsze istnieje możliwość jego zmiany, modernizacji lub nawet wymiany na inny. Współczesne systemy operacyjne korzystają z graficznego interfejsu użytkownika, czyli GUI, który umożliwia korzystanie z myszy lub dotykowego panelu do klikania na ikony, przyciski i menu, a wszystko jest wyświetlane na ekranie za pomocą kombinacji grafiki i tekstu. Przed GUI interfejs komputerowy składał się z wiersza poleceń, a użytkownik musiał wpisywać do komputera każde polecenie, zaś maszyna wyświetlała jedynie tekst.

Za pierwszy na świecie graficzny interfejs użytkownika uważa się wydanie systemu 1 Apple’a w styczniu 1984 r. Oddany do użytku w listopadzie kolejnego roku system Windows 1 również oferował GUI, 16-bitowy graficzny interfejs użytkownika. Wówczas oprócz Apple prototypowe graficzne środowiska prezentowały także inne firmy, np. VisiCorp na targach COMDEX w 1982 r., a głównym powodem powstania GUI Windows miał być lęk Billa Gatesa o utratę pozycji na rynku pecetów produkcji IBM.

W swoim interfejsie, o czym już wspominaliśmy, kolejne odsłony systemu operacyjnego Windows przez całe lata opierały się na menu Start, które po raz pierwszy wprowadzono wraz z wersją systemu Windows 95 w 1995 r. (6) Firma Microsoft uruchomiła przycisk Start i menu Start z kampanią reklamową, aby przekonwertować użytkowników na nowy proces uruchamiania programu. Gdy w 2012 r. pojawił się system Windows 8, przycisk zniknął, a użytkownik przenoszony był od razu na pełny ekran startowy, który został zaprojektowany tak, aby był kompatybilny z nowymi urządzeniami z ekranem dotykowym. Na ekranie startowym skupiono się na ikonach aplikacji i kafelkach, które można kliknąć, podobnie jak w pasku dock firmy Apple, zamiast na liście opcji i programów systemowych, na których system Windows oparł się w menu Start z poprzednich lat.

6. Wykorzystanie przycisku Start w systemie Windows

W 2013 r. pojawiła się wersja systemu Windows 8.1, która przywróciła przycisk Start, aby ułatwić klientom firmy Microsoft korzystanie z systemu startowego. W 2014 roku system Windows 10 na stałe przywrócił ukochany przycisk Start i menu Start.

Wspomniany, znany użytkownikom Apple’a dock został wprowadzony w 2000 r. wraz z wydaniem systemu Mac OS X, nazywanego Cheetah. Do 2000 r. użytkownicy systemu operacyjnego Apple używali górnego paska menu do uruchamiania i wybierania programów oraz wprowadzania zmian w aplikacjach już uruchomionych. Kiedy system operacyjny X 10.5, znany również jako Leopard, został wydany w październiku 2007 r., dock (7) został przeprojektowany z zastosowaniem tego samego podejścia wizualnego, jakie znamy obecnie.

7. Dock Apple

UNIX i nie UNIX

Systemy Windows, mac OS i rozliczne dystrybucje Linuxa (włącznie z Androidem, którego do tej rodziny wypada zaliczyć) to nie wszystko co oferuje rynek. Potrzebne jest wyjaśnienie, że wiele różnych produktów jest w tym świecie jakoś ze sobą spokrewniona; np. Linux jest stworzony na podobieństwo starego systemu UNIX rozwijanego w Bell Labs od końca lat 60. XX wieku. Z UNIX-a wywodzą się nowoczesne systemy Apple’a. Zatem istnieje sieć powiązań, jednak wielu programistów, zwłaszcza tworzących te systemy, zwraca uwagę, by nie traktować ich jak "w gruncie rzeczy tego samego" i podkreśla różnice. Sama nazwa Linux ma być skrótem od sformułowania "Linux Is Not UniX" (pol. "Linux To Nie Jest UniX"). Oznacza to, że Linux jest podobny do UNIX-a, ale został stworzony bez kodu uniksowego, w przeciwieństwie do np. BSD (Berkeley Software Distribution) i jego wariantów.

Przykładem takiego powiązanego, ale innego systemu, jest Chrome OS, tworzony przez firmę Google, którego głównym zadaniem systemu ma być uruchamianie aplikacji internetowych. Jest dostępny na wielu zarówno tanich, jak i wysokiej klasy laptopach. Komputery z przeinstalowanym Chrome OS to znane na rynku chromebooki.

Na wyróżnienie zasługuje jeden z potomków wspomnianego BSD o nazwie FreeBSD (8). Pierwsza wersja systemu ukazała się w 1993 r. Obecnie dostępne i wspierane są dwie wersje stabilne: 11.4 oraz 12.1. Nazwę FreeBSD wymyślił David Greenman z firmy Walnut Creek CDROM, która od początku wspierała projekt. Oficjalną maskotką FreeBSD jest daemon, oficjalnym hasłem jest "The power to serve". Ze względu na swą wydajność i niezawodność często stosowany jako serwer lub zapora sieciowa. FreeBSD używany jest m.in. przez Apache.org, Netflix, Flight-Aware, Yahoo!, Yandex, Netcraft, Sony Playstation 4, WhatsApp.

8. Ekran systemu FreeBSD

Systemem operacyjnym przeznaczonym do zastosowań domowych (prosta obsługa, multimedia) i biurowych jest z kolei Syllable. Powstał w lipcu 2002 jako odgałęzienie systemu AtheOS, który został porzucony przez swojego autora, Kurta Skauena. Architektura jądra i systemu podobnie jak projekt AtheOS była inspirowana systemem AmigaOS.

Za klona Windows uważany jest ReactOS, darmowy system operacyjny, typu open source dla komputerów osobistych funkcjonalnie kompatybilny z równymi wersami Windowsa. W założeniach systemu jest możliwość korzystania z aplikacji i sterowników Windows, aplikacji OS/2, Java i POSIX.

ReactOS został napisany w C, a niektóre elementy, jak ReactOS Explorer w C++. Twórcy ReactOS twierdzą, że nie jest on klonem Windows. ReactOS jest rozwijany od 1996 r. Jeszcze w 2019 r. nadal uważany był za niekompletne oprogramowanie w wersji alfa, dlatego jest zalecany przez programistów wyłącznie do testowania. Obecnie działa w nim wiele aplikacji Windows, takich jak Adobe Reader 6.0 i OpenOffice.

Nie każdemu znany Solaris jest systemem operacyjnym opartym na UNIX-ie, który został pierwotnie opracowany przez Sun Microsystems w połowie lat 90. W 2010 roku zmieniono jego nazwę na Oracle Solaris po przejęciu Sun Microsystems przez Oracle. Znany jest ze swojej skalowalności i kilku innych funkcji, które umożliwiły ciekawe zastosowania.

Istnieje wiele systemów operacyjnych, które były znaczące w swoich czasach, ale już nie są, takich jak AmigaOS; OS/2 firmy IBM i Microsoft, klasyczny Mac OS, czyli nieunixowy prekursor Apple MacOS, BeOS, XTS-300, RISC OS, MorphOS, Haiku, Bare-Metal i FreeMint. Niektóre z nich są nadal używane na rynkach niszowych i nadal są rozwijane jako platformy mniejszościowe dla społeczności entuzjastów i specjalistycznych aplikacji.

OpenVMS stworzony w DEC jest nadal aktywnie rozwijany przez Hewlett-Packard. Inne systemy operacyjne są wykorzystywane prawie wyłącznie w środowisku akademickim, do nauczania na temat systemów operacyjnych lub do prowadzenia badań nad koncepcjami OS-ów. Typowym przykładem systemu, który spełnia obie te funkcje, jest MINIX. Inny, o nazwie Singularity, jest wykorzystywany wyłącznie do badań. Oberon, zaprojektowany w ETH Zurych przez Niklausa Wirtha, Jürga Gutknechta i grupę studentów w latach 80., był używany głównie do badań, nauczania i codziennej pracy w grupie Wirtha. Niektóre systemy operacyjne, które nie zdobyły znaczącego udziału w rynku, wprowadziły jednak innowacje, które miały wpływ na wiodące projekty. Dotyczy to zwłaszcza badań i eksperymentów Bell Labs.

Istnieją również różne systemy operacyjne dla innych niż pecety, smartfony i tablety platform. Od lat rozwijają się odrębne rozwiązania dla inteligentnych telewizorów, samochodów, zegarków, elektroniki noszonej, Internetu Rzeczy (9) itp. Nie są to w sensie technicznym te same systemy operacyjne, choć podobnie się nazywają. Na przykład system operacyjny Android TV OS to nie to samo co mamy w smartfonie. Systemy wbudowane, używane choćby w samochodach, mogą występować w mnogich odmianach, po wiele instalacji na jedno urządzenie, bo układy elektroniki w autach mają dziesiątki procesorów. Każdy procesor (w tym przypadku mikrokontroler) może mieć inny system operacyjny (lub taki sam) albo nawet nie mieć żadnego.

9. System operacyjny dla IoT

Mobilne systemy otwarte i te centralnie sterowane

Jeszcze ok. 15 lat temu na rynku mobilnym dominował system Symbian, dziś jest on już zasadniczo historią OS-ów, podobnie jak PalmOS, WebOS. Obecnie na rynku mobilnych systemów operacyjnych dominuje, jak wiadomo, Android, otwarty i darmowy pakiet oprogramowania rozwijanego przez Google, zawierającego zasadniczy system operacyjny, oprogramowanie pośredniczące, a także kluczowe aplikacje do użytku na urządzeniach mobilnych.

Linuksowe jądro oraz niektóre inne komponenty, które zaadaptowano do Androida, opublikowane są na licencji GNU GPL. Android nie zawiera jednak kodu pochodzącego z projektu GNU. Cecha ta odróżnia Androida od wielu innych istniejących obecnie dystrybucji Linuxa. Aktualizacje systemu operacyjnego Android publikowane były dawniej pod nazwami nawiązującymi do deserów (Cupcake, Donut, Eclair, Gingerbread, Honeycomb, Ice Cream Sandwich). Od dwóch lat wersje Androida mają po prostu kolejne numery.

Drugim systemem mobilnym jest iOS, produkt Apple'a dla urządzeń mobilnych iPhone, iPod touch oraz iPad. Obecna nazwa funkcjonuje od 2010 r. Wcześniej system był znany jako iPhone OS. System ten bazuje na Mac OS X 10.5. iOS dostępny jest tylko na urządzeniach firmy Apple, ponieważ firma nie udziela licencji na system operacyjny dla urządzeń innych producentów. Wszelkie oprogramowanie jest indywidualnie dopuszczane do obiegu przez Apple Inc. i rozprowadzane z jednego repozytorium (App Store) centralnie przez AppStore z obowiązkowym kryptograficznym podpisem potwierdzającym. Ten model dystrybucji, choć centralnie kontrolowany, umożliwia zapobieganie rozprzestrzenianiu złośliwego oprogramowania, sprawne naprawy i update’y, a co za tym idzie, niespotykanie wysoki standard bezpieczeństwa i jakości dla ogółu użytkowników.

Windows Mobile to mobilny system operacyjny firmy Microsoft stosowany w smartfonach i urządzeniach przenośnych - z ekranami dotykowymi lub bez nich. System operacyjny Mobile jest oparty na jądrze Windows CE 5.2.

Windows Mobile - system operacyjny przeznaczony dla palmtopów PocketPC, palmofonów oraz smartfonów. Następcą serii Windows Mobile został Windows Phone zaprezentowany 27 września 2011. W 2015 roku Microsoft powrócił do poprzedniej nazwy, prezentując system operacyjny Windows 10 Mobile, jednakże system ten nie należy do rodziny Windows Mobile, która oparta jest ba jądrze Windows CE. Należy on do rodziny systemu Windows 10 w ramach stworzenia uniwersalnej platformy nazwanej Universal Windows Platform.

Kolejny znany na rynku OS-ów mobilnych system, BlackBerry OS, jest autorskim, mobilnym systemem operacyjnym opracowanym przez Research In Motion do użytku na popularnych przed laty urządzeniach przenośnych BlackBerry. Platforma BlackBerry była popularna wśród użytkowników korporacyjnych, ponieważ w połączeniu z serwerem BlackBerry Enterprise Server umożliwia synchronizację z programami Microsoft Exchange, Lotus Domino, Novell GroupWise e-mail i innym oprogramowaniem biznesowym.

Są inne mniej znane propozycje, takie jak Bada, system operacyjny Samsunga dla telefonów komórkowych, który został uruchomiony w 2010 roku. Pierwszym smartfonem, w którym go zastosowano, był Samsung Wave. MeeGo OS to z kolei dystrybucja Linuxa, powstała wskutek połączenia dystrybucji Moblin (tworzonej przez Intela) i Maemo (wspieranej przez Nokię) z przeznaczeniem dla różnych urządzeń i zastosowań mobilnych, typu samochody, jachty, telefony, netbooki lub tablety. Prezentacja pierwszego telefonu komórkowego z MeeGo v1.2, Nokii N9 odbyła się 21 czerwca 2011 roku.

Zapraszamy do zoo systemów operacyjnych

Jak widać, systemów operacyjnych jest całe mrowie. Powstawały i przeobrażały się, pączkując w kolejne wersje, zwłaszcza jeśli chodzi o rodziny i pokolenia Linuxa, aby zaspokoić zróżnicowane czasem specjalistyczne potrzeby. W ramach tej złożonej i wielogałęziowej ewolucji powstało kilka oryginalnych, by nie powiedzieć kuriozalnych, tworów.

Taką przedziwną kreacją jest np. TempleOS, dawniej J Operating System, SparrowOS i LoseThos - lekki system operacyjny o tematyce biblijnej. Został zaprojektowany jako trzecia świątynia przepowiedziana w Biblii przez amerykańskiego programistę Terry’ego A. Davisa. Davis twierdził, że funkcje systemu, takie jak rozdzielczość 640×480 px, 16-kolorowy wyświetlacz i sterowanie audio, były wyraźnie polecone mu przez Boga. Został zaprogramowany za pomocą oryginalnej odmiany języka C (zwanej HolyC) i zawierał m.in. symulator lotu, kompilator i jądro.

Nieco podobnym klimat spowija stworzony przez Virgila Duprasa postapokaliptyczny Collapse OS. Ten system operacyjny oferuje pakiet programów zdolnych do samoreplikacji i samoinstalacji w szerokiej gamie urządzeń, wraz z szeregiem innych funkcji. Główne zadanie systemu to uruchomienie na szerokiej gamie często prymitywnych urządzeń, które mogą przetrwać po globalnym kataklizmie.

Inny oryginalny projekt, AROS, miał odtwarzać doświadczenie znane użytkownikom starych maszyn Amiga na nowoczesnych komputerach PC. Jednak z czasem, w miarę rozwoju oprogramowanie przerosło pierwowzór, stając się oryginalnym produktem luźno kojarzącym się z romantycznymi czasami komputerów.

Korea Północna jak wiadomo izoluje się od świata zewnętrznego. Dotyczy to również oprogramowania komputerowego. Komputery w KRL-D nie działają na Windows czy systemach Apple, ale na Red Star (Pulgŭnbyŏl). Ten oparty na UNIX, system operacyjny został opracowany w tamtejszym Krajowym Centrum Komputerowym i zawiera zmodyfikowaną przeglądarkę opartą na Firefoksie, która umożliwia dostęp do państwowej sieci, edytor tekstu, a nawet gry. Red Star ma też takie funkcje, jak system znakowania wodnego, który oznacza wszystkie pliki unikalnym numerem seryjnym instalacji, aby można je było śledzić, jak również dostęp backdoor dla koreańskich służb specjalnych.

Trochę podobnie pomyślany jest system Sabily, znany również jako "Ubuntu Muslim Edition". Sabily to niestandardowa dystrybucja Linuxa wprowadzona w 2007 roku po to, by służyć muzułmańskim użytkownikom. Poza standardowymi funkcjami, które dostarczał system operacyjny, Sabily zawierała obsługę języka arabskiego bez dodatkowego dostosowywania. System operacyjny szczycił się również szeregiem unikalnych programów, np. ikoną uruchomiającą muzułmańskie wezwanie do modlitwy kilka razy dziennie albo programem Zakat Calc pomagającym użytkownikowi określić różne kwoty obowiązkowej jałmużny. Projekt Sabily został przerwany w 2011 roku, ale jest dostępny w ArchiveOS.

Powstały też kompletne dziwactwa, takie jak Suicide Linux, który po wpisaniu komendy nierozpoznawanej przez standardowy Linux, formatuje dysk twardy, jak należy rozumieć "za karę". Albo PonyOS, czyli hobbystyczny system zbudowany od podstaw przez i dla fanów My Little Pony na bazie mało znanego innego systemu, Toaru. Oprócz tego, że interfejs jest pełen słodkich kucyków, PonyOS oferuje jedną interesującą funkcję - obracanie okien interfejsu GUI, oprócz tradycyjnego zmniejszania ich i przesuwania.

OS świata cyfrowo-realnego

Dzisiejsze czasy to już nie tylko zwykłe komputery, ale także rozwiązania sztucznej inteligencji. I dla niej szykowane są systemy operacyjne. Amerykańska firma Veritone poinformowała w kwietniu 2020 r., że udało się jej opracować pierwszy na świecie system operacyjny sztucznej inteligencji. Jej produkt, nazwany "aiWARE", zamiast programów uruchamia algorytmy AI. Domyślnie aiWARE zawiera kilka silników sztucznej inteligencji, dla mowy, tekstu, głosu, fotografii, biometrii, analizy danych, transformacji danych i innych. Czyli np. wbudowana jest już funkcja np. asystenta głosowego, w tradycyjnych urządzeniach udostępniana w odrębnej aplikacji.

Ponieważ rozwiązania sztucznej inteligencji, rozpoznawania mowy czy obrazu, asystenci wirtualni i techniki tzw. naturalnego interfejsu maszyn zaczynają tworzyć w dzisiejszych czasach nowe środowisko, w którym porusza się, żyje, pracuje, kupuje, bawi się i robi wiele innych rzeczy współczesny człowiek, pojęcie "systemu operacyjnego" ewoluuje i niepostrzeżenie przenosi się ze świata wyłącznie komputerów i innych komputeropodobnych urządzeń do naszego środowiska, otoczenia i świata, w którym na co dzień żyjemy.

Czy przyszłością jest "system operacyjny świata", czyli takie rozwiązania, które koordynują coś więcej niż tylko pracę software’u i hardware’u? Czy wkrótce nowe systemy operacyjne będą dbać o współpracę i harmonijne płynne działanie elementów świata wirtualnego, maszynowego z rzeczywistym? Taki system przydzielałby już nie tylko zasoby obliczeniowe procesora, ale również dostępy do naszej percepcji, uwagi i zdolności poznawczych, czyli do naszego mózgu.

Przegląd różnych typów systemów operacyjnych

System operacyjny czasu rzeczywistego (ang. real-time operating system, RTOS) - ma spełnić wymagania narzucone na czas wykonywania żądanych operacji. Systemy takie stosuje się jako elementy komputerowych systemów sterowania pracujących w reżimie czasu rzeczywistego. Ze względu na to kryterium systemy operacyjne czasu rzeczywistego dzielą się na dwa rodzaje:

  • twarde, czyli takie, dla których znany jest najgorszy (najdłuższy) czas odpowiedzi, oraz wiadomo jest, że nie zostanie on przekroczony;
  • miękkie, czyli takie, które starają się odpowiedzieć najszybciej jak to możliwe, ale nie wiadomo jest, jaki może być dłuższy czas odpowiedzi.

W systemie operacyjnym czasu rzeczywistego trzeba określić, któremu z procesów należy przydzielić procesor oraz na jak długi czas, aby wszystkie wykonywane procesy spełniały zdefiniowane dla nich ograniczenia czasowe. Pojawienie się systemów operacyjnych tego typu wiąże się z m.in. zapotrzebowaniem techniki wojskowej na precyzyjne w czasie sterowanie rakietami. Obecnie systemy operacyjne tego typu są wykorzystywane powszechnie w przemyśle cywilnym, sterują również urządzeniami takimi jak na przykład: centrale telefoniczne, marsjańskie lądowniki NASA oraz samochodowy ABS. Znane przykłady to: Windows CE, OS-9, Symbian i LynxOS.

Pod względem sposobu komunikacji z użytkownikiem rozróżniamy:

  • Systemy tekstowe - komunikujące się za pomocą komend wydawanych z linii poleceń lub inaczej wiersza poleceń (np. system UNIX, MS-DOS).
  • Systemy graficzne - komunikujące się za pomocą graficznych okienek i symboli (GUI). Obsługa komputera polega na manipulowaniu za pomocą kursora myszy (np. rodzina systemów MS Windows, Mac OS).

Pod względem architektury systemy operacyjne dzielimy na:

  • Systemy jednozadaniowe. To systemy monolityczne o najprostszej strukturze. System może jednocześnie wykonywać tylko jedno zadanie. W danej chwili może działać tylko jeden program (np. system MS-DOS).
  • Systemy wielozadaniowe (multitasking). To systemy warstwowe o hierarchicznej strukturze poleceń systemowych. System może jednocześnie wykonywać wiele zadań (np. nadzorować proces drukowania w czasie edycji tekstu w programie). W danej chwili może działać kilka programów (np. systemy MS Windows 9x/Me, NT/2000/XP, UNIX, Linux, Mac OS X, OS/2 Warp). 
  • Systemy jednodostępne. To systemy obsługujące tylko jednego użytkownika na raz (np. systemy MS-DOS, Windows 9x/Me). 
  • Systemy wielodostępne (multiuser). To systemy obsługujące wielu użytkowników na raz. Procesor wykonuje na przemian wiele zadań, przy czym przełączenia występują tak często, że użytkownicy mogą współdziałać z programem podczas jego wykonania (np. systemy MS Windows NT/2000/XP, UNIX, Linux, Mac OS X, OS/2 Warp). 
  • Systemy typu klient-serwer. To systemy o bardzo rozbudowanej strukturze, pełniące nadzór nad podrzędnymi systemami zainstalowanymi w poszczególnych komputerach sieci. Aplikacje postrzegane są przez system operacyjny jako "klienci" dostarczających im swoich usług serwerów. "Klienci" komunikują się z serwerami poprzez jądro systemu, a każdy serwer pracuje we własnej, wydzielonej i chronionej przestrzeni adresowej pamięci operacyjnej, dobrze odizolowany od innych procesów.

System wbudowany (ang. embedded system) - system komputerowy specjalnego przeznaczenia, który staje się integralną częścią obsługiwanego przez niego sprzętu komputerowego (hardware). Musi spełniać określone wymagania ściśle zdefiniowane pod kątem zadań, które ma wykonywać. Nie można więc nim nazywać typowego wielofunkcyjnego komputera osobistego. Każdy system wbudowany oparty jest na mikroprocesorze (lub mikrokontrolerze) zaprogramowanym do wykonywania ograniczonej liczby zadań lub nawet wyłącznie do jednego zadania. Za pierwszy komputer wbudowany jest uznawany komputer sterujący amerykańskim statkiem kosmicznym Apollo. Natomiast pierwszy komputer wbudowany produkowany masowo służył do sterowania rakietą LGM-30 Minuteman I. Windows CE, FreeBSD i Minix 3 to kilka przykładów
wbudowanych systemów operacyjnych. Użycie Linuxa w systemach wbudowanych jest określane jako Embedded Linux. 

Mobilny system operacyjny (lub mobilny OS) - system operacyjny dla smartfonów, tabletów, PDA lub innych urządzeń mobilnych. Mobilne systemy operacyjne łączą w sobie funkcje komputera z innymi funkcjami przydatnymi dla telefonu komórkowego lub innych mobilnych urządzeń; zazwyczaj są to: ekran dotykowy, telefon, Bluetooth, Wi-Fi, nawigacja, aparat, kamera, rozpoznawanie mowy, dyktafon, odtwarzacz muzyki, NFC i podczerwień. Urządzenia mobilne, mające możliwość komunikacji (np. smartfony) zawierają dwa mobilne systemy operacyjne - główny program widoczny dla użytkownika uzupełniany systemem czasu rzeczywistego niskiego poziomu, który obsługuje radio i inne podzespoły. Znane przykłady to: Blackberry OS, Google Android i Apple iOS.

Mirosław Usidus