ในระหว่างการประชุม Rust Week 2026 ที่ผ่านมา จัดขึ้นที่เมืองอูเทรคต์ เกร็กโครอาห์ - ฮาร์ทแมน หนึ่งในบุคคลหลักที่รับผิดชอบในการดูแลรักษาเคอร์เนลของลินุกซ์ เขาก้าวขึ้นเวทีพร้อมกับข้อความที่ชัดเจนมาก: สนิมคือหนทางรอดที่โครงการนี้ต้องการ.
มีการแจ้งเตือนด้านความปลอดภัยจำนวนมากถึงเกือบสิบสามรายการ (CVE) เผยแพร่แล้ว ทุกวันทีมพัฒนาเผชิญกับปริมาณบั๊กที่มากจนแทบรับมือไม่ไหว ตามคำกล่าวของ Kroah-Hartman ผู้ที่รับมือกับช่องโหว่เหล่านี้มาตั้งแต่ปี 2005 สาเหตุมาจากข้อบกพร่องพื้นฐานของภาษา C ในเรื่องการจัดการหน่วยความจำและข้อผิดพลาดซึ่งเป็นปัญหาที่ Rust สัญญาว่าจะช่วยบรรเทาได้อย่างมาก
ข้อความนั้นตรงไปตรงมาและชัดเจน โปรแกรมเมอร์มากประสบการณ์กล่าวต่อหน้ากลุ่มนักพัฒนาจำนวนมาก เขาสารภาพว่าทีมงานไว้วางใจชุมชนผู้ใช้ภาษาสมัยใหม่นี้อย่างเต็มที่ เพื่อปกป้องรากฐานของการคำนวณสมัยใหม่ สำหรับพวกเขาแล้ว ขั้นตอนการทดสอบได้สิ้นสุดลงแล้ว เนื่องจากการใช้ Rust ในส่วนหลักเป็นเรื่องจริงอย่างแน่นอน พวกเขาจึงจะดำเนินการผสานรวม Rust เข้ากับส่วนประกอบที่สำคัญที่สุดต่อไปอย่างเต็มที่
ฝันร้ายของการเขียนโค้ดภาษา C และวิธีแก้ปัญหาอัตโนมัติของ Rust
เพื่อแสดงให้เห็นถึงปัญหาที่แท้จริงที่พวกเขาเผชิญอยู่ทุกวันนักพัฒนาซอฟต์แวร์เล่าถึงข้อบกพร่องในโค้ดบลูทูธที่ไม่มีใครสังเกตเห็นมานานถึงสิบห้าปีสาเหตุเกิดจากการไม่ตรวจสอบตัวชี้หน่วยความจำนั่นเองเขายังกล่าวถึงข้อผิดพลาดในโค้ดของ Xen ที่มีคนลืมปลดล็อกอีกด้วยความผิดพลาดเล็กๆ น้อยๆ ของมนุษย์เหล่านี้สะสมกันไปเรื่อยๆ จนในที่สุดอาจทำให้ระบบล่มหรือเปิดช่องโหว่ให้เกิดการโจมตีทางไซเบอร์ได้ ข้อดีอย่างยิ่งของ Rust คือสามารถตรวจจับข้อผิดพลาดเหล่านี้ได้ในระหว่างการคอมไพล์โค้ดก่อนที่จะถึงขั้นตอนการตรวจสอบ หากโปรแกรมเมอร์ลืมตรวจสอบข้อผิดพลาดหรือปล่อยทรัพยากร โปรแกรมจะไม่สามารถคอมไพล์ได้
ขอบคุณระบบตรวจสอบอัตโนมัตินี้ผู้ที่มีหน้าที่ตรวจสอบโค้ด พวกเขาไม่จำเป็นต้องเสียเวลาไปกับการค้นหารายละเอียดเล็กๆ น้อยๆ อีกต่อไป และสามารถมุ่งเน้นไปที่ตรรกะหลักของโปรแกรมได้ Kroah-Hartman ประเมินว่าคุณสมบัติเหล่านี้เพียงอย่างเดียวจะช่วยกำจัดบั๊กในเคอร์เนลได้ถึงร้อยละ 60 ยิ่งไปกว่านั้น วิธีการทำงานแบบใหม่นี้ได้ส่งผลต่อโค้ดภาษา C แล้ว บังคับให้นักโปรแกรมปรับปรุงอินเทอร์เฟซและใช้เทคนิคที่ปลอดภัยยิ่งขึ้น ซึ่งแสดงให้เห็นว่าการมีอยู่ของ Rust เพียงอย่างเดียวก็ช่วยพัฒนา Linux ให้ดีขึ้นแล้ว
นอกเหนือจากบล็อกหน่วยความจำแล้ว หัวข้อการบรรยายกล่าวถึงปรัชญาด้านความปลอดภัยที่สำคัญ อ้างอิงจากหลักการเก่าแก่ของ Microsoft: ให้สันนิษฐานไว้ก่อนว่าข้อมูลใดๆ ที่เข้าสู่ระบบนั้นเป็นข้อมูลที่เป็นอันตรายKroah-Hartman อธิบายว่าพวกเขากำลังพัฒนาวิธีการภายใน Rust เพื่อติดป้ายกำกับข้อมูลว่าเป็น "ไม่น่าเชื่อถือ" อย่างชัดเจนภายในระบบประเภทเดียวกัน
ด้วยวิธีนี้ คอมไพเลอร์จะบังคับให้โปรแกรมเมอร์ตรวจสอบความถูกต้องของข้อมูลนั้นก่อนที่จะสามารถใช้งานหรือเข้าถึงได้เรื่องนี้มีความสำคัญอย่างยิ่งในปัจจุบัน เนื่องจากนักพัฒนาซอฟต์แวร์ไม่เพียงแต่ระมัดระวังซอฟต์แวร์ของผู้ใช้เท่านั้น แต่ยังระมัดระวังฮาร์ดแวร์เองด้วย ซึ่งมักมีข้อบกพร่องจากโรงงาน หรืออาจได้รับการออกแบบมาอย่างมีเจตนาร้าย การรวมศูนย์การตรวจสอบทั้งหมดไว้ในจุดเดียว จะทำให้การตรวจสอบความปลอดภัยรวดเร็วและแม่นยำยิ่งขึ้น
วิวัฒนาการโดยไม่ต้องเขียนใหม่ตั้งแต่ต้น
แม้จะมีความกระตือรือร้น แต่ผู้เชี่ยวชาญก็ยัง... เขาชี้แจงอย่างชัดเจนว่าสนิมไม่ใช่เวทมนตร์ตัวอย่างเช่น เขาได้กล่าวถึงโค้ดชิ้นเล็กๆ ที่เขียนด้วยภาษานี้ ซึ่งออกแบบมาเพื่อแสดงคิวอาร์โค้ดเมื่อระบบล้มเหลว แต่สุดท้ายกลับทำให้เกิดปัญหาเรื่องหน่วยความจำ เพราะไม่มีใครคิดที่จะตรวจสอบขนาดของบัฟเฟอร์ข้อมูล สนิมก็อาจก่อให้เกิดปัญหาได้เช่นกัน หากไม่ใช้งานอย่างระมัดระวังและขาดวิจารณญาณ ด้วยเหตุนี้ จึงไม่มีใครในองค์กรคิดที่จะเขียนโค้ดภาษาซีจำนวน 36 ล้านบรรทัดที่ Linux มีอยู่แล้วขึ้นมาใหม่ กฎนี้เป็นกฎเด็ดขาด: โค้ดเดิมจะยังคงอยู่เหมือนเดิม และเครื่องมือใหม่จะถูกนำมาใช้เพื่อสร้างคอนโทรลเลอร์ที่ทันสมัยเท่านั้น
ปัจจุบัน eโค้ดส่วนเคอร์เนลในภาษา Rust มีเพียงประมาณ 113.000 บรรทัดเท่านั้นส่วนใหญ่เป็นการปรับเปลี่ยนชั่วคราวเพื่อเชื่อมช่องว่างระหว่างสองภาษา อย่างไรก็ตาม โครงการขนาดใหญ่ เช่น ระบบการสื่อสารภายในของแอนดรอยด์ (แฟ้มเอกสาร) พวกเขากำลังอยู่ในช่วงของกระบวนการเปลี่ยนผ่านแล้วซึ่งหมายความว่าในไม่ช้าโทรศัพท์หลายพันล้านเครื่องจะใช้งานโค้ดนี้ทุกวัน
โครงการนี้มองว่าการเปลี่ยนแปลงนี้เป็นการวิวัฒนาการตามธรรมชาติ โดยที่ไดรเวอร์ C รุ่นเก่าจะค่อยๆ เลิกใช้ไปตามกาลเวลา เนื่องจากฮาร์ดแวร์รุ่นใหม่ต้องการโปรแกรมที่สร้างขึ้นใหม่ทั้งหมดพร้อมการรับประกันความปลอดภัยที่ทันสมัย