r   e   k   l   a   m   a
r   e   k   l   a   m   a

Konkretne plany „elektrolizy” Firefoksa. Wersja 36. przeglądarki odseparuje się od wyświetlanych stron

Strona główna AktualnościOPROGRAMOWANIE

O Electrolysis, projekcie mającym na celu przekształcenie Firefoksa w działającą w wielu procesach przeglądarkę, Mozilla zaczęła mówić w czasach nader zamierzchłych, z początkiem 2010 roku, gdy trwały jeszcze prace nad wersją 3.5 programu. Potem od czasu do czasu przypominano, że coś się w tej kwestii robi, by pod koniec 2011 prace zawiesić, bez żadnych znaczących wyników. W 2013 prace wznowiono, tym razem na tyle skutecznie, że nawet pojawiły się eksperymentalne kompilacje, w których można było włączyć renderowanie zawartości poszczególnych kart w oddzielnych procesach. Kiedy ta wieloletnia praca przyniesie efekty widoczne dla użytkownika końcowego – tego nie wiedział jednak nikt. Aż do teraz.

Tak znaczącej przemiany Firefox dawno nie przechodził. Wprowadzenie nowego interfejsu użytkownika Australis było zmianą przede wszystkim kosmetyczną. Sam silnik Gecko jest już od dawna gotowy na wieloprocesowe działanie, ale odseparowanie rdzenia przeglądarki od webowych treści, zarówno tych rysowanych przez silnik renderujący jak i będących wynikiem pracy wtyczek, zmusza do przebudowy przede wszystkim tego, co twórcy przeglądarek nazywają „chromem” – kodu JavaScriptu implementującego interfejs użytkownika i rozmaite rozszerzenia.

Rozdzielając „chrom” od treści webowych, sprawiamy, że niemożliwe stają się bezpośrednie dotychczas interakcje między JavaScriptem warstwy interfejsu a zawartością stron. W wieloprocesowej wersji „liska” realizowane są one poprzez dość skomplikowany menedżer wiadomości, który wybiera kod wchodzący w interakcje z treścią, buduje z niego oddzielne skrypty, ładuje te skrypty do procesów, w których renderowana jest treść i oddaje im swoje API do komunikacji z przeglądarką.

r   e   k   l   a   m   a

Po co więc te komplikacje? Zapatrzona w Chrome Mozilla przekonuje, że z jednej strony wieloprocesowa przeglądarka to większa stabilność pracy, z drugiej zaś wydzielenie rysowania treści poszczególnych kart do oddzielnych procesów jest niezbędnym krokiem do umieszczenia ich w bezpiecznym sandboksie, utrudniającym ataki złośliwego kodu na Firefoksa i na system operacyjny w którym został uruchomiony. To oczywiście prawda – przeglądarki stając się programami złożonością dorównującymi systemom operacyjnym, przeznaczonymi nie tylko do przeglądania treści, ale i uruchamiania pochodzącego z WWW kodu, nie mogą już działać jako monolityczne procesy, w których poważniejsza awaria rysowania treści oznacza awarię wszystkiego innego.

Stan prac okazuje się być już na tyle zaawansowany, że programista Mozilli Chris Petersen oficjalnie pochwalił się harmonogramem, przedstawiającym poszczególne kamienie milowe na drodze do wieloprocesowego Firefoksa. I tak oto już 18 lipca (pierwszy kamień milowy) Electrolysis ma działać w Firefoksie z kanału dystrybucyjnego Nightly (po włączeniu tej opcji w konfiguracji). Mozilla chce wykorzystać sześć kolejnych tygodni od 21 lipca, gdy zaczną się prace nad Firefoksem 34, na przeprowadzenie szeroko zakrojonych testów przeglądarki z Electrolysis, w szczególności pod kątem kompatybilności z rozszerzeniami.

1 września, gdy rozpoczną się prace nad Firefoksem 35, Mozilla chce osiągnąć drugi kamień milowy. Wtedy możliwe stanie się domyślne włączenie wieloprocesowego trybu pracy dla wszystkich użytkowników Nightly. Kolejny etap rozpoczyna się 13 października, wraz z rozpoczęciem prac nad Firefoksem 36 – wówczas to kod Electrolysis rozpocznie normalny cykl przechodzenia między wydaniami testowymi, do kanału Aurora, następnie Beta, by wreszcie trafić do końcowych użytkowników wraz z stabilnym Firefoksem 36, 16 lutego 2015 roku.

Sytuacja z kompatybilnością z rozszerzeniami nie wygląda na razie za ciekawie. Można się o tym przekonać, sprawdzając stronę Are We e10s Yet?, w której przedstawione są informacje o zgodności obecnej wersji Nightly z włączonym Electrolysis z najpopularniejszymi dodatkami. Kilka z nich od początku działało bez zarzutu (m.in. Disconnect Facebook czy DownThemAll!), ale zdecydowana większość albo wymagała poprawek (np. Web Developer), albo do tej pory nie działa (m.in. Video Download Helper, AdBlock Plus, Greasemonkey czy LastPass). Sprawdzenie do lutego przyszłego roku całej zawartości katalogu dodatków Firefoksa nie będzie łatwe, więc liczy się każda pomoc – wystarczy zainstalować Firefoksa Nightly, w panelu about:config zmienić wartość ustawień browser.tabs.remote i browser.tabs.remote.autostart na true, a następnie sprawdzić, czy działają nasze ulubione dodatki. O wyniku testu można powiadomić za pomocą linków wyświetlanych w okienku e10s. Jeśli dodatek działa, klikamy „It works”, jeśli nie, klikamy „Report bug”, opisując, co się stało (i co powinno się stać).

Więcej informacji o tym, co dzieje się z Firefoksem w tej kwestii znajdziecie na wiki projektu.

© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.