Firefox wraca do gry? Mozilla rozwiązała kluczowy problem
Nie sposób z czystym sumieniem powiedzieć, aby Firefox mógł zaliczyć ostatnie lata do udanych. Dominacja Chrome’a – czy to per se, czy w postaci przeglądarek budowanych na bazie Chrome – cementuje się i trudno oczekiwać, aby trend ten miał się odmienić nawet w perspektywie lat.
Przeglądarka rozwijana przez Mozillę natomiast stopniowo, choć nieśpiesznie traci i tak niewielkie, szacowane na ok. 10%, udziały w rynku. W Polsce i tak zdaje się być popularniejsza niż choćby w USA, ale także nad Wisłą można odnieść wrażenie, że użytkownicy Firefoksa korzystają z niego w dużej mierze z przyzwyczajenia lub dla idei, a nie ze względu na wyróżniającą się na tle wszechobecnych Chrome'ów jakość.
Nudny jak Firefox
Nie zmieniają tego nowości w zakresie ochrony prywatności użytkowników, w których w ostatnich latach Firefox przoduje – Mozilla decyduje się na blokowanie coraz większej liczby mechanizmów identyfikowania i śledzenia, za co na ogół jest chwalona, jednak wobec czego internauci pozostają w dużej mierze obojętni. Zwłaszcza że często zdarza się, że innowacje proponowane w Firefoksie migiem pojawiają się u chromopodobnej konkurencji, np. w Brave.
Można też odnieść wrażenie, że zmienił się harmonogram wydawniczy Firefoksa, a raczej dynamika prac nad przeglądarką. Niegdyś premiera każdej dużej wersji była wydarzeniem godnym odnotowania – dziś poprawki są zazwyczaj kosmetyczne, najczęściej dotyczące wspomnianej ochrony prywatności. Bo i „pod maską” Firefoksa, po implementacji części technologii z silnika Servo pod kryptonimem Proton, nie dzieje się jakoś zatrważająco wiele.
Firefox 105 skończy z problemami z pamięcią
Odczuwalną różnicę może jednak zrobić nadchodzący wielkimi krokami Firefox 105. Co prawda znów nie uświadczymy tu większych nowości funkcjonalnych (z tych warto wspomnieć w zasadzie wyłącznie o możliwości nanoszenia adnotacji na pliki PDF bezpośrednio w przeglądarce), za to pojawią się usprawnienia w szczególnie ważnym dla końcowych użytkowników aspekcie: wydajności i stabilności działania całego programu.
Zapewne wielu użytkowników Firefoksa odczuło w mniejszym lub większym stopniu na przestrzeni lat problemy, jakie przeglądarka napotyka po wysyceniu pamięci operacyjnej. Problem tkwi w sposobie, jaki główny proces Firefoksa dokonuje alokacji pamięci i został opisany już przed rokiem. Co ważne, problem dotyczy wyłącznie tych instancji przeglądarki, które działają na systemach z rodziny Windows.
Wynika to poniekąd z różnic pomiędzy systemami linuksowymi i windowsowymi – pierwsze radzą sobie z brakiem pamięci (OOM, Out Of Memory) poprzez uruchomienie procesu OOM Killer, którego celem jest zminimalizowanie skutków stanu OOM. Musi być on oczywiście możliwie jak najmniejszy i uwalniać tak dużo pamięci, jak tylko się da, ale bez naruszania stabilności usług krytycznych dla działania systemu operacyjnego.
I o ile dystrybucje Linuksa powszechnie wykorzystują OOM Killera, tak Windows nie dysponuje czymś porównywalnym jeden do jednego. To właśnie stąd wzięły się problemy ze stabilnością Firefoksa na systemie Microsoftu. Na szczęście, nadchodzące wydanie Firefoksa ma być pozbawione tego problemu, a przynajmniej tak twierdzi Gabriele Svelto, który opublikował na Twitterze godny podziwu wykres prezentujący, jak bardzo spadła liczba sytuacji, w których Firefox wiesza się przez problemy z alokacją pamięci.
This is a graph showing how much we've reduced Firefox out-of-memory crashes on Windows with a simple yet crazy change (https://t.co/ZyOIRqHA93). The red area shows the number of crashes affecting users w/o the fix, and the blue one those w/ the fix. This should be in version 105 pic.twitter.com/fOYqDCjg0M
— Gabriele Svelto (@gabrielesvelto) September 7, 2022
Problem ten rozwiązano poprzez zmianę w tym, jak kolejne procesy wykorzystują pamięć, a dokładnie opóźniono moment ubijania głównego procesu kosztem innych, ładujących treść do konkretnych kart. W Firefoksie 105 to właśnie one będą w pierwszej kolejności ubijane, zaś zamknięcie procesu głównego będzie mało prawdopodobne, gdyż zamykanie kolejnych kart zwolni niezbędną ilość pamięci. Skuteczność tego mechanizmu będziemy mogli sprawdzić już za około dwa tygodnie.
Czy Lisek ma przyszłość?
Ogłoszenie rozwiązania problemu z alokowaniem pamięci wzbudziło wśród społeczności entuzjazm. Być może właśnie to takie usprawnienia i optymalizacje są więc drogą do odzyskania większych udziałów w rynku – wszak w ten sposób, tj. sprawną implementacją sprytnych mechanizmów przyśpieszania ładowania stron oraz, ekhm, licznymi praktykami monopolistycznymi, popularność zdobył Chrome.
Z drugiej strony – czy dobry soft, aby był dobry, musi być popularny?