Google พัฒนา Bluetooth Stack ใหม่สำหรับ Android เขียนด้วย Rust

Rust ได้เริ่มต้นขึ้นพร้อมกับความนิยมที่เพิ่มขึ้น ส่วนใหญ่โดย บริษัท เทคโนโลยีขนาดใหญ่และโซลูชันที่ใช้ในวงกว้าง ตามการสนับสนุนในสาขา Linux-Nextพื้นที่รอการแก้ไขสำหรับหน้าต่างการผสานเคอร์เนลถัดไปในเดือนนี้ Google เปิดเผย สัปดาห์นี้อะไร Gabeldorsche เวอร์ชันใหม่ของ Android Bluetooth stack เขียนด้วย Rust

ข่าวนี้เกิดขึ้นประมาณสองเดือนหลังจากที่ Google เข้าร่วม Rust Foundation เนื่องจากในที่เก็บ Git ที่มีซอร์สโค้ดสำหรับ Android นั้น Google ได้ประกาศว่าเวอร์ชันใหม่ของ Gabeldorsche ซึ่งเป็นบลูทู ธ สแต็กที่ใช้ใน Android ตั้งแต่เวอร์ชัน 11 ได้รับการเขียนใหม่ด้วย สนิม.

รายละเอียดของโครงการยังขาดหายไป มีเฉพาะคำแนะนำในการติดตั้งเท่านั้น

“ ปัจจุบันส่วนประกอบ Rust ถูกสร้างขึ้นแตกต่างกันบน Android และ Linux เราขาดการสนับสนุน Rust ใน GN toolchain ของเรา ดังนั้นเราจึงกำลังสร้างห้องสมุด Rust …” ทีมงานกล่าว

ในความเป็นจริงแม้จะมีการใช้งานทั่วไป บลูทู ธ ยังคงเป็นเทคโนโลยีที่ไม่สอดคล้องกับระบบปฏิบัติการและอุปกรณ์บางอย่าง จัดการได้ดีกว่าคนอื่น ๆ ซอฟต์แวร์ที่รับผิดชอบในการจัดการส่วนที่เคลื่อนไหวจำนวนมากของการเชื่อมต่อบลูทู ธ โดยทั่วไปเรียกว่าบลูทู ธ "สแต็ก"

หลายปีที่ผ่านมา Android ใช้ "ฟลูออไรด์" สำหรับความต้องการบลูทู ธ แต่ด้วย Android 11 Google ได้เริ่มทดสอบสแต็กใหม่ที่เรียกว่า Gabeldorsche หรือเรียกสั้น ๆ ว่า "GD" Gabeldorsche อยู่ระหว่างการพัฒนาตั้งแต่ปี 2019 แต่ Google เปิดตัวสู่สาธารณะเป็นครั้งแรกในปี 2020

อ้างอิงจาก Google Gabeldorsche ได้รับการออกแบบมาเพื่อให้เครือข่ายบลูทู ธ มีความเสถียรซึ่งจะช่วยปรับปรุงการเชื่อมต่อ ของอุปกรณ์เคลื่อนที่ที่มีระบบอัตโนมัติภายในบ้านหรืออุปกรณ์ประเภทอื่น ๆ

“ ความปลอดภัยของหน่วยความจำเป็นความท้าทายอย่างต่อเนื่องสำหรับนักพัฒนาซอฟต์แวร์โดยเฉพาะผู้ที่ทำงานกับโปรแกรมระบบ Google ได้เริ่มใช้ Rust ในบริบทที่ความปลอดภัยและประสิทธิภาพของหน่วยความจำเป็นข้อพิจารณาที่สำคัญโดยเฉพาะอย่างยิ่งในระบบ Android หลัก ๆ ” บริษัท อธิบาย

สำหรับตอนนี้, รหัสสนิมทั้งหมดสามารถรวบรวมได้โดยใช้ Cargo. อย่างไรก็ตามทีมงานได้กล่าวเพิ่มเติมว่ามีการอ้างอิงที่จำเป็น: คุณต้องติดตั้งแพ็คเกจ "protobuf-compiler", มี "Cargo + Rust" เวอร์ชันล่าสุดและใช้ "build.py" ในรูท

ควรสังเกตว่าในแบบคู่ขนานสำหรับ Fuchsia OS มีการพัฒนาบลูทู ธ สแต็กอื่นซึ่งมีการพัฒนาภาษา Rust ด้วยเช่นกัน

นอกจากนี้กลุ่มเครือข่ายใหม่ Netstack3 ได้รับการเขียนขึ้นสำหรับ Fuchsia in Rust และไม่เพียงเท่านั้นนี่คือตัวอย่างบางส่วนของโครงการที่ Google ใช้ Rust อยู่แล้วหรือมีส่วนร่วมในระบบนิเวศของ Rust:

  • โมดูลระบบปฏิบัติการ Android รวมถึง Bluetooth และ Keystore 2.0
  • โปรเจ็กต์ระดับต่ำเช่นการตรวจสอบเครื่องเสมือน crosvm (ทางเลือกของ QEMU) และไดรเวอร์ที่ใช้ใน Chrome OS
  • การมีส่วนร่วมในโครงการโอเพ่นซอร์สที่ใช้ Rust เช่นระบบควบคุมแหล่งที่มาของ Mercurial
  • เฟิร์มแวร์ที่รองรับคีย์ความปลอดภัย FIDO

นอกจากนี้ Binder กลไกการสื่อสารระหว่างกระบวนการ (IPC) ที่ใช้ใน Android ยังเขียนใหม่ใน Rust เช่นเดียวกับสแต็กเครือข่ายใหม่ Netstack3 เขียนด้วย Rust for Fuchsia ตามที่ Google กล่าวว่า Fuchsia เป็นระบบปฏิบัติการการผลิตแบบโอเพนซอร์สที่ให้ความสำคัญกับความปลอดภัยการอัปเดตและประสิทธิภาพ

ตามที่ บริษัท กล่าวว่า Fuchsia เป็นรากฐานสำหรับนักพัฒนาในการสร้างผลิตภัณฑ์และประสบการณ์ที่ยั่งยืนบนอุปกรณ์ที่หลากหลาย

"ชุดของหลักการทางสถาปัตยกรรมพื้นฐานที่ปลอดภัยอัพเกรดได้รวมและใช้งานได้จริงเป็นแนวทางในการออกแบบและพัฒนา Fuchsia" บริษัท เขียนไว้ในเว็บไซต์เกี่ยวกับระบบปฏิบัติการ แม้ว่าจะมีการเสนอกรอบเพื่อเป็นแนวทางในการออกแบบของคุณ แต่ Fuchsia ยังอยู่ระหว่างดำเนินการ

มีข่าวลือว่าจะมาแทนที่ Android และ Chrome OS อย่างไรก็ตาม Google กล่าวในเดือนกรกฎาคม 2019 ว่าเจตนาที่จะไม่แทนที่ระบบปฏิบัติการทั้งสองนี้ แต่เป็นเพียง "การทดสอบแนวคิดใหม่"


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

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

*

*

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

  1.   หม้อแปลงไฟฟ้​​า dijo

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