System operacyjny jest podstawą technologii komputerowej. Znajduje się pomiędzy Twoim sprzętem fizycznym a oprogramowaniem, którego używasz na co dzień. Niezależnie od tego, czy korzystasz z systemu Windows, Linux czy macOS, system operacyjny zarządza pamięcią, procesami i sterownikami urządzeń. Jest to niezbędna warstwa, która sprawia, że ​​komputer w ogóle działa.

Ta ścisła definicja jest powodem, dla którego wielu purystów krzywi się na widok terminu Webowy system operacyjny.

Prawdziwy system operacyjny komunikuje się bezpośrednio z chipami krzemowymi. System operacyjny sieciowy – nie. Jest to interfejs użytkownika (UI ), który działa wewnątrz przeglądarki. Oferuje metaforę pulpitu — ikony, okna, paski zadań — ale nie ma bezpośredniego dostępu do dysku twardego ani procesora, jak ma to miejsce w przypadku tradycyjnego oprogramowania. Nadal potrzebujesz prawdziwego systemu operacyjnego, aby hostować przeglądarkę. Web OS to po prostu złożona powłoka.

Pomimo zastrzeżeń terminologicznych koncepcja zyskała popularność. Obecnie istnieje wiele takich platform. Część z nich to dopracowane produkty dużych zespołów. Pozostałe to amatorskie projekty jednego dewelopera. Ceny wahają się od bezpłatnych do premium. Funkcjonalność jest bardzo zróżnicowana.

Dlaczego panuje zamieszanie? Terminologia jest myląca. Niektórzy piszą to jednym słowem: WebOS. To powoduje problemy. W 1996 roku Uniwersytet Kalifornijski w Berkeley uruchomił projekt o nazwie WebOS. Skupiono się na zastosowaniach szerokopasmowych. Nie ma to nic wspólnego z koncepcją pulpitu opartego na przeglądarce. Aby uniknąć tego konfliktu, niektórzy wolą terminy takie jak Web Desktop lub Webtop. Terminy te uznają, że doświadczenie użytkownika symuluje tradycyjny pulpit, nie twierdząc, że jest to architektura systemu prawdziwego systemu operacyjnego.

Co więc się stanie, gdy zalogujesz się do jednego z tych systemów?

Iluzja lokalnej kontroli

Główną zaletą internetowego systemu operacyjnego jest prostota i dostępność. Nie musisz instalować ciężkich aplikacji. Nie masz kontroli nad aktualizacjami ani sterownikami. Otwierasz przeglądarkę, logujesz się i ruszasz do pracy.

Interfejs wygląda znajomo. To jest zamierzone. Celem jest obniżenie bariery wejścia. Użytkownicy oczekują menu Start, paska zadań i klikalnych ikon. Platformy Web OS właśnie to zapewniają. Replikują pamięć mięśniową systemu Windows lub Mac OS.

Za kulisami ciężka praca wykonywana jest na zdalnych serwerach. Twoje pliki są przechowywane w chmurze. Twoje aplikacje działają w środowisku zwirtualizowanym. Twoja przeglądarka to tylko okno. Taka architektura umożliwia przełączanie pomiędzy urządzeniami bez utraty postępu. Tablet, laptop lub kiosk publiczny może wyświetlać ten sam pulpit. Stan jest przechowywany na serwerze, a nie na komputerze lokalnym.

Jest to ważne dla mobilności. Jest to ważne ze względu na bezpieczeństwo. Jest to ważne dla każdego, kto jest zmęczony zarządzaniem zgodnością oprogramowania.

Ale jest niuans. Opóźnienie.

Jeśli Twoje połączenie internetowe jest niestabilne, pulpit zawiesza się. Czas reakcji, jakiego oczekujesz od lokalnego systemu operacyjnego, zależy całkowicie od przepustowości i obciążenia serwera. Prawdziwy system operacyjny wydaje się natychmiastowy, ponieważ sprzęt jest w pobliżu. Web OS wydaje się natychmiastowy tylko wtedy, gdy sieć jest niezawodna.

Którego systemu operacyjnego internetowego powinienem używać?

Rynek jest rozdrobniony. Nie ma jednego dominującego gracza, jak miało to miejsce w przypadku systemu Windows w latach 90. Stwarza to mylący obraz dla nowych użytkowników. Jak wybrać?

Po pierwsze, zwróć uwagę na stabilność. Niektóre platformy są nadal w fazie testów beta. Mogą stracić dane lub zmienić interfejs z dnia na dzień. Dojrzałe projekty mają zwykle lepszą dokumentację i bardziej spójne działanie.

