DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_EXP_ARAComAPI FIG-d02cb273ea3bbe9a 932 × 372 px 10 Release(s)

Figure 7.12: Skeleton creation using abstract network bindings

SHA-256 Inhalts-Fingerabdruck: d02cb273ea3bbe9a7bdc66bc24a49ace313b396902909da560398b40931f45c4
✦ KI-generierte Bildanalyse & technische Beschreibung Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07

1. Diagrammtyp & Architektur-Kontext

  • Klassifikation: Technisches Architektur- und Mapping-Schema mit C++-Codesequenzen und zugehörigen Manifest-Projektionen (Design-to-Deployment-Mapping).
  • Architektur-Kontext: AUTOSAR Adaptive Platform, Service-Oriented Architecture (SOA), Subsystem ara::com (Communication Management).
  • Funktionaler Zweck: Veranschaulichung der protocol-agnostic Skeleton-Instanziierung. Das Schema demonstriert, wie die C++-Applikationslogik über ara::core::InstanceSpecifier vollständig von konkreten Netzwerk- und Transport-Bindings (SOME/IP, lokales IPC) entkoppelt wird und wie ein unveränderter Applikations-Quellcode sowohl für Single-Binding- als auch für Multi-Binding-Szenarien eingesetzt wird.

2. Komponenten, Entitäten & Schnittstellen

  • Applikations-Entitäten (C++ Component Code):
    • ara::core::InstanceSpecifier: Stark typisierter Identifikator, der die logische Instanz eines PortPrototype (konkret PPortPrototype) aus dem AUTOSAR-Software-Modell kapselt (context + "MyPort" → modellierter Pfad "/x/y/z/MyPort").
    • RadarService serviceImpl(portName): Konkrete Service-Implementierungsklasse, abgeleitet vom generierten Skeleton-Interface (RadarServiceSkeleton). Der Konstruktor akzeptiert den InstanceSpecifier als Referenzanker.
  • Konfigurations-Entitäten (Deployment / Execution Manifest):
    • Single Binding: 1:1-Zuordnung des InstanceSpecifier zu genau einer Service-Instanzkonfiguration (z. B. Protokoll SOME/IP mit Service-Instance-ID 43).
    • Multiple Binding: 1:n-Zuordnung des identischen InstanceSpecifier auf mehrere heterogene oder redundante Bindings parallel:
      • SOME/IP:43 (externes Netzwerk, z. B. Gateway/Head-Unit)
      • SOME/IP:16 (parallele / alternative SOME/IP-Instanz)
      • UserDefined:/tmp/33 (ECU-internes IPC / UNIX Domain Socket / Shared Memory Endpoint)
  • Stereotypen & Kardinalitäten:
    • Der PPortPrototype (InstanceSpecifier) referenziert deklarativ 1 … n ProvidedServiceInstance-Deployments (SOME/IP, IPC, proprietäre Bindings).
    • Quellcode-Kardinalität: Exakt eine Skeleton-C++-Instanz bedient alle zugewiesenen Transport-Bindings simultan.

3. Dynamisches Verhalten & Sequenzablauf

  1. Instanziierung des Bezeichners: Erzeugung des ara::core::InstanceSpecifier zur Laufzeit unter Verwendung des vollqualifizierten Port-Pfades ("x/y/z/MyPort").
  2. Skeleton-Konstruktion: Übergabe des portName an den Konstruktor der Service-Implementierung (RadarService serviceImpl(portName)).
  3. Manifest-Lookup & Binding-Auflösung: Die zugrundeliegende ara::com-Laufzeitumgebung liest zur Konstruktionszeit die Deployment-Deskriptoren des Service-Instance-Manifests für den angegebenen InstanceSpecifier aus.
  4. Transport-Endpoint-Initialisierung:
    • Single-Binding-Pfad: Initialisierung des SOME/IP-Serializers und Registrierung des Sockets auf Instance-ID 43.
    • Multi-Binding-Pfad: Parallele Initialisierung aller konfigurierten Binding-Adapter (SOME/IP:43, SOME/IP:16 und lokales IPC /tmp/33).
  5. Dienst-Bereitstellung: Nach der Konstruktion (und dem Aufruf von OfferService()) nimmt der Skeleton Methodenaufrufe, Feldabfragen und Event-Subscriptions synchron oder asynchron über sämtliche gebundenen Kanäle entgegen.

