Why


The ADAS/AD challenge
Learn about the challenges of developing safe ADAS/AD vehicle functions


The AD Cycle - How it works
Learn about the AD Cycle works for efficient ADAS/AD development


Benefits of ETAS Deterministic Middleware Solution
See why the worlds top automotive OEMs choose us

Solution concepts


System representation concepts
Fundamental concepts to construct ADAS / AD systems


YAAA Modeling Concepts and Workflow
YAML-based concepts and workflows to model ADAS / AD systems


Deterministic Recompute and Virtual Drives
The 🔑 to development efficiency


Scheduling Mechanisms in ETAS DMS
Achieving optimal compromises between latency and predictability

Basics


Determinism
Gain deeper understanding on determinism in embedded real-time systems


Differences of μC and μP-based embedded systems
Why achieving deterministic behavior μP-based embedded systems is a challenge


Glossary
Understand the terms and abbreviations used in ETAS Deterministic Middleware Solution

Products


ETAS DMS Software Development Kit
Design, develop, build, debug and test ADAS/AD applications

ETAS DMS Middleware & Runtime Libraries
Safety-certified middleware and runtime libraries for series production

For whom


Software Architects
Architecture-as-code. Git-based collaboration. Auto-generated graphics.


Feature Developers
Reduced development complexity. Fast debugging with real vehicle data.

Services


Trainings
Get up to speed on developing with ETAS Deterministic Middleware Solution through our expert trainings


Consultancy
Want to know how to best make use of ETAS Deterministic Middleware Solution for your ADAS/AD platform or project?


Proof of Concept (PoC)
See one of your ADAS/AD vehicle functions developed with ETAS Deterministic Middleware Solution


Custom Project
Have a special need or require an extension to ETAS Deterministic Middleware Solution?

Support


FAQs
Get answers to frequently asked questions about ETAS Deterministic Middleware Solution


Contact
Get in touch with an expert to obtain support

Infos and news about ETAS Deterministic Middleware Solution


Blog
Get the latest news about ETAS Deterministic Middleware Solution


Newsletter
Get the latest news about ETAS Deterministic Middleware Solution delivered to your email inbox


Whitepapers
Read in-depth information, analysis, and insights from our experts

Execution and State ManagEment (ESME)

ESME is a daemon process designed for initiating, overseeing, and controlling ETAS DMS processes such as activities and gateways. Residing in the middleware domain, ESME plays an important role in orchestrating the interactions between various components within the ETAS DMS SDK.

Features of ESME

  • Dynamic Process Control: ESME dynamically starts, monitors, and manages ETAS DMS processes based on a comprehensive manifest. This manifest, generated by YAAAC, includes essential information such as executable paths, parameters, dependencies, and scheduling details.
  • Communications Initialization: Serving as the communication hub, ESME initializes the connections between processes, facilitating seamless interactions. It ensures the smooth flow of information within the ETAS DMS ecosystem.
  • Flexible Interface: ESME provides a flexible interface for external clients, enabling them to request state changes or gather health and status information. This interface proves invaluable for co-existing middleware systems to interact with ESME effectively.
  • Manifest File Management: A human-readable JSON manifest file, output from YAAAC, encapsulates critical details for starting ETAS DMS activities and gateways. This includes executable paths, command line arguments, dependencies, thread and core affinities, process budgets, and error-handling actions.
  • Run Group Management: ESME introduces the concept of "Rungroups," allowing the grouping of activities and gateways for cohesive control. The Run Group Manager facilitates seamless transitions between system states, ensuring the correct Rungroups are activated based on the current state.
  • Execution Management: The Execution Management component authenticates executables, sets process permissions, and allocates resources in alignment with the specifications outlined in the manifest file.
  • Health Monitoring: ESME's Health Management component actively monitors the health of activities and gateways, reporting relevant information through the Esme Interface. It reacts to process errors based on predefined actions, offering configurable responses like process restarts.
  • SDK Integration: ESME provides an SDK for constructing specialized activities and gateways, namely "Esme Interface Activity" (EIA) and "Esme Interface Gateway" (EIG). These components utilize SDK APIs to interact with ESME's Run Group Manager, facilitating seamless integration with co-existing middleware systems.