Firefox 7: sportovec roku

27. 9. 2011

Sdílet

 Autor: Redakce

Úvod; Přehled z minula; Snížená spotřeba paměti; Knihovna Azure

27. září 2011 se stalo dnem, kdy vyšel Firefox 7. Ještě nedávno bychom byli z této události na větvi a nadšeně bychom do světa šířili poselství o skvělých funkcích. Kdo by to byl řekl, že nás prohlížeče budou jednou tolik nudit. Chrome zatím žije z pocitu novosti. Sice jej bereme a zvykli jsme si na něj, respekt budí bleskové navyšování tržního podílu, pořád jde o relativně čerstvý produkt, a proto působí svěžím dojmem. Google přivedl do praxe pár zajímavých konceptů, ale co se krátil vývojový cyklus, také Chrome tak nějak zevšednělo. Ani bych neřekl, že mu to teprve hrozí, řadě lidí už se okoukal a svým způsobem už nudí.

Postupné dávkování novinek přetvořilo kdysi vyhlížené vydávání ohnivé lišky v běžnou rutinu. Firefox se teď, podobně jako Chrome, od předchozích verzí prakticky neliší. Byli jsme ochuzeni o ten krásný pocit objevování hromady novinek v notně vylepšeném prohlížeči. Kdo si pamatuje čekání na Firefox 2 nebo 3, ví své. Svítá nám naděje, protože podle všeho bude vycházet i dlouho podporované edice. Současný život vydávaných ohnivých lišek je jepičí, s nově narozeným liščátkem to starší umírá. Nejvíce lamentují firmy, stavu spokojenosti nedosahuje ani řada běžných uživatelů.

Připravme se tedy na to, že Firefox 8 či 9 vyjde i ve speciální edici, jejíž podpora potrvá 42 týdnů. Nástupce s dlouhodobou podporou Mozilla vypustí za 30 týdnů, během dvanáctitýdenního rozdílu by měli mít vývojáři rozšíření čas na aktualizaci svých výtvorů. Vy díky tomu plynule přejdete. Jen si spočítejte, kolik normálních Firefoxů stihne firma publikovat za dobu existence edice s delší životností. Co ale s budoucími plány? Teď tu máme další, na oko nudný Firefox, který se první vlaštovkou speciálních edic určitě nestane.

V minulém díle jste viděli...

Proveďme menší rekapitulaci. Minule přibyl pasivní bezpečnostní prvek, zvýrazňování domény. Nastoupila lepší propagace synchronizační a zálohovací funkce Sync, převážná většina novinek se nicméně dotkla technického pozadí aplikace. Asi bychom si měli zvyknout na to, že zrychlování jádra a práce na podpoře webových standardů vyplní většinu místa na soupisce novinek. Jenže čtvrtá generace prohlížeče vyšla před půl rokem a času na ladění kódu již bylo dost. Organizace panelů pomocí pohledu Panorama bylo opravdu fajn, až na šílené hardwarové nároky.

Tip: Firefox 6: pasivní ochrana a optimalizované Panorama

I po šesti měsících stále vidíme stejný Firefoxu, který se až na pár kosmetických detailů vůbec nezměnil. Že se výkon aplikace obecně hodně zlepšil, bereme. Rádi bychom ale doslova viděli něco nového. Je-li to vůbec možné, naposedmé si pobrečíte mnohem více, pokud vás technické detaily nezajímají. Jestliže minule se něco málo odehrálo na povrchu, tentokrát se veškeré dění soustředí právě pod povrchem. Výměnu rolí ustála Mozilla se ctí, takže ukončeme nářky a přibližme si technologická vylepšení.

Paměti spotřebuje o polovinu méně než Firefox 4

Mluvilo se o tom docela dlouho a nyní vidíme v praxi, že navýšení výkonu aplikace se projevuje velmi pozitivně. Došlo totiž k dramatickému pokroku v oblasti využívání paměti. Ohnivá liška byla odjakživa považována za otesánka, který spotřebuje enormní množství paměti. To na čas platit přestalo, avšak s vydáním čtvrté generace Firefoxu se pomluvy vrátily. Nová a neodladěná technologie si musela projít dalším, dodatečný vývojem. Po půl roce posilování se prohlížeč přeměnil ve sportovce. Za prvé tedy snížil svůj vlastní objem, v porovnání se staršími kolegy (i se čtvrtou řadou) obvykle pojídá o dvacet až třicet procent paměti méně.

Místy se Mozille usilovná práce vyplatila ještě víc. Jde o případy, kdy se spotřeba snížila na polovinu. K lepšímu zdravotnímu stavu aplikace za běhu přispívá chytřejší chování prohlížeče. Po nečinnosti přes celou noc už nárůst nezaznamenáte, pokud tedy počítač nevypínáte a programy necháváte běžet dlouho. Člověka zarazí, že se již dříve nečistila paměť od většího počtu zavřených panelů. Nepořádek už po sobě lištička zamete, takže ke spotřebě a nakládání s pamětí už nemůžeme mít žádné výtky. Jedním z vedlejších efektů inteligentnějšího chování je i snížená pravděpodobnost pádu. Ať už patříte k extrémistům, jimž nečiní potíže provozovat prohlížeč se stovkou otevřených panelů, nebo k lidem se sklonem systém a programy restartovat co možná nejméně, budete potěšeni.