4. Normative Relevanz & Entwickler-Hinweise

  • Code-Portabilität & Binding-Agnozismus: Applikations-Entwickler dürfen keinerlei Netzwerk-Parameter (IP-Adressen, SOME/IP-IDs, Socket-Pfade) im C++-Code verankern. Die Bindung erfolgt ausschließlich deklarativ im Manifest.
  • Zero-Code-Change bei Multi-Binding: Der Wechsel von Single-Binding (z. B. reines SOME/IP über Ethernet) zu Multi-Binding (z. B. simultan SOME/IP und POSIX-IPC für Hochgeschwindigkeitsdaten) erfordert keine Re-Kompilierung oder Anpassung des C++-Quellcodes, sondern rein die Anpassung des Deployment-Manifests.
  • Laufzeit-Fehlerbehandlung: Schlägt das Mapping des InstanceSpecifier fehl (z. B. Port im Manifest nicht konfiguriert oder Endpunkt blockiert), bricht der Konstruktor ab (je nach Plattformversion via ara::core::Result / Exception oder führt zu einem fatalen Initialisierungsfehler).
  • Thread-Safety & Nebenläufigkeit: Bei Multi-Binding können Methodenaufrufe simultan aus verschiedenen Binding-Stacks (z. B. gleichzeitig über SOME/IP und IPC) im selben Skeleton-Objekt eintreffen. Die Implementierung der Service-Methoden muss zwingend reentrant bzw. thread-safe ausgelegt sein.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Vorkommen in AUTOSAR-Releases (15)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R18-10_R4.4.0_R1.5.0 AUTOSAR_EXP_ARAComAPI S. 111 8.12 Figure 8.12: Skeleton creation using abstract network bindings
R18-10_R4.4.0_R1.5.0 AUTOSAR_EXP_ARAComAPI S. 111 8.12 Figure 8.12: Skeleton creation using abstract network bindings
R18-10-1 AUTOSAR_EXP_ARAComAPI S. 111 8.12 Figure 8.12: Skeleton creation using abstract network bindings
R19-03 AUTOSAR_EXP_ARAComAPI S. 111 8.12 Figure 8.12: Skeleton creation using abstract network bindings
R19-03 AUTOSAR_EXP_ARAComAPI S. 111 8.12 Figure 8.12: Skeleton creation using abstract network bindings
R19-11 AUTOSAR_EXP_ARAComAPI S. 113 9.12 Figure 9.12: Skeleton creation using abstract network bindings
R20-11 AUTOSAR_EXP_ARAComAPI S. 119 9.12 Figure 9.12: Skeleton creation using abstract network bindings
R20-11 AUTOSAR_EXP_ARAComAPI S. 119 9.12 Figure 9.12: Skeleton creation using abstract network bindings
R21-11 AUTOSAR_EXP_ARAComAPI S. 119 9.12 Figure 9.12: Skeleton creation using abstract network bindings
R21-11 AUTOSAR_EXP_ARAComAPI S. 119 9.12 Figure 9.12: Skeleton creation using abstract network bindings
R22-11 AUTOSAR_EXP_ARAComAPI S. 144 7.12 Figure 7.12: Skeleton creation using abstract network bindings
R23-11 AUTOSAR_AP_EXP_ARAComAPI S. 136 7.12 Figure 7.12: Skeleton creation using abstract network bindings
R23-11 AUTOSAR_AP_EXP_ARAComAPI S. 136 7.12 Figure 7.12: Skeleton creation using abstract network bindings
R24-11 AUTOSAR_AP_EXP_ARAComAPI S. 140 7.12 Figure 7.12: Skeleton creation using abstract network bindings
R25-11 AUTOSAR_AP_EXP_ARAComAPI S. 124 7.12 Figure 7.12: Skeleton creation using abstract network bindings