ניהול בלאי פלאש

האחסון הפנימי של Android Automotive משתמש בכרטיס MultiMediaCard (eMMC) משובץ עם אלפי מחזורי מחיקה/כתיבה; אם ה-eMMC נכשל, המערכת עלולה להפוך לבלתי שמישה. מכיוון שלרכבים תוחלת חיים ארוכה (בדרך כלל 10+ שנים), ה-eMMC חייב להיות אמין ביותר. דף זה מתאר התנהגות eMMC וכיצד יצרני OEM יכולים להפחית את הסיכון לכשל eMMC (ובכך להימנע ממערכות כושלות של Android Automotive).

התנהגות eMMC

מכשירי eMMC משתמשים בטכניקות פילוס בלאי כדי לעקוף מגבלות מחיקה/כתיבה על ידי סידור נתונים והפצת כתיבה באופן שווה על פני המערכת (כך שאף בלוק אחד לא נכשל עקב כתיבה אינטנסיבית). אורך החיים המשוער של eMMC תלוי ב:

  • כמות הכתיבה . בטלפונים, כמות הנתונים הנכתבים לאחסון הפנימי יכולה להיות יותר מ-10 GB ליום. על יישומי רכב, אין לנו נתונים מהעולם האמיתי על כמה נתונים ייכתבו בגלל אפליקציות מוגבלות. עם זאת, כאשר משתמשים מזרימים מוזיקה באיכות גבוהה ומשתמשים בניווט, אנו רואים נתונים של 50 מגה-בייט שנכתבים ל-eMMC בכל דקה. בעתיד, ייתכן שיהיו לנו סוגים אחרים של אפליקציות עתירות כתיבה, כגון אפליקציות מצלמות לוח המחוונים שמקליטות ומאחסנות סרטונים ללא הרף. בנוסף, חלק מהמכוניות הן כלי רכב משותפים המשמשים שעות רבות מדי יום. מסיבות אלו ואחרות, אנו מצפים שיישומי Android Automotive יהיו בעלי יותר כתיבה eMMC מאשר טלפון.
  • כתוב דפוסים . כתיבה ומחיקות נעשות בבלוקים. כתיבת נתונים לעתים קרובות בנתחים קטנים לובשת את ה-eMMC מהר יותר מאשר כתיבת אותה כמות נתונים בתדירות נמוכה יותר ובנתחים גדולים יותר.
  • גודל זמין של eMMC . גודל אחסון גדול יותר אומר שאלגוריתם פילוס הבלאי יכול לפזר את הכתיבה על פני מספר גדול יותר של בלוקים.
  • ללבוש טכניקות פילוס.
  • גורמים סביבתיים . דוגמאות כוללות טווח טמפרטורות הפעלה של בדרך כלל -20 עד 85 צלזיוס; טמפרטורה מעבר לטווח זה עשויה לקצר עוד יותר את תוחלת החיים של ה-eMMC.

עבור eMMC עם 16 GB שטח שמיש ומחזורי מחיקה/כתיבה של 3k, אנו מעריכים את הדברים הבאים:

כותב מדי יום 16 ג'יגה 32 ג'יגה-בייט
זמן חיים משוער 10 שנים 5 שנים

עם זאת, המערכת תפסיק לתפקד כראוי הרבה לפני שה-eMMc יתבלה לחלוטין, מכיוון שגודל האחסון השמיש יורד, ול-eMMC עשוי להיות אורך חיים קצר עוד יותר בהתאם לטכניקות הרמה ודפוסי הכתיבה שבהם נעשה שימוש. בנוסף, הערכה זו אינה מביאה בחשבון את ההשפעות של אפליקציות שגויות או זדוניות, שעלולות לתקוף מערכות רכב על ידי כתיבת בלוקים גדולים של נתונים זבל ל-eMMC ללא הרשאות מיוחדות.

כדי לזהות את כשל ה-eMMC האפשרי לפני שהוא מתרחש בפועל, יש לבנות ניטור תקינות אחסון מתאים כחלק מניטור תקינות המערכת הכולל

יישום

Android O תומך בתכונות המאפשרות ליצרני OEM להגן ולנטר את האחסון הפנימי של Android Automotive ולהאריך את תוחלת החיים שלו.

הגבל אפליקציות של צד שלישי

כדי להגן על האחסון הפנימי של מערכת Android Automotive, Android O מאפשר ליצרני ציוד מקורי להגדיר אם ניתן להתקין אפליקציות צד שלישי באחסון הפנימי (אפליקציות יכולות לכתוב רק למחיצה שבה הן הותקנו). כדי להגדיר את התצורה, הגדר את התצורה הבאה בשכבת העל של המשאבים:

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

הפחת את שחיקת הבזק

יצרני ציוד מקורי המודאגים מבלאי פלאש באחסון פנימי יכולים גם להוסיף כרטיס SD שהוא מהיר מספיק כדי לשמש כאחסון מאומץ. לכרטיס ה-SD יש את ההתנהגות הבאה:

  • כאשר מאומץ, כרטיס ה-SD מוצפן ובטוח לאחסון נתוני אפליקציה.
  • חריץ כרטיס SD חייב להיות במקום בטוח (משתמשים לא צפויים להסיר את כרטיס ה-SD לעתים קרובות).
  • לא ניתן להשתמש בכרטיס SD להעברת נתונים בין מערכות רכב למחשב.
  • הוצאת כרטיס ה-SD אינה משפיעה על מערכת פועלת. עם זאת, אין להסיר אותו אלא אם כן צריך להחליף אותו.

כדי להבטיח שאפליקציות צד שני (אלה שנבנו על ידי מפתחי אפליקציות לרכב) ניתנות להתקנה על כרטיס SD אם המכונית מחייבת, מפתחי אפליקציות לרכב חייבים לכלול android: installLocation =["auto" | "preferExternal"] בקובץ המניפסט של האפליקציה.

אם המכונית אינה מאפשרת התקנת אפליקציות של צד שלישי באחסון פנימי (כמתואר ב'הגבלת אפליקציות צד שלישי' ), ללא הדגל הזה (או אם מוגדרת ההגדרה installLocation =internalOnly ), התקנת האפליקציה נכשלת.

קבל מדדי דיסק עם אחסון

Android O מציגה Storaged , שירות מערכת חדש שדוגם ומפרסם מדדי דיסק ו-eMMc כגון מידע על השימוש הכולל בדיסק, אומדן לכל החיים של eMMC וסטטיסטיקות I/O של דיסק לכל אפליקציה. יצרני ציוד מקורי יכולים להשתמש במידע זה כדי להזהיר משתמשים כאשר האחסון הפנימי מתחיל להיכשל או כאשר יישומים ספציפיים מבצעים יותר מדי I/O של דיסקים. לפרטים, עיין ביישום מאוחסן .

מַתַן תוֹקֵף

תכונה זו נבדקת בבדיקות PackageManager .