רכב

סמל HAL של רכב אנדרואיד

תת-מערכות רבות של מכוניות מתחברות זו לזו ועם מערכת המידע והבידור לרכב (IVI) באמצעות טופולוגיות אוטובוסים שונות. סוג האוטובוס והפרוטוקולים המדויקים משתנים מאוד בין יצרנים (ואפילו בין דגמי רכב שונים של אותו מותג); דוגמאות כוללות אפיק של Controller Area Network (CAN), אפיק של רשתות חיבור מקומיות (LIN), Media Oriented Systems Transport (MOST), כמו גם רשתות Ethernet ו-TCP/IP כגון BroadR-Reach.

שכבת הפשטת החומרה של Android Automotive (HAL) מספקת ממשק עקבי למסגרת אנדרואיד ללא קשר לשכבת התחבורה הפיזית. רכב HAL זה הוא הממשק לפיתוח יישומי Android Automotive.

משלבי מערכות יכולים ליישם מודול HAL לרכב על ידי חיבור ממשקי HAL לפלטפורמה ספציפית (לדוגמה HVAC) עם ממשקי רשת ספציפיים לטכנולוגיה (למשל אפיק CAN). יישומים אופייניים עשויים לכלול יחידת מיקרו-בקר ייעודית (MCU) המפעילה מערכת הפעלה קניינית בזמן אמת (RTOS) עבור גישה לאוטובוס CAN או דומה, אשר עשויה להיות מחוברת באמצעות קישור טורי למעבד המריץ Android Automotive. במקום MCU ייעודי, ייתכן שיהיה אפשר גם ליישם את גישת האוטובוס כמעבד וירטואלי. זה תלוי בכל שותף לבחור את הארכיטקטורה המתאימה לחומרה כל עוד היישום עומד בדרישות הממשק עבור HAL הרכב.

ארכיטקטורה

HAL הרכב הוא הגדרת הממשק בין המכונית לשירות רשת הרכב:

ארכיטקטורת HAL לרכב אנדרואיד

איור 1 . ארכיטקטורת רכב HAL ואנדרואיד

  • API לרכב . מכיל את ממשקי ה-API, כולל CarSensorManager . לפרטים על ממשקי API נתמכים, ראה /platform/packages/services/Car/car-lib .
  • CarService . נמצא בכתובת /platform/packages/services/Car/ .
  • רכב HAL . ממשק שמגדיר את מאפייני הרכב שיצרני OEM יכולים ליישם. מכיל מטא נתונים של מאפיין (לדוגמה, האם מאפיין הרכב הוא int ואיזה מצבי שינוי מותרים). נמצא בכתובת hardware/libhardware/include/hardware/vehicle.h . ליישום עיון בסיסי, עיין hardware/libhardware/modules/vehicle/ .

לפרטים נוספים, ראה מאפייני רכב .

בִּטָחוֹן

ה-HAL של הרכב תומך ברמות האבטחה האלה בעת גישה לנתונים:

  • נגיש לאפליקציה באישור (דרך שירות רכב).
  • נגיש ללא רשות (באמצעות שירות רכב).

גישה ישירה למאפייני הרכב מותרת רק לרכיבי מערכת נבחרים עם רשת רכב עם הגנת גישה של selinux. רוב היישומים עוברים שמירת סף נוספת על ידי שירות רכב (לדוגמה, רק יישומי מערכת יכולים לשלוט ב-HVAC מכיוון שהם דורשים הרשאת מערכת המוענקת רק לאפליקציות מערכת).