Els desenvolupadors de Mesa estan discutint la possibilitat d'afegir codi Rust

Desenvolupadors de projectes Mesa estan discutint la capacitat d'utilitzar el llenguatge Rust per desenvolupar controladors OpenGL/Vulkan i components de la pila de gràfics. La discussió va ser iniciada per Alyssa Rosenzweig, desenvolupadora de controladors Panfrost per a les GPU de Mali basades en microarquitectures Midgard i Bifrost. La iniciativa està en fase de discussió i encara no s'han pres decisions concretes.

Els defensors de l'ús de Rust destaquen la capacitat de millorar el rendiment de la memòria i eliminar problemes com ara l'accés a la memòria lliure, les referències de punters nuls i les sobrepasses de memòria intermèdia. El suport Rust també permetria a Mesa incloure desenvolupaments de tercers, com ara un sistema de renderització de programari Kazan amb una implementació de l'API de gràfics Vulkan, escrita en Rust.

S'observa que la urgència de millorar la seguretat dels controladors ha augmentat recentment a la llum de l'ús d'OpenGL quan s'executa codi poc fiable en navegadors compatibles amb WebGL, la qual cosa fa que els controladors siguin un vector important per als atacs als sistemes dels usuaris. Actualment, Mesa ja utilitza eines com ara ralloc i anàlisi de codi estàtic per minimitzar els problemes de memòria, però el seu ús no és suficient.

Opositors a la implementació de Rust considerar, que la majoria de les característiques útils de Rust es poden obtenir transferint el desenvolupament a C++ modern, que sembla més atractiu donat que la majoria de Mesa està escrit en C. Entre els arguments en contra de Rust també s'esmenta complicació sistemes de muntatge, no desig vincular-se al sistema de paquets de càrrega,
ampliació de requisits per a l'entorn de muntatge i cal incloure Rust compilador a les dependències de muntatge necessàries per crear components clau d'escriptori a Linux.

El moviment cap a l'ús de Rust per al desenvolupament també s'observa a AMD, que fa poc va obrir una vacant Rust programador per desenvolupar noves eines relacionades amb controladors 3D per a GPU Radeon.

Font: opennet.ru

Afegeix comentari