Sprawdź zestaw funkcji. Potrzebujesz pakietów biurowych? Narzędzia do współpracy? Specyficzne środowiska dla programistów? Niektóre platformy Web OS oferują zintegrowane pakiety. Inne to po prostu minimalistyczne interfejsy, które wymagają podłączenia aplikacji internetowych innych firm. Te drugie są bardziej elastyczne, ale mniej całościowe.

Rozważ

Internetowe systemy operacyjne nie są samodzielnymi platformami, które zastępują system Windows lub macOS. Zamiast tego są to interfejsy łączące Cię z rozproszonymi systemami obliczeniowymi. Pomyśl o tym jak o moście. Jako użytkownik łączysz się przez Internet z siecią serwerów aplikacji i baz danych dostawcy.

Dostęp jest zapewniony na dwa sposoby. Niektóre systemy działają całkowicie w obrębie przeglądarki internetowej. Inne wymagają pobrania specjalnego programu klienckiego dostosowanego do Twojego urządzenia. Rezultat jest taki sam: uruchamiasz oprogramowanie przechowywane w Internecie, a nie na lokalnym dysku twardym.

Jakie usługi faktycznie świadczą?

Obietnica jest prosta. Otrzymujesz dostęp do niemal każdej aplikacji komputerowej. Lista jest długa:

  • Kalendarze
  • Klienci poczty
  • Narzędzia do zarządzania plikami
  • Gry
  • Posłańcy
  • Edytory zdjęć, wideo i audio
  • Czytniki RSS
  • Pakiety do pracy z arkuszami kalkulacyjnymi i dokumentami tekstowymi

W tradycyjny sposób instalujesz te aplikacje. Znajdują się one na dysku twardym procesora. Natywny system operacyjny Twojego komputera przetwarza żądania. Web OS zmienia architekturę. Aplikacje znajdują się na serwerach internetowych. Po zapisaniu plik jest wysyłany do bazy danych połączonej z Internetem. Możesz zapisywać pliki lokalnie, ale domyślnym zachowaniem jest korzystanie z magazynu w chmurze.

To oddzielenie jest kluczową cechą. Ponieważ oprogramowanie nie jest powiązane ze sprzętem, możesz rozpocząć pracę nad dokumentem na jednym urządzeniu i otworzyć go na innym. Główną zaletą jest dostępność. Twoje dane nie są powiązane z jednym urządzeniem.

Portale a internetowe systemy operacyjne

Łatwo pomylić system operacyjny sieciowy z portalem. Wyglądają podobnie, ale działają inaczej.

Portal, podobnie jak nieistniejący już iGoogle, jest niestandardową stroną główną. Gromadzi kanały informacyjne, e-maile i widżety. Zapewnia dostęp do wielu źródeł danych z jednej strony. Ale nie próbuje emulować środowiska graficznego.

Internetowy system operacyjny próbuje emulować pulpit. Zawiera okna, paski zadań i ikony aplikacji. Zarządza doświadczeniem użytkownika, które sprawia wrażenie, jakby był na komputerze lokalnym, chociaż przetwarzanie odbywa się zdalnie. Portale tego nie robią. Są bramami. Platformy Web OS to środowiska.

Technologie stojące za interfejsem

Programiści używają różnych metod tworzenia takich interfejsów. Nie ma jednego standardu. Dwa dominujące podejścia opierają się na technologiach Flash lub AJAX.

Systemy oparte na technologii Flash

Flash wykorzystuje grafikę wektorową. Zamiast przechowywać pojedyncze piksele, rejestruje kształty i linie. Zapewnia to szybsze ładowanie i mniejsze rozmiary plików. Pliki Flash są przesyłane strumieniowo przez Internet. Nie musisz czekać, aż zostanie w pełni pobrany. Klasycznym przykładem jest odtwarzacz wideo. Przeglądanie można rozpocząć przed całkowitym zapisaniem pliku.

Flash jest ulubionym narzędziem twórców systemów operacyjnych dla sieci Web ze względu na jego zasięg. W szczytowym okresie ponad 98 procent komputerów podłączonych do Internetu miało zainstalowany Flash Player. Programiści mogą tworzyć złożone interfejsy, wiedząc, że większość użytkowników będzie w stanie je uruchomić bez dodatkowych pobrań.

Systemy oparte na technologii AJAX

