ผู้พัฒนาโครงการ Chromium
เมื่อออกแบบ Chromium ในตอนแรกนั้น
เพื่อรักษาความปลอดภัยของโค้ดเบส Google ยังบังคับใช้ "
เพื่อเพิ่มความปลอดภัยของฐานรหัส ได้มีการเปิดตัวโครงการเพื่อป้องกันข้อผิดพลาดของหน่วยความจำไม่ให้ปรากฏในฐานรหัส มีสามวิธีหลัก: การสร้างไลบรารี C ++ พร้อมฟังก์ชันสำหรับการทำงานของหน่วยความจำอย่างปลอดภัยและการขยายขอบเขตของตัวรวบรวมขยะโดยใช้กลไกการป้องกันฮาร์ดแวร์
คาดว่างานจะเน้นใน 2 ด้าน คือ
- การเปลี่ยนแปลงที่สำคัญต่อกระบวนการพัฒนา C++ ซึ่งไม่รวมผลกระทบด้านลบต่อประสิทธิภาพการทำงาน (การตรวจสอบขอบเขตเพิ่มเติมและการรวบรวมขยะ) ขอเสนอให้ใช้พอยน์เตอร์แบบดิบแทน
ปาฏิหาริย์Ptr ซึ่งช่วยให้คุณลดข้อผิดพลาดในการใช้งานหลังจากใช้งานฟรีไปจนถึงการหยุดทำงานที่ไม่ก่อให้เกิดภัยคุกคามด้านความปลอดภัย โดยไม่มีผลกระทบด้านลบต่อประสิทธิภาพ การใช้หน่วยความจำ และความเสถียรอย่างเห็นได้ชัด - การใช้ภาษาที่ออกแบบมาเพื่อตรวจสอบความปลอดภัยของหน่วยความจำ ณ เวลารวบรวม (จะกำจัดผลกระทบด้านลบต่อประสิทธิภาพที่มีอยู่ในการตรวจสอบดังกล่าวระหว่างการเรียกใช้โค้ด แต่จะนำไปสู่ค่าใช้จ่ายเพิ่มเติมสำหรับการจัดระเบียบการโต้ตอบของโค้ดในภาษาใหม่ด้วยโค้ดใน ซี++)
การใช้ไลบรารีที่ปลอดภัยต่อหน่วยความจำเป็นวิธีที่ง่ายที่สุด แต่ยังมีประสิทธิภาพน้อยกว่าอีกด้วย การเขียนโค้ดใหม่ใน Rust ได้รับการจัดอันดับว่าเป็นวิธีที่มีประสิทธิภาพมากที่สุด แต่ก็มีราคาแพงมากเช่นกัน
ที่มา: opennet.ru