Linux อาจรวมกรอบไดรเวอร์ไว้ใน Rust

สนิมลินุกซ์

เกร็กโครอาห์ - ฮาร์ทแมน หนึ่งในผู้ดูแลเคอร์เนลของ Linux เมื่อเร็ว ๆ นี้ ได้รับข้อเสนอ ซึ่งมันบอกว่า เป็นไปได้ว่าจะยอมรับเฟรมเวิร์กที่อุทิศให้กับการพัฒนาไดรเวอร์ในภาษา Rust ในแกนกลาง

แม้ว่าในขณะนี้จะไม่มีอะไรเป็นรูปธรรมสำหรับเรื่องนี้ Greg Kroah-Hartman กำหนดเงื่อนไขสองประการ: หนึ่งในนั้นคือเฟรมเวิร์กจะไม่ถูกเปิดใช้งานตามค่าเริ่มต้นในกรณีของการรวมเข้าด้วยกันเพื่อหลีกเลี่ยงไม่ให้ Rust ไม่ต้องคอมไพล์เคอร์เนล ประการที่สองแนวทางที่เสนอมีข้อดีอย่างแท้จริงเมื่อเทียบกับแนวทางที่ได้จากการใช้ภาษาซี

เป็นที่ทราบกันดีว่า Linux Kernel เป็นผลมาจากการพัฒนาในภาษา C และเหนือสิ่งอื่นใดสำหรับ Linus Torvalds C เป็นอันดับแรก ดังนั้นในการพัฒนาไดรเวอร์สำหรับระบบการใช้ C.

นักพัฒนาได้รับโอกาสมหาศาล ซึ่งนำเสนอในแง่ของการจัดการทรัพยากรฮาร์ดแวร์ของระบบคอมพิวเตอร์โดยใช้ Rust

และนั่นก็คือ มีการเพิ่มเสียงมากขึ้นเพื่อเรียกข้อความไปยังภาษารัสต์ หนึ่งในนั้นควรจะแทนที่ C สำหรับการควบคุมวัสดุ

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

ตามตัวเลขที่รายงานโดยทั้งคู่ของนักวิจัยซึ่งเป็นผลมาจาก 65% ของช่องโหว่ของเคอร์เนล Linux ที่ระบุในช่วง 6 เดือนที่ผ่านมา ตัวเลขช่องโหว่ทั่วไปและการสัมผัส (CVE) มีความคล้ายคลึงกัน: 15.9% ของช่องโหว่ 2288 รายการที่ส่งผลกระทบต่อเคอร์เนลลินุกซ์ใน 20 ปีเกี่ยวข้องกับการล้นของบัฟเฟอร์

ทีมวิจัยไม่เพียง แต่พูดถึงประโยชน์ที่ Rust เสนอเมื่อเทียบกับ C. นอกจากนี้เขายังใช้โอกาสนี้ในการนำเสนอความคิดริเริ่มในการพัฒนาเฟรมเวิร์กที่อุทิศให้กับการพัฒนาไดร์เวอร์ลินุกซ์

พูดง่ายๆก็คือความพยายามในการทำงานกับ Linux kernel APIs การพัฒนามีไว้สำหรับสถาปัตยกรรม x86, arm / arm64, mips, POWERPC, RISC-V, s390 และ SPARC

ลูกแพร์ ปัญหาใหญ่ที่สุดคือ Linus Torvalds เท่านั้นที่เชื่อว่าไม่มีอะไรดีไปกว่าภาษา C สำหรับการเขียนโปรแกรมระบบ

ต้องบอกว่าค่อนข้างเชยกับประเด็นแบบนี้ เหตุผลที่ฉันเริ่ม Linux และระบบปฏิบัติการโดยทั่วไปคือฉันชอบฮาร์ดแวร์มาก ฉันชอบสำรวจด้านวัสดุ

ฉันไม่ได้พูดแบบนี้เพื่อเน้นว่าฉันเป็นผู้เชี่ยวชาญ สิ่งที่ฉันหมายถึงคือฉันชอบที่จะโต้ตอบกับฮาร์ดแวร์จากซอฟต์แวร์ จากมุมมองนี้ฉันยังไม่เห็นภาษาโปรแกรมที่ใกล้เคียงกับภาษาซีเท่านั้น

คำสั่งนี้ไม่ได้เป็นเพียงเพราะ C มีประโยชน์สำหรับการสร้างโค้ดที่ดีเพื่อจัดการกับฮาร์ดแวร์ นอกจากนี้การใช้ C ยังเหมาะกับคนที่คิดเหมือนคอมพิวเตอร์ ฉันคิดว่าเหตุผลก็คือคนที่ออกแบบภาษา C ทำเช่นนั้นในช่วงเวลาที่คอมไพเลอร์ต้องเรียบง่าย ในช่วงเวลาที่ภาษาต้องปรับให้เข้ากับผลลัพธ์หรือผลลัพธ์ที่คาดหวัง

ดังนั้นเมื่อฉันอ่านโค้ดในภาษา C ฉันรู้ว่ารหัสแอสเซมบลีจะเป็นอย่างไรและนั่นคือสิ่งที่ฉันสนใจ "เขากล่าวเมื่อ 7 ปีก่อนในระหว่างการแทรกแซงครั้งหนึ่งของเขาในการประชุม Intel Open Source Technology Center

ก่อนหน้านี้คุณได้ทิ้งข้อเสนอที่คล้ายกันเพื่อแนะนำ C ++ ในแวดวงของภาษาที่อุทิศให้กับการพัฒนาไดรเวอร์สำหรับ Linux โดยเฉพาะอย่างยิ่งมันเน้นความสามารถในการทำความสะอาดเชิงวัตถุด้วย C มากกว่า C ++

โครงการริเริ่มของ Alex Gaynor และ Geoffrey Thomas ยังคงเป็นโครงการที่ยอดเยี่ยมในหลายแกน ตัวอย่างเช่นทีมวิจัยเน้นย้ำถึงความจำเป็นในการพัฒนาไดรเวอร์สำหรับระบบไฟล์และอุปกรณ์เฉพาะประเภทต่อไป

จากนั้นเราจะต้องดูว่า เนื้อหาสามารถโน้มน้าวใจได้ra ผู้ดูแลระบบ Linux


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา