Android ประกาศเริ่มใช้ภาษา Rust เขียนตัว OS เพื่อลดบั๊กด้านหน่วยความจำ

หัวข้อกระทู้ ใน 'เทคโนโลยี' เริ่มโพสต์โดย iPokz, 7 เมษายน 2021.

  1. iPokz

    iPokz ~" iPokz "~ Staff Member

    แม้ Linus Torvalds ยังแบ่งรับแบ่งสู้เรื่องการใช้ภาษา Rust ในเคอร์เนล แต่ล่าสุดฝั่งกูเกิลออกมาประกาศรองรับ Rust ในตัวระบบปฏิบัติการ Android อย่างเป็นทางการแล้ว

    เหตุผลของกูเกิลคือต้องการลดจำนวนบั๊กด้านหน่วยความจำ (memory safety) ที่เกิดจากภาษา C/C++ ซึ่งบั๊กเหล่านี้ตรวจสอบได้ยาก และมีผลกระทบสูงในแง่ความปลอดภัย (คิดเป็น 70% ของช่องโหว่ความปลอดภัย Android ระดับรุนแรง)

    [​IMG]

    จากสถิติของกูเกิลเองพบว่า บั๊กความปลอดภัยเหล่านี้เกิดจากโค้ดที่เขียนเข้าไปใหม่ๆ ไม่เกิน 1 ปีล่าสุด และมีจำนวนมากขึ้นเรื่อยๆ ตามจำนวนโค้ดที่เพิ่มขึ้น ทำให้แรงแก้ไขบั๊กตามไม่ทันการเติบโตของบั๊ก แนวทางของกูเกิลจึงต้องการป้องกันการสร้างบั๊กใหม่ที่ระดับตัวภาษาเลย แล้วใช้แรงวิศวกรในการแก้บั๊กเก่าไปเรื่อยๆ ถ้าเป็นไปตามแผน จำนวนบั๊กรวมจะค่อยๆ ลดลงตามกาลเวลาเอง

    [​IMG]

    การใช้ Rust ที่เป็น memory safety ที่ตัวภาษา จะช่วยลดจำนวนบั๊กหน่วยความจำลง และช่วยลดความจำเป็นในการเขียนโปรแกรมแบบ sandbox (ที่มีปัญหาประสิทธิภาพจาก overhead) ลงได้ด้วย

    อย่างไรก็ตาม การเพิ่มภาษาใหม่เข้าไปในระบบปฏิบัติการไม่ใช่เรื่องง่าย มีส่วนอื่นๆ ที่ต้องคำนึงถึงอีกมาก กูเกิลเล่าว่าใช้เวลาเตรียมตัวเรื่องนี้มานาน 18 เดือน มีโครงการบางอย่างที่ทดลองทำไปบ้างแล้ว และจะทยอยเปิดเผยในอีกไม่กี่เดือนข้างหน้า ส่วนการขยาย Rust ให้มีบทบาทในตัวระบบปฏิบัติการมากขึ้นต้องใช้เวลาอีกนานหลายปี

    ก่อนหน้านี้ กูเกิลได้สนับสนุนการใช้ Rust ในการเขียนโปรแกรมโอเพนซอร์สตัวอื่นๆ เช่น ม็อดของ Apache ด้วยเหตุผลเดียวกัน

    ที่มา - Google

    Topics: RustAndroidOperating SystemSecurity
     

แบ่งปันหน้านี้