Integratsiooniprojekt Qt veebimootori Servo jaoks, mida arendatakse Rust keeles.

Firma KDAB on kuulutanud välja Servo WebView komponendi arendamise Qt jaoks, mis kasutab veebimootorit Servo, mitte Qt WebEngine (Chromiumi baasil), et kuvada veebisisu QML rakendustes. Eeldatakse, et projekt aitab vähendada Qt rakenduste, mis kasutavad WebView API-d, rünnaku pinda, rakendades komponenti, mille puhul on Rust keele abil minimeeritud mäluhalduse tõttu tekkivad haavatavused. Servo WebView kood Qt jaoks levitatakse MPL-2.0 litsentsi alusel.

Servo koodi, mis on kirjutatud Rust keeles, integreerimiseks C++ keskkonnas on kasutusele võetud CXX-Qt vahekiht. CXX-Qt võimaldab luua Rust keeles komponente, mis integreeruvad C++ programmidesse, mis kasutavad Qt. CXX-Qt kasutamine võimaldab luua QObjecti alamklasse Rust'is, mida saab kasutada C++, QML ja JavaScripti koodis. Samuti on võimalik luua Rust programme, mis kutsuvad üles C++ koodi, milleks on saadaval Rust mähised QtCore ja QtGui tüüpiliste klasside üle.

Servo projekt algselt arenes Mozilla poolt, kuid see läks seejärel Linux Foundationi kaitse alla. Mootor erineb mitme sisseehitatud thread`iga veebilehtede renderdamise, DOM-i (Document Object Model) toimingute paraleelsete töötlemise ja Rusti keele pakkumiste ohutute programmeerimismehhanismide kasutamise poolest. Servo asutamise ajal ei saanud Firefoxi brauserimootor täielikult kasutada kaasaegsete mitme tuumaga süsteemide potentsiaali ühekeeruliste sisusüsteemide tõttu. Servo loodi algselt DOM-i koodide ja renderdamise jagamisega väiksemateks alatehtavateks, mis võivad töötada paraleelselt ja kasutada mitme tuumaga CPU ressursse efektiivsemalt. Firefoxis on juba integreeritud osa Servo osadest, nagu mitme thread`iga CSS-mootor ja WebRender joonistusüsteem.

Seotud arenduste hulgast väärib mainimist ka Tauri-Servo projekt, mis arendab Servo mootori baasil WRY raamatukogu tagapinda, võimaldades kasutada Servo rakendustes, mis on loodud Tauri raamistikku kasutades (konkureerides Electron`iga, mis on platvorm, mille alusel luuakse kasutajarakendusi brauseri tehnoloogiate abil).

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster