Szerző: Gálffy Csaba

2016. július 5. 16:10

Kipróbálható a Mozilla vadonatúj böngészőmotorja

Itt a Servo-vonat, elkezdődött a nightly (megközelítőleg: alfa) státuszú verziók sorozatgyártása. A fejlesztés halad, az új motor fokozatosan váltja majd a Geckót a Firefoxban.

Múlt hét óta elérhetőek a Servo nightly-k - jelentette be a vadonatúj motort fejlesztő csapat. A Servo egy vadonatúj fejlesztésű böngészőmotor, amely a letöltött weboldalak megjelenítéséért és a webappok működéséért felel. A Mozilla szoftverportfóliójában jelenleg ezt a pozíciót a Firefox alatt is dolgozó Gecko motor tölti be, a Servo így értelemszerűen ennek utódjaként fogható fel.

Addig azonban nagyon nagyon hosszú még az út, a fejlesztőcsapat csak most jelentette be az első kipróbálható, működőképes verziót, amely sokatmondóan a 0.0.1 verziószámot kapta. Ez tényleg csak techdemó, tehát megszokott böngészős funkciókra még nem érdemes számítani, így például kiegészítők és hasonló képességek teljesen hiányoznak.

A (természetesen) nyílt forráskódú Servo alapjait még évekkel ezelőtt kezdte el lerakni a Mozilla Research csapata és számos külsős fejlesztő, a projekt most érkezett el oda, hogy érdemes rendszeres nightly kiadásokkal bombázni a közösséget. Ez azt jelenti, hogy az automatizált backend az épp elérhető legfrissebb forráskódból rendszeresen előállítja a futtatható binárisokat, hogy akár egyszerű felhasználók és webfejlesztők is kipróbálhassák. Első körben macOS és Linux build érhető el, de hamarosan készül majd windowsos és androidos kiadás is a nightly-ből.

Ezt újra kellett írni

A Servo egyébként a hivatalos megfogalmazás szerint "modern, nagy teljesítményű böngészőmotor alkalmazásokhoz és beágyazott működéshez". A szoftver egy nulláról írt vadonatúj motor, amely kimondottan a magas szintű párhuzamos működéshez, modularitás és magas teljesítmény mentén készült, a modern igényeknek megfelelően. A fejlesztésben egyébként a Mozilla mellett a Samsung is nagy részt vállalt, a dél-koreaiak azzal kezdték, hogy a Rustot portolták ARM-ra, majd a böngészőmotor fejlesztését is támogatták emberrel és pénzzel is, a projekt 2013-as rajtja óta.

Nagy pénz, nagy szívás: útravaló csúcstámadó IT-soknak

Az informatikai vezetősködés sokak álma, de az árnyoldalaival kevesen vannak tisztában.

Nagy pénz, nagy szívás: útravaló csúcstámadó IT-soknak Az informatikai vezetősködés sokak álma, de az árnyoldalaival kevesen vannak tisztában.

A Servo egyértelműen a Firefoxban jelenleg használt Gecko utódja lesz, a két motor között azonban nem lesz azonnali váltás. A termékterv szerint ugyanis a Servo egyes, elkészült elemeit egyenként emelik be a Geckóba, így a régi motort fokozatosan, egységenként modernizálják majd. A Rust fejlesztésénél egyébként fontos szempont a C és Rust kód együttélése, a Servo/Gecko hibridnél erre nagy szükség is lesz ezek szerint.

A termékterv szerint egyénként idén olyan célkitűzéseket szeretne elérni a fejlesztőcsapat, mint a GPU-val gyorsított CSS, a SIMD-del gyorsított layout, illetve a még hiányzó alrendszerek (I/O, gyorsítótárazás) leprogramozása. A fejlesztés során külön figyelmet kap a Geckóhoz és a Blinkhez (a Google saját motorja) mért relatív teljesítmény és a webes szabványok támogatása.

Servo+Rust

Az új motor egyik különleges vonása, hogy a Rust nyelvben íródott - ez utóbbi a Servóhoz hasonlóan a Mozilla Research fejlesztése. A Rust gyakorlatilag a C/C++ kiváltására született, "komoly feladatokhoz", (akár rendszerprogramozásra), azokkal összemérhető teljesítményszintet ígér, miközben könnyebbé teszi a magasan párhuzamosított kód írását és jóval biztonságosabb azoknál. Nagyon fontos volt az is, hogy a nagy kódbázisok is karbantarthatóak maradjanak, így sok millió vagy sok tízmillió soros alkalmazások is hatékonyan fejleszthetőek legyenek.

A Rust pár szóban

Nagy pénz, nagy szívás: útravaló csúcstámadó IT-soknak

Az informatikai vezetősködés sokak álma, de az árnyoldalaival kevesen vannak tisztában.

Nagy pénz, nagy szívás: útravaló csúcstámadó IT-soknak Az informatikai vezetősködés sokak álma, de az árnyoldalaival kevesen vannak tisztában.

Így természetes választás volt a Rust a Servo programozásához, olyan környezetbe, ahol mindezek az előnyök különösen fontosnak számítanak. A két projekt egyébként hatással is volt egymásra, a Servo fejlesztése során szerzett tapasztalatokból a Rust is profitált már, a készítők rengeteg módosítást és javítást visszacsorgattak a nyelv implementációjába is. A nyelv 1.0-s, stabilnak tekintett változata még 2015 májusában landolt, akkor írtunk róla részletesen, a friss verzió pedig az 1.9, ezt itt mutattuk be röviden.

A Servo nightly buildek elérhetőek a projekt oldaláról. A macOS-es verziót mi is kipróbáltuk, egyelőre a görgetéstől is kifagy, így tényleg csak szakembereknek ajánlott. Erre egyébként a csapat is hangsúlyosan felhívja a figyelmet, a Servo például még nem esett át a szokásos biztonsági auditokon sem, így a HTTPS és egyéb biztonsági megoldások implementációja sem tekinthető teljesen megbízhatónak.

Nagyon széles az a skála, amin az állásinterjú visszajelzések tartalmi minősége mozog: túl rövid, túl hosszú, semmitmondó, értelmetlen vagy semmi. A friss heti kraftie hírlevélben ezt jártuk körül. Ha tetszett a cikk, iratkozz fel, és minden héten elküldjük emailben a legfrissebbet!

a címlapról