Raz na jakiś czas wpadam na pomysł jak może wyglądać przyszłość, ale jako, że nigdy tego nie zapisuję i rzadko o tym komukolwiek mówię, potem trudno mi jest kogoś przekonać, że „ja to wymyśliłem” 🙂 Pewnie mi nie uwierzycie, że jeszcze w czasach pierwszych telefonów komórkowych przewidziałem, że telefon będzie miał w sobie aparat fotograficzny. Choć w swoich wyobrażeniach widziałem jak ludzie przyszłości przykładają do ucha kompaktowe cyfrówki, nie wiem czemu tak widziałem, że będzie to wyglądało 🙂

Oczywiście nie każda moja przepowiednia się sprawdza i to właśnie z lęku, że się pomylę nikomu o tym nie mówiłem. Ale postanawiam to teraz zmienić. Bo kilka dni temu uderzyła mnie wizja telefonów przyszłości i nie mogę o tym przestać myśleć. Wydaje mi się to rewelacyjnym i rewolucyjnym pomysłem. I im dłużej myślę, tym bardziej jestem pewien, że takie coś któregoś dnia ujrzymy na rynku, choć nie wiem dokładnie kiedy.

Czy wiecie w jaki sposób uruchamia się obecnie wymagające dużych zasobów gry komputerowe na telefonach czy tabletach, które tych zasobów nie mają? Nazywa się to cloud gaming  i coraz pojawia się już tu i tam. Jeśli się nie mylę NVIDIA ostatnio zrobiła swoją jakby konsolę do gier działającą na tej zasadzie – ma dość słabe bebechy, ale można na niej grać w zaawansowane gry 3D.

Zasada jest taka: całość renderowania gry odbywa się w chmurze, z dala od  twojego komputera czy telefonu i odsyłana jest przez sieć klatka po klatce na twoje urządzenie. Ty klikasz przycisk, informacja o kliknięciu wysyłana jest na klaster obliczeniowy, który w ułamku sekundy oblicza rozprysk krwi twojego przeciwnika, zmianę kąta padania cienia przechylającej się postaci i wszystko inne co normalnie robi karta graficzna i kolejny ułamek sekundy taki wyrenderowany obraz wraca do ciebie przez sieć na telefon. Po kolejnym ułamku sekundy kolejny render z jeszcze większym rozpryskiem krwi i jeszcze bardziej pochyloną postacią jest wykonany i wysłany do ciebie. Twój telefon się nie nagrzewa, bo nie ma od czego – tak naprawdę jest małym telewizorkiem na którym widzisz film, tyle, że interaktywny, sterowany twoimi kliknięciami.

Imponujące, prawda? A to się już dzieje naprawdę i dziać się będzie coraz częściej.

I pomyślałem: skoro można w ten sposób na farmie super wydajnych serwerów renderować i wysyłać obraz gier, dlaczego nie można by w ten sam sposób wysyłać całego systemu operacyjnego?

Na twoim telefonie nic by nie było zainstalowane. Jedynie prosty system do komunikacji z siecią, obsługi klawiszy i nacisku, aparatu i mikrofonu. Mały procesor do wyświetlania odebranej z sieci grafiki i odgrywania dźwięków – głosu rozmówcy czy odgłosu zdychającej świni w angry birds 😉

Prawdopodobnie taki telefon nie musiałby być telefonem i nie miałby żadnego modułu do komunikacji z siecią komórkową: osoba dzwoniąca dzwoniła by bezpośrednio na serwer, skąd dźwięk byłby przekazywany przez wifi do twojego telefonu.

Wszystko właśnie działoby się na odległym serwerze: gdzieś w jakimś kontenerze miałbyś swój system operacyjny, swoje apki, swoje pliki, zdjęcia, dokumenty… Klaster by czekał na informacje o twoich „kliknięciach” i odsyłał na nowo wyrenderowany obraz jak to powinno wyglądać na twoim telefonie.

Ta rewolucja miałaby spore zalety:

Wady? Oczywiście, ale wydaje mi się, że istnieją one tylko na dzień dzisiejszy.

Wada, o której pewnie pomyśleliście, a która nie istnieje: opóźnienie. Wysłanie informacji o wciśniętym przycisku, renderowanie efektu na odległym serwerze i odesłanie obrazu z powrotem powinno zająć zauważalną ilość czasu. Tymczasem jednak w przypadku tak renderowanych gier właściwie opóźnień nie ma: kule świszczą, gracze biegają, a wszystko działa stosunkowo płynnie.

Ja uważam, że taki „streamingowany” system operacyjny to tylko kwestia czasu. Google ma już wszystko by móc to zrobić: swoje systemy operacyjne, które cierpią na fragmentację, swoje centra danych do cloud computingu i marketingową potrzebę wiedzy wszystkiego o nas. Microsoft też ma swoją chmurę i swój system i ma wielki strach przed marginalizacją w przyszłości. Może ktoś inny?

A jakie jest wasze zdanie?