„Windowsowe x86” nie dla ARM – no i dobrze

Na wielu stronach branżowych z dziedziny IT użytkownicy, jak i sami autorzy, na wieść (a w zasadzie potwierdzenie wcześniejszych domysłów), że Windows 8 instalowany na platformie ARM nie będzie obsługiwał starych programów pisanych na platformę x86 (więcej tutaj), rozpoczęli dziś lament. To może ciut za mocne słowa, ale sporo jest komentarzy osądzających Microsoft od czci i wiary, i z miejsca skreślających wszystko. System, Merto UI, tablety, komputery – wszystko. Trochę, w zgodzie z zasadą „wszystko albo nic”. Nie ukrywam, że w pierwszej chwili i z mojej piersi wydarł się leciutki jęk zawodu ale po chwili namysłu stwierdziłem, że w zasadzie nie za bardzo jest z czego robić problem – a wręcz przeciwnie, to po pierwsze logiczna i oczekiwana informacja, a po drugie – wręcz dobra wiadomość dla użytkowników. A oto dlaczego.

Zacznijmy od odrobiny historii. Jak dobrze wiecie, Apple iPad nie jest pierwszym tabletem, a Windows 8 pierwszą próbą wejścia Microsoftu na rynek tabletów czy też w ogóle przekonania ludzi, że tego typu sprzęt jest im potrzebny. Musimy sobie także uświadomić, że wbrew pozorom i całemu naszemu technicznemu zaawansowaniu niestety to, co faktycznie człowiek jest wstanie wyprodukować (w rozsądnej cenie), nie jest wszystkomogące. Póki co jeszcze długo będziemy musieli się godzić na kompromisy, bo – choć postęp jest olbrzymi – nadal żyjemy tu i dziś, a nie w przyszłości. Piszące te słowa mam na myśli fakt, że między platformą ARM i x86 (abstrahując od różnej architektury, itd.) są dość zasadnicze różnice definiujące to, jak dane urządzenie pracuje i co może. Innymi słowy: jeszcze długo ARM nie będzie tak wydajny jak platforma x86 czyli chipy typu Kal-El, Snapdragon, Exynos czy Omap. Te, przy całym swoim zaawansowaniu, nie mogą się równać z połączeniem nowoczesnej płyty głównej, na której zainstalowana jest kilkurdzeniowa jednostka np. Intel i7 czy AMD Boulldozer w połączeniu z wysokowydajną pamięcią DDR i mocarną kartą graficzną. Nie ma takiej możliwości, aby jedna malutka kość, jaką jest SoC ARM, zastąpiła te wszystkie wyspecjalizowane elementy. Musimy wszyscy pamiętać, że i x86, jak i platforma ARM, powstały w różnym czasie i w wyniku różnych potrzeb.

Gdy tworzono x86 nikt nawet nie śnił o przenośnych komputerach i mobilnej pracy, internecie, streamingu video i wielu innych rzeczach, które dziś uważamy za oczywiste, dane. Podobnie z ARM. Gdy tworzono jej założenia nikt nie sądził, że przyjdzie jej kiedyś dokonywać cudów tak zaawansowanych obliczeń i że użytkownicy będą wymagać wydajności. ARM w założeniu miało wykonywać proste rzeczy, obsługiwać dość wyspecjalizowane urządzenia a przede wszystkim pobierać mało prądu. ARM wykonał olbrzymi skok wydajnościowy. Przypomnijcie sobie co mogły urządzenia typu PDA sprzed 6 – 7 lat. Nikt w branży nie myślał wtedy o tym, żeby próbować gonić „pecety”. Z kolei od x86 użytkownicy zawsze wymagali wydajności. Coraz mocniejsze procesory, karty graficzne, więcej pamięci i prądu. Zasilacz 1000 w domowym komputerze nie jest niczym niezwykłym, prawda?

Tu dochodzimy do pierwszej konkluzji. Skoro nie próbujemy pracować z dość zaawansowanymi programami na netbookach, bo te pozostawiają wiele do życzenia pod względem wydajności, dlaczego nagle oczekujemy, że te same programy uruchomione na tabletach z ARM będą sprawnie działać? Dlaczego oczekujemy, że program, który wymaga w naszym PC wydajnych części i zasilacza 500W nagle z tego wszystkiego zrezygnuje tylko dlatego, że jest uruchomiony w nowym systemie operacyjnym?