Za lepší správou paměti stojí snaha Mozilly promítnutá do projektu MemShrink. Popsaná zlepšení jsou výsledkem sedmi týdnů základní práce a Firefox 7 symbolicky jako první ohnivá liška může těžit z projektu těžit. Příště se posuneme zase o krok kupředu, nepředbíhejme ale.

Azure – nová grafická knihovna

Další velkou novinkou je bezesporu grafické API Azure. Vykreslovací jádro Gecko si rozdělí stránku na jednotlivé vrstvy, o jejichž zobrazení se dosud starala knihovna Cairo. Cairo již podléhalo hardwarové akceleraci, která vykreslení značně urychlí. Ve Vistě a Windows 7 se k akceleraci využívá Direct2D. To sice není universální napříč různými platformami, avšak pro Firefox provozovaný pod těmito systémy představuje velkou výhodu. Jiný operační systém neposkytuje prostředí natolik rychlé, respektive prohlížeč pro něj není optimalizován. V Mozille dobře vědí, že pod nejnovějšími Windows dosahují nejlepších výsledků. Po vykreslení ještě musí zpětně dojít k sestavení vrstev pěkně do sebe, když už se rozdělily.

V tomto kroku se k hardwarové akceleraci využívá Direct3D nebo jiné 3D API (OpenGL). Pokud akcelerace není k dispozici, přejde veškerá zátěž na Cairo a stránka se vykreslí softwarově. Cairo je starší než byste si mysleli, takže přišel čas přemýšlet o jeho nástupci. Nová 2D knihovna se nazývá Azure a oproti předchůdci neoperuje s pevně danou řádovou čárkou, ale naopak s plovoucí. Tím se přiblíží Direct2D, kde se počítá s plovoucí čárkou. Ušetřené systémové prostředky budou moci urychlit zobrazení webových stránek.

Azure má také jednu zajímavou vlastnost, a to přístupové cesty ke 3D API. Zjednodušeně řečeno se běžná 2D volání se přesměrují na 3D API. Nezabíhejme zbytečně do technických detailů, důležité je, že díky tomu se hardwarová akcelerace má dostat na ostatní platformy, kde se musíte obejít bez Direct2D (výsada Visty a sedmiček, jak již bylo řečeno). 3D API je například dostupné konečně i ve Windows XP. Kompletní hardwarové akceleraci ale bude nadále bránit několik faktorů. Hádáte správně, v cestě budou nejčastěji stát ovladače ke grafickým kartám. Naneštěstí se akcelerace nezprovozní na několik let starých ovladačích, povolené stáří se obvykle pohybuje v řádu měsíců.

Kdo dosud aktualizace ovladačů zanedbával, má teď (dobrá, technicky vzato již od příchodu hardwarové akcelerace) dobrý důvod, proč si v systému udržovat pořádek. Pokud na vašem počítači bude z jakéhokoliv důvodu akcelerace nepoužitelná, nastoupí do akce Cairo, které ve Firefoxu zůstane jako taková záloha pro všechny případy.

Vytuněné spouštění; Viditelné novinky; Závěr

Windows Prefetch bránil rychlejšímu spuštění

Výkon je věc ožehavá a velmi záleží na aktuální konfiguraci hardwaru a softwaru v počítači. Co možná nejširší vzorek strojů přispěje k optimálnímu vyladění softwaru tak, aby běžel všude co možná nejlépe a bez chyb. Sbírání telemetrických dat opravdu pomáhá, takže jestli se sami chcete zasloužit o lepší Firefox, nainstalujte si doplněk about:telemetry a nechce aplikaci, aby údaje o výkonu posílala výrobci prohlížeče. Text about:telemetry samozřejmě můžete zadat do adresního řádku – a poté se kochat grafy. Užitečnější ale bude about:memory. Na této stránce lze spatřit, kolik která stránka ukusuje paměti. Tady se můžete kochat pokroky ve Firefoxu 7.

Aby těch pokroků nebylo málo, ještě jsme nezmínili rychlejší spuštění prohlížeče. Výsledky Mozilly z rozsáhlého testování skončily s nepříliš překvapivým závěrem, většina operačních systémů nedovede spouštět velké programy s lehkostí, většinou okolnosti zapříčiňují pomalý start. Firefox se s tím od teď vypořádává tak, že systému natvrdo poručí, aby přednačítal knihovny se XULem. Dvacet řádků kódu zdvojnásobilo start ohnivé lišky. Nebo vy takové zlepšení nepozorujete? Patrně u vás korektně funguje přednačítací funkce Windows Prefetch.

