AAOS SDV terminology and glossary

This page defines key terms used throughout the Android Automotive OS (AAOS) Software Defined Vehicle (SDV) documentation and maps standard automotive industry concepts to their corresponding AAOS SDV concepts.

Map automotive industry concepts to AAOS SDV

The following table maps standard automotive industry architectures, protocols, and specifications to their closest corresponding AAOS SDV concepts:

Industry standard or concept Corresponding AAOS SDV concept Role and documentation
Automotive Open System Architecture (AUTOSAR) Software Component (SWC) or Adaptive Application Service bundle Independently deployable domain module (.apex) encapsulating related business logic and communication endpoints (RPC servers, clients, publishers, and subscribers). See Logical architecture.
AUTOSAR Adaptive ara::com interface definition VSIDL (.vsidl) and protocol buffers (.proto) Declarative service and message schemas compiled by vsidlc into Rust client library bindings. See VSIDL and middleware overview.
Scalable service-Oriented MiddlewarE over IP (SOME/IP) and SOME/IP Service Discovery (SD) SOME/IP transport and ISomeIpStack Cross-ECU remote procedure call (RPC) and publish-subscribe transport supported through custom partner stacks (ISomeIpStack Stable AIDL) or Connected Vehicle Systems Alliance (COVESA) vsomeip. See SOME/IP integration overview.
COVESA Vehicle Signal Specification (VSS) VHAL properties and VSIDL catalogs Standardized vehicle signals exposed on In-Vehicle Infotainment (IVI) through vehicle hardware abstraction layer (VHAL) and bridged to SDV services. See Use the SDV Gateway on IVI.
Electronic control unit (ECU) AAOS SDV instances running in virtual machines (VMs) on a hypervisor Isolated guest VMs running the headless AAOS SDV core profile, communicating over VirtIO sockets (vsock) or Ethernet. See AAOS SDV system architecture.
ISO 26262 / ASIL instrument cluster and telltale manager Display Safety and high availability renderer (HAR) Isolated rendering pipeline and DriverUI architecture for safety-critical instrument cluster telltales and rear camera views. See Display Safety.

Glossary terms

Android Automotive OS (AAOS) SDV core profile
A lightweight headless system, which contains connectivity and orchestration capabilities and core automotive services.
Android OS
The Android operating system used in mobile devices, such as in mobile phones and tablets.
catalog
A directory that contains all the protobuf and VSIDL files that define a vehicle's service interfaces. The VSIDL compiler accepts a catalog directory as input and generates code for all files within it.
dependency catalog
The dependency catalog specifies the locations of external definitions defined in VSIDL or protobuf files. No code is generated for dependencies. The VSIDL compiler takes the dependency catalog path as input.
electronic control unit (ECU)
A module controlling one of the vehicle subsystems (for example, engine, body, or connectivity). Its computing part can be as straightforward as a small microcontroller or as advanced as a full Linux computer, sometimes with several SoCs. To learn more, see Electronic control unit.
middleware client library
A client library (also called clientlib) that provides high-level APIs for interacting with the SDV communications stack. This library hides the details of service registration and discovery, allowing developers to focus on topics and channels. clientlib APIs are designed to work with endpoint descriptors generated from the VSIDL code generator (vsidlc), which significantly reduces manual setup errors and accelerates development.
protocol buffers (protobuf)

Protocol buffers are a language-neutral, platform-neutral, extensible mechanism for describing and serializing structured data.

Protobuf files have an extension of .proto and define the structure of messages (data) exchanged between services. These files also specify the data types, fields, and relationships within the messages.

SDV agent

A privileged application running on the SDV system and providing the core SDV functionality. SDV agents behave like Linux daemons, which are applications that run throughout the lifetime of the operating system and provide some low-level functionality. Each core SDV component can provide none, one, or more than one agent.

SDV instance (SDV VM)

A singular instance of the AAOS SDV core profile, running in a virtual machine (VM) on a system on a chip (SoC) or in a virtual environment. Most likely, multiple SDV instances run in a single automotive vehicle, which together form a complete AAOS SDV deployment.

SDV package

The smallest unit of SDV software that can be updated. A SDV package can consist of multiple service bundles.

SDV platform

The SDV platform that comprises the SDV core profile as a platform for service developers to build services against and on which to run the services.

SDV platform developer

An engineer who integrates, configures, and maintains the underlying AAOS SDV core profile, VMs, and system infrastructure—analogous to an Android platform developer on In-Vehicle Infotainment (IVI) systems. Key responsibilities include:

  • Configuring process and VM isolation mechanisms, security policies, and resource scheduling for SDV services.
  • Integrating the transport stack (such as SOME/IP or VirtIO) and ensuring network addressability across ECUs and VMs.
  • Managing how service bundles (.apex packages) are provisioned, loaded, and updated by the SDV orchestrator.
SDV service developer

An engineer who builds domain-specific vehicle functionality as modular service bundles running on top of the SDV platform—analogous to an Android app developer on IVI systems, but creating headless vehicle services rather than user interface (UI) apps. Key responsibilities include:

  • Defining service interfaces and data structures using VSIDL (.vsidl) and protocol buffers (.proto).
  • Implementing domain business logic using generated Rust client library bindings (RPC servers, clients, publishers, and subscribers).
  • Packaging, testing, and deploying service bundles independently of the underlying platform image.
service bundle

An independently deployable module of related business logic that encapsulates a specific domain capability and enforces strict authorization boundaries.

service discovery

An SDV agent that enables discovery of services and communication endpoints.

service oriented architecture (SOA)

A style of computer software where services are provided to the other components by application components, through a communication protocol over a network.

service unit

An underlying endpoint entity of the SDV communications stack (such as an RPC server or topic publisher) declared within a service bundle. The middleware client library handles service unit registration and discovery automatically.

topic

A named communication path for data-oriented messages (Publish/Subscribe). Topics are identified by strings and carry messages of a specific type. Topics enable many-to-many communication, allowing multiple publishers and subscribers for the same topic.

channel

A named communication path for RPC services. Channels allow multiple instances of the same service type to be distinguished (for example, main-control, high-priority).

software defined vehicle (SDV)

An external facing term for the solution in the code and documentation. For reference, see Software-defined vehicles: How open source fuels innovation.

system on a chip (SoC)

An integrated circuit that integrates all components of a computer or other electronic system into a single chip. These components typically include a central processing unit (CPU), memory, input/output ports, and secondary storage. To learn more, see System on a chip.

telematic control unit (TCU)

An ECU responsible for off-board communication peripherals, such as GSM/LTE, Wi-Fi, GNSS, or Bluetooth. To learn more, see Telematic control unit.

Vehicle Service Interface Definition Language (VSIDL)

VSIDL is a domain-specific language designed to define the interfaces and interactions between services within a vehicle's software system.

VSIDL files describe service bundles, their capabilities, and the messages they exchange. They define the structure of the vehicle's software architecture.

VSIDL files have an extension of .vsidl.