Niestety, choć i my, i Microsoft (o producentach hardware nie wspominając) chcielibyśmy, żeby wszystko działało na wszystkim, szybko i długo – cudów nie ma :-(. Reasumując – programy pisane wcześniej na platformę x86 miały działać szybko i sprawnie oraz były tworzone z myślą o znacznie potężniejszych zasobach sprzętowych niż to, co oferuje (dziś) ARM, zatem przenoszenie ich w niezmienionej formie to pomyłka.

Już wyżej wspominałem, że Windows 8 to nie jest pierwsza próba Microsoftu przekonania użytkowników do urządzeń z dotykowym ekranem. Jak wszyscy dobrze wiemy wszystkie dotychczasowe zakończyły się sromotną klęską. Czy naprawdę myślicie, że Microsoft niczego się nie nauczył? To, że dotychczas tablety z Windows sprzedają się mniej więcej tak samo dobrze, jak piasek na pustyni to fakt, że obsługa samego systemu jak i oprogramowania, które w nim pracuje, to istna katorga. Kto z Was nie miał okazji spróbować – polecam wycieczkę np. do MediaMarkt i „palpacyjny” test Dell’a Inspiron Duo – hybrydy tabletu i netbooka z Windowsem 7 na pokładzie.

Dlaczego niektórzy uważają, że stary program (zasobo- i prądożerny) uruchomiony w nowoczesnym środowisku będzie można wygodnie obsługiwać? W momencie startu znikną wszystkie przyjazne naszym palcom ikonki, przyciski, pola, itd., w zamian znów pojawi się interfejs (programu, nie systemu), który wymaga precyzyjnego sterowania za pomocą myszki.

Zatem konkluzja druga. Oprogramowanie projektowane z myślą o starszych wersjach Windows i obsłudze myszką będzie koszmarne w obsłudze na małym ekranie tabletu (nie licząc kwestii estetycznej).

Zapewne teraz odezwą się głosy o sztandarowych i najbardziej popularnych produktach kojarzonych z Windows czyli (żeby daleko nie szukać) np. Office. Zarówno propozycje pakietów biurowych tworzone z myślą o platformie iOS, jak i Android, pozostawiają sporo do życzenia pod względem funkcjonalności i zgodności choćby z formatem .doc czy .docx. Już widzę Wasze zawiedzione miny i opinie typu: „No… to jak nie będzie Worda to po co mam czekać”, itp.

To, że stara wersja oprogramowania nie będzie działać na tablecie (z ARM pod maską), to nie kłopot, bo widzę dwa rozwiązania. Po pierwsze, tak znane produkty, jak pakiet Office i podobne (które nie wymagają do działania mocarnych zasobów sprzętowych), na pewno zostaną napisane od nowa przez swoich developerów z myślą o ARM i interfejsie Metro. Osobiście spodziewam się, że kupując np. pakiet Office (przez sieć) będziemy go mogli zainstalować i na biurkowym „potworze” z Intel/AMD pod maską, i na tablecie bazującym na SoC TI czy Qualcomm. W zależności od tego, na jakiej platformie sprzętowej będzie instalowany i w jakim środowisku operacyjnym przyjdzie mu działać, będzie się różnić wyglądem interfejsu i być może (choć to mniej prawdopodobne) dostępnymi funkcjami (typu wywołanie dodatkowego menu prawym przyciskiem myszy). Zdanie w nawiasie to zresztą kolejny argument, który tłumaczy dlaczego nie ma sensu importować starego oprogramowania do nowego systemu i zupełnie nowego typu urządzenia. Owszem, myszkę do tabletu można podłączyć, ale chyba nie o to chodzi.

Jeśli zaś należymy do tych użytkowników, który po prostu muszą korzystać z wielu „starych” programów na Windowsa (np. z racji wykonywanej pracy), a jednocześnie chcemy wreszcie móc robić to przyjemniej i wygodniej – nic prostszego niż kupić tablet oparty o platformę x86.

Metro UI będzie dostępne tak samo jak zgodność sprzętowo-programowa wstecz. Nie spodziewam się znaczących różnić w cenie pomiędzy obiema platformami, bo AMD i Intel także będą chciały trafić ze swoimi urządzeniami do zwykłych użytkowników (nie tylko do odbiorcy korporacyjnego).

Czy decyzja o zakupie tabletu opartego o architekturę x86 będzie się wiązać z jakimiś kompromisami? W obecnej chwili ciężko jest jednoznacznie stwierdzić, że tak, z jakimi i z jak dużymi. Zapewne pierwsza generacja tabletów x86 nie będzie się mogła równać z ARM pod względem czasu pracy na baterii (aczkolwiek spodziewam się poprawy obecnych wyników). Z drugiej strony użytkownik powinien w zamian otrzymać wydajniejsze i bardziej wszechstronne urządzenie (przynajmniej biorąc pod uwagę zgodność ze starszym oprogramowaniem).

Na koniec jeszcze jedna pozytywna informacja. Choć Microsoft mówi, że stare oprogramowanie x86 na ARM działać nie będzie, to w drugą stronę nie ma już żadnych ograniczeń. Czyli nasz nowy Office, czy też inne drobne programy będą swobodnie działać i na tablecie i na biurkowym desktopie, do którego będziemy czasem siadać w domu czy w pracy. Co więcej, część z nich (na 3Dstudio bym nie liczył) będzie też działać na telefonie z systemem Windows. Czy to nie fajna wizja?

W tym całym szaleństwie widzę tylko jeden potencjalny minus. Wspomniane na wstępie ryzyko fragmentacji środowiska.

Jak „wymóc” na developerach oprogramowania tworzenie wersji zarówno zgodnej z x86, jak i z ARM. Jak sprawić aby w sklepach ludzie nie dostali oczopląsu (już teraz bywało z tym różnie Starter, Premium, Enterprise, Professional, Ultimate, 32 bit, 64 bit… Mam nadzieję, że Microsoft zrezygnuje z takiego podejścia do sprawy. Tym bardziej, że patrząc na ostatnią odsłonę systemu Mac OS (cena i dystrybucja) u konkurencji sprawy też się zmieniają. Jestem jednak dobrej myśli, bo przecież tablety z ceną od $1000 w górę Microsoft już przerabiał i to w czasach, gdy nie było alternatywy pod postacią iOS czy „darmowego” Androida.

A teraz już prawdziwie kończąc. Na pewno warto czekać, na pewno będzie to fajny i bardzo wszechstronny system, tylko jaki tablet kupić… z procesorem Intela/AMD czy bazujący na ARM?