Ta hází prohlížeči klacky pod nohy a její vinou startuje pomaleji než by mohl. Na stávajících instalacích aplikace musíte z Prefetch přinejmenším smazat data Firefoxu. Kompletní vypnutí funkce nedoporučujeme, protože tím prakticky popřete duši Windows. Ne vždy se přednačítání obrátí proti vám, naopak se dost často projeví kladně, což ostatně v Microsoftu zamýšleli. Nejjednodušší, co můžete zkusit, je nainstalovat Firefox, restartovat počítač a posléze jej prvně spustit. Při tzv. teplém spuštění Windows Prefetch svým chováním blokuje soubory, které hrají při startu Firefoxu nejdůležitější roli. Systém ve Firefoxu 7, který Prefetch detekuje, naneštěstí brání optimalizacím na velmi pomalých pevných discích za podmínky, že je jmenovaná funkce vypnutá. A to je škoda, protože podle slov vývojářů se právě na takových strojích projevuje novinka nejvíc.

Mimochodem, z prvních telemetrických dat Mozilly vyplývá, že 25 % uživatelů používajících Windows má jejich přednačítací schopnost vypnutou. Zarážející číslo, že? A co vy? Také jste ji vypnuli, nebo nemáte tušení, kde se to dělá?

Viditelná novinka spatřena!

Práce na adresní řádku pokračují, z čehož protentokrát vznikla jedna z mála viditelných novinek, kterou ocení úplně všichni, nikoliv pouze nadšenci do výkonu. Po zvýrazňování domény přichází další prvek, jenž usnadní orientaci v adresách. Skrývá se totiž protokol HTTP, zatímco zabezpečené HTTPS se bude na odiv vystavovat i nadále. I to lze nazvat v podstatě pasivním bezpečnostním opatřením, obzvlášť méně znalý uživatel se vyhne zmatkům („co je to HTTP?“) a z adresy uzří pokaždé to nejdůležitější. Schovávání protokolu je ve světě moderních prohlížečů běžnou praxí, Mozilla se na tuto oblast tváří vlastně ještě docela zdrženlivě.

Pokud se vám hra na schovávanou nelíbí, jděte na stránku about:config, vyhledejte předvolbu browser.urlbar.trimURLs a přepněte ji z True na False. Zálohování záložek a hesel pomocí vestavěné funkce Sync by mělo reagovat pružněji. K synchronizaci obsahu mezi serverem a vaším počítačem dojde prakticky ihned po přidání nové položky. Dříve jsme museli chvíli čekat, k synchronizaci docházelo v delším časovém intervalu. Eventuálně se akce musela vykonat ručně.

Dále tu máme nějakou tu přesunutou nabídku, předvolba pro import dat z jiného prohlížeče přemístila do Knihovny stránek do sekce Import a záloha. V hlavní nabídce v sekci Vývoj webu pro změnu nově najdete odkaz na získání nástrojů pro vývojáře. Ty se přirozeně nachází na stránce s doplňky pro aplikace od Mozilly. Pro dobro věci by měla sloužit dialogová okna, s nastavením doplňků, integrovaná do prostředí Správce doplňků. Pokud se toho chytí tvůrci rozšíření, nebudou nás již obtěžovat samostatná okna, všechno se odehraje v prostředí Správce, stačí přejít na detaily rozšíření.

Firefox 7 ukončil naše trápení způsobené oblíbeným pozměňováním velikosti okna. Weby pomocí JavaScriptu snadno přizpůsobí velikost svým požadavkům. V některých případech jde o oprávněné změny (např. kvůli obrázku), převážně se ale této finty zneužívá a my musíme neplechu neustále napravovat. Mozilla šílenství konečně zarazila, takže funkci nyní mohou používat weby pouze v oprávněných případech. Na okna, která otevřete vy sami, vám už nikdo nesáhne. Škálování je možné u oken, která si otevře stránka sama. Již z minulosti možná znáte předvolbu v Možnostech, díky níž zakážete šachování s pozicí a velikostí úplně. To můžete stále udělat, pokud se chcete popsanému chování zcela vyhnout.

ICTS24

Firefox 7: sportovec roku

Ohnivá liška jistě mnoho z vás překvapila rozsáhlými pracemi na výkonu. Azure je jen jednou z několika novinek. Za nějakých šest týdnů nám vývojáři přináší o tolik vyladěnější a rychlejší Firefox, až se tomu nechce věřit. Ale skutečně se zapracovalo prakticky na všech technických aspektech aplikace, takže se rychleji spouští, rychleji vykresluje stránky, spotřebovává mnohem méně paměti, je méně náchylná k pádům a její prostředí reaguje znatelně rychleji. Takže co si přát víc? Leda další funkce, drobná vylepšení jsme si popsali a řekněme si rovnou, že vás na zadek neposadí. Vzhledem k rozsahu provedených výkonnostních tweaků to Firefoxu 7 odpustíme.

Mozilla Firefox 7: firefox.com
Jazyk: čeština
Podporované systémy: Windows 2000 – 7