A KDAB bejelentette a Servo WebView komponens fejlesztését a Qt-hez, amely a Servo böngészőmotort használja a Qt WebEngine (Chromium alapú) modul helyett a webtartalom megjelenítésére QML-alkalmazásokban. A projekt várhatóan segít csökkenteni a támadási felületet a Qt-alkalmazásokban, amelyek a WebView API-t használják, a Rust nyelv alkalmazásának köszönhetően, amely minimalizálja a memória kezeléséből eredő sebezhetőségek előfordulását. A Servo WebView kódja a Qt-hez MPL-2.0 licenc alatt terjesztett.
A Rust nyelven írt Servo kód működtetéséhez C++ környezetben CXX-Qt réteg használható. A CXX-Qt lehetővé teszi Rust nyelvű komponensek létrehozását, amelyek integrálhatók a C++-ban, Qt-t használó programokba. A CXX-Qt alkalmazása lehetővé teszi a Rust-on írt QObject altípusok létrehozását, amelyek felhasználhatók C++-ban, QML-ben és JavaScript-ben. Emellett Rust programok is létrehozhatók, amelyek C++-ban írt kódot hívnak meg, ehhez Rust-övezetek állnak rendelkezésre a QtCore és QtGui típusú osztályok felett.
A Servo projektet eredetileg a Mozilla fejlesztette, de később a Linux Foundation védnöksége alá került. A motor multitasking weboldal megjelenítési támogatásával, a DOM (Document Object Model) műveletek párhuzamosításával és a Rust nyelv által biztosított biztonsági programozási mechanizmusokkal rendelkezik. Amikor a Servo alapjait tették, a Firefox böngészőmotor nem tudta teljes mértékben kihasználni a modern többmagos rendszerek potenciálját az egyszálú tartalomfeldolgozó sémák használata miatt. A Servo-t eredetileg a DOM kód és a renderelés kisebb alfeladatokra bontásának támogatásával hozták létre, amelyek párhuzamosan hajthatók végre, és hatékonyabban kihasználják a többmagos CPU erőforrásait. A Firefoxba már integrálva van néhány Servo-ból származó komponens, mint például a multitasking CSS-motor és a WebRender megjelenítési rendszer.
A témához kapcsolódó fejlesztések közül említésre méltó a Tauri-Servo projekt, amely a Servo motorra épülő WRY könyvtár backendjét fejleszti, lehetővé téve a Servo használatát a Tauri keretrendszeren alapuló alkalmazásokban (az Electronnal versengő platform a böngészőtechnológiák használatával készült felhasználói alkalmazások létrehozásához).
Forrás: opennet.ru