AJAX oznacza Asynchroniczny JavaScript i XML. Jest to podejście oparte na przeglądarce, które opiera się na czterech podstawowych technologiach:

  • HTML : Tagi znaczników tworzące strukturę strony.
  • CSS : Kaskadowe arkusze stylów kontrolujące wygląd (czcionki, kolory, układ).
  • JavaScript : język programowania umożliwiający przeglądarce wysyłanie i odbieranie danych z serwerów bez konieczności ponownego ładowania strony.
  • XML : Język znaczników opisujący strukturę danych.

Ten stos umożliwia dynamiczną aktualizację. Po kliknięciu przycisku w systemie operacyjnym internetowym opartym na technologii AJAX strona nie jest odświeżana całkowicie. JavaScript komunikuje się z serwerem w tle, aktualizuje odpowiednią sekcję i wyświetla nowe informacje. Czuje się bardziej responsywny. Wygląda jak natywna aplikacja.

Obie metody dążą do tego samego rezultatu: zapewnienia przez Internet doświadczenia podobnego do komputera stacjonarnego. Wybór między nimi często sprowadza się do wydajności, kompatybilności i stopnia kontroli, jaką programista chce mieć nad interfejsem.

Przypomnij sobie, kiedy ostatni raz kliknąłeś link i zobaczyłeś, jak obraca się wskaźnik ładowania. Czekałeś. Strona się zawiesiła. Świat się zatrzymał. To jest stary sposób. Jest to sposób na całkowite przeładowanie strony.

AJAX zmienia rytm.

Słowo „asynchroniczny” to po prostu techniczny żargon oznaczający „nie wszystko na raz”. Zamiast wymagać nowej strony HTML za każdym razem, gdy chcesz zobaczyć zmiany, przeglądarka żąda tylko tych danych, których potrzebuje. Tutaj kilka bajtów. Tam jest wiersz tekstu. Serwer wysyła brakujące części w małych, łatwo przyswajalnych porcjach. Reszta ekranu pozostaje na swoim miejscu. To uczucie natychmiastowe. To sprawia wrażenie rodzimego.

To nie magia. To jest wydajność.

Wysyłanie całej strony internetowej do przeglądarki za każdym razem, gdy coś się zmieni, marnuje przepustowość. Znacząco spowalniasz doświadczenie użytkownika. Aplikacje AJAX przesyłają dane między serwerami i przeglądarkami w małych porcjach informacji, w zależności od potrzeb. Wynik? Prędkość. Gładkość.

Moc pulpitu w przeglądarce

Celem zawsze było zatarcie granicy pomiędzy aplikacją internetową a programem komputerowym. Posiadając wystarczające umiejętności i wiedzę, programista może stworzyć aplikację AJAX o tych samych funkcjach, co aplikacja desktopowa. Otrzymujesz funkcję „przeciągnij i upuść”. Otrzymujesz aktualizacje w czasie rzeczywistym. Otrzymujesz interfejsy, które reagują na kliknięcie, zanim zdążysz podnieść palec.

Ale oto problem, który nie daje spać menedżerom IT: interoperacyjność.

W przeciwieństwie do Flasha, który do prawidłowego działania często wymagał specjalnych wtyczek lub określonych wersji przeglądarek, AJAX opiera się na ustalonych standardach sieciowych. Nie jest to nowy język programowania. To sposób na wykorzystanie narzędzi już obecnych w Twojej przeglądarce do tworzenia nowych aplikacji.

Większość komputerów może uruchamiać aplikacje AJAX, ponieważ przeglądarka wykonuje całą pracę. Dopóki programista aplikacji umieści w kodzie aplikacji prawidłowe informacje, powinna ona działać poprawnie w każdej z głównych przeglądarek internetowych. Chrom. Firefoksa. Safari. Krawędź. Kod można dostosować.

Spójrz na Gmaila. Spójrz na Kalendarz Google. To nie są strony statyczne. Są to dynamiczne silniki zbudowane na tej architekturze. Aktualizują Twoją pocztę bez ponownego uruchamiania. Zapisują wersję roboczą podczas pisania. Działają, ponieważ przeglądarka obsługuje komunikację asynchroniczną w tle.

Dlaczego ktoś miałby używać internetowego systemu operacyjnego?

Wyszliśmy poza proste dni „Web 1.0”, polegające tylko na czytaniu tekstu. Tworzymy całe ekosystemy wewnątrz karty przeglądarki. Ale po co ryzykować? Po co uruchamiać system operacyjny w Internecie zamiast na dysku twardym?

