Portál AbcLinuxu, 5. května 2025 21:47
Mozilla.cz v článku Servo ukazuje působivý výkon informuje o demu (YouTube) porovnávajícím výkon experimentálního jádra Servo vyvíjeného Mozillou s ostatními jádry webových prohlížečů. WebKit dosáhl v demu pouze 5 fps (snímků za sekundu), Firefox s Geckem 9 fps, Google Chrome 15 fps a Servo úctyhodných 60 fps. Servo je naprogramováno v programovacím jazyce Rust.
Tiskni
Sdílej:
Hlavný rozdiel vo výkone je pri tomto deme v efektívnejšom využití GPU. DOM manipulácia a JS by mali byť približne rovnako rýchle ako gecko. Výrazne rýchlejšie je parsovanie a generovaie layoutu vďaka využitiu threadov (single thread nie je moc rozdielny od gecka). Dúfam, že to mozilla nezabije skôr než sa dostane do použiteľného stavu ako to robí v poslednej dobe so svojimi projektmi.
C is a programming language for turning low-level byte arrays into security advisories.
Z toho som bol zo začiatku nadšený a potom ma to prešlo.
Je pekné, že renderovanie bude memory safe, že layout bude safe ... Potiaľ je to super. Ideálne renderovacie jadro by podľa mňa nemuselo bežať v sandboxe ako webkit s každým tabom v samostatnom procese, ale mali by mu stačiť vlákna. Servo však bude multiprocesové rovnako ako webkit a preto sa trochu obávam dopadu na spotrebu pamäte.
Podstatná časť serva bude stále v C / C++ (hlavne javascript). Kvôli jit sa bude stále generovať natívny nebezpečný kód a stále to môže byť na úrovni javascriptu deravé ako ementál.
Nicméně na rozdíl od Blink/WebKit/Gecko je tu obrovská výhoda v tom, že Servo je psané v memory-safe jazyce. Měl by to být tedy implicitně mnohem bezpečnější web engine.Nó, paměťová bezpečnost Rustu je určitě hezká věc, ale zas takové implikace bych z toho nedělal. Jednak v tak velkém projektu, kde navíc jsou vazby na OpenGL a další low-level technologie, se zcela jistě neobejdou bez unsafe kódu. Další věc je, že ta paměťová bezpečnost má své meze - např. nebrání memory leakům. No a konečně bezpečnostní chyby zdaleka nejsou jen o bezpečném přístupu do paměti, že. Je ale pravda, že takovým těm klasickým chybám typu přetečení bufferu by to mělo v mnoha případech zabránit...
Jednak v tak velkém projektu, kde navíc jsou vazby na OpenGL a další low-level technologie, se zcela jistě neobejdou bez unsafe kódu.Navíc Rust má dost slabý typový systém – najde se tedy řada bezpečných konstrukcí, jejichž bezpečnost v typovém systému Rustu dokázat nepůjde (nebo to bude velmi náročné).
Působivý výkon
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.