LCM-Server and Client Concept#
The Life Cycle Manager (LCM) client-server architecture manages power state transitions and lifecycle events in a DriveOS environment. This framework ensures coordinated system-level and Virtual Machine-level operations during boot, shutdown, suspend, resume, and special power modes like surveillance. In addition, it manages the functional state of the Guest OS by interacting with NvDVMS.
LCM Server#
The LCM Server is the central coordinator for system-level lifecycle management.
Key Characteristics:
Runs on a privileged guest Virtual Machine (either Linux or QNX). If a privileged Virtual Machine is rebooted, the entire SoC must be power-cycled.
Interacts with all LCM-Clients in the Guest OS, FSI, and MCU. It also interacts with PM Server (via the library interface provided in the privileged Guest OS).
Acts as the central coordinator for system-level lifecycle management.
Collects Guest Virtual Machine functional state information from all LCM Clients and broadcasts transitions as needed.
Initiates SoC operational mode (SOC_OP) transitions such as shutdown, suspend, or surveillance mode.
Communicates with MCU and FSI (Safety processor) for system-level events and fail-safe operations.
Monitors Virtual Machine health and performs corrective actions.
LCM Client#
The LCM Client manages Virtual Machine level lifecycle operations.
Key Characteristics:
Runs within each Guest OS, MCU and FSI (and optionally AuxP).
Interfaces with user applications to manage initialization, various Virtual Machine power state, and functional state transitions.
Interacts with NvDVMS to request functional state and power state transition within a Guest OS (for Linux and QNX cases).
Handles Virtual Machine level lifecycle actions such as:
Init Completion (INIT_DONE)
Suspend Virtual Machine
Resume After Suspend
DeInit for Suspend
Deinit for Shutdown
Operational state of Virtual Machine
Publishes Virtual Machine state to the LCM Server and receives system-level power transition messages.
Responds to heartbeat checks for health monitoring.