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

by mk
7 April 2021 - 02:24

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

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

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

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

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

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

ที่มา - Google

Blognone Jobs Premium