Odpowiedź leży w dostępności i obsłudze. Jeśli system operacyjny znajduje się w chmurze, nigdy nie trzeba aktualizować systemu bazowego. Nigdy nie musisz się martwić, jeśli Twój laptop jest za stary, aby uruchomić najnowszą wersję systemu Windows lub macOS. Jeśli ma przeglądarkę, ma komputer.

Zanim jednak zagłębimy się w architekturę internetowych systemów operacyjnych, rozważmy kompromis. Powierzasz zdalnemu serwerowi swoje lokalne pliki. Zamieniasz pełną kontrolę na wygodę. Czy ta wymiana jest uczciwa?

Niestabilność połączenia

Piękno AJAX-a polega na jego niewidzialności. Nie widzisz, jak dane się poruszają. Widzisz tylko wynik. Ale ten ruch danych wymaga ratunku. Połączenia internetowe.

To prowadzi nas do następnej przeszkody. Czy jeśli sieć ulegnie awarii, aplikacja umrze? A może dostosowuje się? To jest pytanie, które zdefiniuje następną generację sieci.

Przejście na zdalne stacje robocze

Uruchamianie aplikacji ze zdalnego serwera powinno przypominać korzystanie ze zwykłego komputera stacjonarnego. Celem jest stworzenie znajomości. Jeśli interfejs naśladuje znany Ci system operacyjny, wdrożenie jest natychmiastowe. Po kliknięciu ikony komputer wysyła żądanie do węzła sterującego. Ten centralny serwer pełni rolę dyspozytora: kieruje połączenie do określonego serwera aplikacji lub bazy danych, w której znajduje się potrzebne narzędzie. Zasadniczo przenosisz pamięć danych i moc obliczeniową do sieci zdalnej.

To główny argument wielu użytkowników. Przestajesz martwić się o aktualizację sprzętu co kilka lat. Jeśli na Twoim obecnym urządzeniu można uruchomić przeglądarkę lub oprogramowanie klienckie, możesz zaczynać. Nie ma potrzeby kupowania nowego komputera, aby uruchomić najnowszą wersję pakietu biurowego. Ciężar zapewnienia funkcjonalności zostaje przeniesiony na dostawcę. Jeśli nie będzie w stanie wykonać swojej pracy, odejdziesz.

Synchronizacja danych pomiędzy platformami

Kolejną ważną korzyścią jest udostępnianie danych pomiędzy heterogenicznymi urządzeniami. Załóżmy, że masz komputer Mac i PC. Synchronizowanie plików jest zwykle trudne. Nawet jeśli używasz kompatybilnych formatów, powstają zduplikowane kopie. Edytujesz jeden plik, a drugi pozostaje nieaktualny. Internetowy system operacyjny tworzy pojedynczą zdalną kopię pliku. Możesz używać dowolnego komputera, aby uzyskać dostęp do danych, zmieniać je i zapisywać w tym jednym źródle. Działa to tylko wtedy, gdy system operacyjny sieciowy jest wieloplatformowy. Jeśli jednak obsługuje zarówno komputery Mac, jak i PC, możesz pracować nad tym samym plikiem na dowolnym urządzeniu.

Współpraca jest również uproszczona. Większość platform internetowych systemów operacyjnych umożliwia użytkownikom bezpośrednie udostępnianie plików. Każdy pracuje z wersją zapisaną w natywnej sieci systemu. Jest to ulepszenie w stosunku do starej metody wysyłania wielu wersji pocztą elektroniczną i ręcznego łączenia zmian. Jest czyściej. Jest szybciej.

Problem zaufania i zagrożeń bezpieczeństwa

Internetowe systemy operacyjne nie są jeszcze tak niezawodne, jak ich odpowiedniki na komputery stacjonarne. Oferują jednak wystarczającą funkcjonalność, aby konkurować z tradycyjnymi pakietami. Jeśli dostawcom uda się wypełnić lukę w możliwościach i rozwiązać problemy związane z bezpieczeństwem danych, możemy zaobserwować ogromną zmianę w projektowaniu infrastruktury sieciowej.

Główną przeszkodą jest zaufanie. Użytkownicy mają obowiązek przekazywać wrażliwe dane podmiotom trzecim. To krok w nieznane. Czy dostawca może chronić dane przed hakerami? Stosowanie zaawansowanych technik bezpieczeństwa leży w ich własnym interesie. W miarę rozwoju przetwarzania rozproszonego walka między hakerami a specjalistami ds. bezpieczeństwa będzie się nasilać.

Często zadawane pytania

Jakich jest pięć najpopularniejszych systemów operacyjnych?
W branży jest ogólnie pięciu głównych graczy: Apple macOS, Microsoft Windows, Google Android OS, system operacyjny Linux i Apple iOS.

