นักพัฒนา Mesa กำลังหารือถึงความเป็นไปได้ในการเพิ่มโค้ด Rust

นักพัฒนาโครงการเมซ่า กำลังหารือ ความสามารถในการใช้ภาษา Rust เพื่อพัฒนาไดรเวอร์ OpenGL/Vulkan และส่วนประกอบกราฟิกสแต็ก การสนทนานี้ริเริ่มโดย Alyssa Rosenzweig ผู้พัฒนาไดรเวอร์ แพนฟรอสต์ สำหรับ GPU Mali ที่ใช้สถาปัตยกรรมไมโคร Midgard และ Bifrost โครงการริเริ่มนี้อยู่ในขั้นตอนการอภิปราย ยังไม่มีการตัดสินใจใดเป็นพิเศษ

ผู้เสนอการใช้ Rust เน้นย้ำถึงความสามารถในการปรับปรุงประสิทธิภาพของหน่วยความจำ และขจัดปัญหาต่างๆ เช่น การเข้าถึงหน่วยความจำหลังจากว่าง การยกเลิกการอ้างอิงพอยน์เตอร์ null และการโอเวอร์รันบัฟเฟอร์ การสนับสนุน Rust ยังช่วยให้ Mesa สามารถรวมการพัฒนาของบุคคลที่สาม เช่น ระบบการเรนเดอร์ซอฟต์แวร์ คาซาน ด้วยการใช้งาน Vulkan Graphics API ซึ่งเขียนด้วยภาษา Rust

มีข้อสังเกตว่าความเร่งด่วนในการปรับปรุงความปลอดภัยของไดรเวอร์ได้เพิ่มขึ้นเมื่อเร็ว ๆ นี้ในแง่ของการใช้ OpenGL เมื่อรันโค้ดที่ไม่น่าเชื่อถือในเบราว์เซอร์ที่รองรับ WebGL ซึ่งทำให้ไดรเวอร์เป็นพาหะสำคัญสำหรับการโจมตีระบบผู้ใช้ ปัจจุบัน Mesa ใช้เครื่องมือต่างๆ เช่น ralloc และการวิเคราะห์โค้ดแบบคงที่เพื่อลดปัญหาหน่วยความจำ แต่การใช้งานยังไม่เพียงพอ

ฝ่ายตรงข้ามของการดำเนินการของ Rust พิจารณาคุณสมบัติที่มีประโยชน์ส่วนใหญ่ของ Rust สามารถรับได้โดยการถ่ายโอนการพัฒนาไปยัง C ++ สมัยใหม่ ซึ่งดูน่าสนใจยิ่งขึ้นเนื่องจาก Mesa ส่วนใหญ่เขียนด้วยภาษา C ในบรรดาข้อโต้แย้งต่อสนิมก็ถูกกล่าวถึงเช่นกัน ภาวะแทรกซ้อน ระบบประกอบ, ไม่ใช่ความปรารถนา ผูกมัดกับระบบบรรจุสินค้า
การขยายข้อกำหนดสำหรับสภาพแวดล้อมการประกอบและ จำเป็นต้องรวม คอมไพเลอร์สนิมในการพึ่งพาแอสเซมบลีที่จำเป็นในการสร้างส่วนประกอบเดสก์ท็อปที่สำคัญบน Linux

ความเคลื่อนไหวไปสู่การใช้ Rust เพื่อการพัฒนานั้นก็สังเกตเห็นได้ที่ AMD ซึ่งเมื่อเร็ว ๆ นี้ เปิดตำแหน่งที่ว่าง โปรแกรมเมอร์ Rust เพื่อพัฒนาเครื่องมือใหม่ที่เกี่ยวข้องกับไดรเวอร์ 3D สำหรับ Radeon GPU

ที่มา: opennet.ru

เพิ่มความคิดเห็น