การจัดการการสวมใส่แฟลช

ที่จัดเก็บข้อมูลภายในของ Android Automotive ใช้หน่วยความจำแบบแฟลชที่มีรอบการลบและการเขียนนับพันรอบ หากหน่วยความจำแฟลชไม่ทำงาน ระบบอาจใช้งานไม่ได้ เนื่องจากยานพาหนะมีอายุการใช้งานยาวนาน (โดยปกติจะนานกว่า 10 ปี) หน่วยความจำแฟลชจึงต้องมีความเสถียรสูง หน้านี้จะอธิบายถึงลักษณะการทำงานของหน่วยความจำแฟลชและวิธีที่ OEMS สามารถลดความเสี่ยงที่อุปกรณ์หน่วยความจำแฟลชจะทำงานล้มเหลว

ประสิทธิภาพหน่วยความจำแฟลช

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

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

สูตรระยะเวลาหน่วยความจำแฟลชสามารถคำนวณได้โดยใช้สูตรนี้

$$ \frac{Max\ erase\ cycles * Storage\ capacity}{Data\ written\ per\ year} = {Flash\ memory\ lifespan\ in\ years} $$

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

หากต้องการตรวจหาความล้มเหลวของหน่วยความจำแฟลชที่อาจเกิดขึ้นได้ก่อนที่จะเกิดขึ้นจริง ควรมีการตรวจสอบประสิทธิภาพการทำงานของพื้นที่เก็บข้อมูลที่เหมาะสมเป็นส่วนหนึ่งของการตรวจสอบความสมบูรณ์ของระบบโดยรวม

ใช้หน่วยความจำแฟลช

Android Automotive รองรับฟีเจอร์ที่ช่วยให้ OEM ปกป้องและตรวจสอบที่จัดเก็บข้อมูลภายในของระบบเพื่อยืดอายุการใช้งาน

ลดการสึกหรอของแฟลช

OEM ที่กังวลเรื่องการสึกหรอของแฟลชบนที่จัดเก็บข้อมูลภายในสามารถเพิ่มการ์ด SD เร็วพอที่จะใช้เป็นพื้นที่เก็บข้อมูลที่ใช้งาน การ์ด SD ควรมีพร็อพเพอร์ตี้ต่อไปนี้

  • เมื่อใช้ การ์ด SD จะได้รับการเข้ารหัสและมีความปลอดภัยในการจัดเก็บข้อมูลแอป
  • ช่องเสียบการ์ด SD ต้องอยู่ในตำแหน่งที่ปลอดภัย (ผู้ใช้ไม่ควรนำการ์ด SD ออกบ่อยๆ)
  • ใช้การ์ด SD เพื่อโอนข้อมูลระหว่างระบบ Automotive และคอมพิวเตอร์ไม่ได้
  • การดีดการ์ด SD ออกจะไม่ส่งผลต่อระบบที่ทำงานอยู่ แต่ก็ไม่ควรนำออกเว้นแต่จำเป็นต้องเปลี่ยนใหม่

แอปในการ์ด SD

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

<bool name="config_allow3rdPartyAppOnInternal">false</bool>

หากต้องการตรวจสอบว่าแอปของบุคคลที่สาม (ซึ่งนักพัฒนาแอปเกี่ยวกับรถยนต์สร้าง) ติดตั้งในการ์ด SD ได้ หากเป็นข้อบังคับสำหรับรถ นักพัฒนาแอปรถยนต์ต้องใส่ android:installLocation=["auto" | "preferExternal"] ในไฟล์ Manifest ของแอป

หากรถยนต์ไม่อนุญาตให้ติดตั้งแอปของบุคคลที่สามในที่จัดเก็บข้อมูลภายใน การติดตั้งแอปจะ ล้มเหลวโดยไม่มีแฟล็กนี้ (หรือหากมีการกำหนดการตั้งค่า installLocation=internalOnly ไว้)

รับเมตริกดิสก์

AAOS 13 เปิดตัวการรวบรวมเมตริกและการตรวจสอบการใช้งานหน่วยความจำแฟลชมากเกินไปโดยเป็นส่วนหนึ่งของ Watchdog โปรดดูรายละเอียดที่หัวข้อตรวจสอบการใช้งานหน่วยความจำแฟลช

Android 8 เปิดตัวพื้นที่เก็บข้อมูล ซึ่งเป็นบริการของระบบที่สุ่มตัวอย่างและเผยแพร่เมตริกของดิสก์และหน่วยความจำ Flash เช่น ข้อมูลเกี่ยวกับการใช้งานดิสก์โดยรวม การประมาณอายุการใช้งานของหน่วยความจำแฟลช และสถิติ I/O ของดิสก์แอป OEM จะใช้ข้อมูลนี้เพื่อเตือนผู้ใช้เมื่อที่จัดเก็บข้อมูลภายในเริ่มล้มเหลวหรือเมื่อแอปบางแอปดำเนินการ I/O ดิสก์มากเกินไป โปรดดูรายละเอียดที่หัวข้อใช้พื้นที่เก็บข้อมูล