Czy istnieją kompletne systemy operacyjne online?
Istnieje wiele takich systemów, ale większość z nich jest niekompletna. Oferują podstawowe funkcje, takie jak przeglądarka internetowa. Nie mają one na celu zastąpienia pełnego systemu operacyjnego.

Duch w maszynie: dlaczego system WebOS nigdy się nie pojawił

Archiwa z lat 2007 i 2008 są pokryte kurzem, ale zawierają plan ery przetwarzania w chmurze, którą obecnie uważamy za oczywistość. W tamtym czasie branża miała obsesję na punkcie pewnej, nieco iluzorycznej koncepcji: Webowego systemu operacyjnego. To nie było tylko modne hasło; była to poważna próba strukturalna przeniesienia pulpitu do przeglądarki.

Recenzja GravityZoo napisana przez Emre Sokulu oddaje esencję tej dziwnej, ale cudownej chwili. Nazwał go „WebOS Jim, ale inny niż znamy”. To sformułowanie jest ważne. Oznacza naśladownictwo. GravityZoo nie tylko wyglądało jak Windows; próbował być systemem Windows, ale przez HTTP. Był to system operacyjny, który znajdował się na zdalnym serwerze i udostępniał pulpit klientowi. Wydało mi się to znajome, bo tak musiało być. Użytkownicy niechętnie uczyli się nowej metafory. Chcieli menu Start. Chcieli pasek zadań. Chcieli uzyskać iluzję lokalnego przechowywania danych, nawet jeśli pliki były tylko fragmentami unoszącymi się gdzieś w centrum danych.

Potem pojawił się YouOS i podszedł do problemu z przeciwnej strony. W ich manifeście nie chodziło o emulację desktopu, ale o całkowite przemyślenie interfejsu. Zadali proste pytanie, które do dziś nie daje spokoju projektantom: jeśli przeglądarka jest nowym komputerem, dlaczego interfejs użytkownika musi wyglądać jak system operacyjny z okienkiem?

Krytyka Jeremy’ego Zadowny’ego „Nie ma internetowego systemu operacyjnego” rozwiała ten szum z chirurgiczną precyzją. Twierdził, że sam termin był błędem kategorii. Przeglądarka to nie system operacyjny. To jest pojemnik. Nie można zbudować systemu operacyjnego na aplikacji internetowej, ponieważ aplikacja internetowa jest* warstwą aplikacji. Nazywanie go systemem operacyjnym oznaczało błędne zrozumienie architektury. Ale tu jest problem: Zadovny miał technicznie rację, ale praktycznie się mylił.

Dlaczego definicja się nie powiodła

Nieporozumienie wynikało z fundamentalnego niezrozumienia działania systemu operacyjnego. Tradycyjnie system operacyjny zarządza sprzętem. Współpracuje z dyskiem twardym, pamięcią RAM i kartą graficzną. Przeglądarka internetowa zarządza zakładkami. Współpracuje z silnikiem WWW, DOM i JavaScript.

Kiedy GravityZoo lub YouOS twierdziły, że są systemami operacyjnymi, oferowały wirtualne środowisko graficzne. To jest kluczowa różnica. Nie zastąpiły systemu Windows ani Mac OS. Udostępnili warstwę abstrakcji, która znajdowała się między użytkownikiem a lokalnym systemem operacyjnym.

Wyobraź sobie to tak:

  • Tradycyjny system operacyjny : Bezpośredni dostęp do sprzętu. Wysoka wydajność. Lokalne opóźnienie.
  • WebOS (koncepcja z 2007 r.) : Pośredni dostęp do sprzętu poprzez przeglądarkę. Niższa wydajność. Opóźnienie sieci.

Nazwa „WebOS” utknęła, ponieważ była chwytliwa. Obiecywał przyszłość, w której komputer będzie tylko cienkim klientem. Gdzie Twoja tożsamość to Twój adres URL. Gdzie możesz wejść do dowolnego samochodu, w dowolnym kraju, w dowolnej kawiarni i znaleźć tam całe swoje cyfrowe życie.

Dziedzictwo nieudanej koncepcji

Dlaczego więc się nie udało? I dlaczego jest to teraz ważne?

Nie udało się, ponieważ technologia nie była w stanie dotrzymać obietnic. W 2007 roku przesyłanie strumieniowe interfejsu komputera stacjonarnego przez połączenie modemowe lub wczesne łącze szerokopasmowe było koszmarem. Opóźnienie zabiło to doświadczenie. JavaScript