DEENESPTFRRUARHIKOZHNL

class ara::shwa::CpuSelector

Diese Seite wurde vollständig KI-generiert auf Basis von SWS Safe Hardware Acceleration (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.

[AP_SWS_SHWA_00408] Wortlaut noch nicht übernommen Upstream: RS_SHWA_00006

class CpuSelector : public DeviceSelector {...};

Die Spezifikation definiert diesen Klassentyp mit der gezeigten Schnittstelle.

Header-Datei#include "ara/shwa/device_selector.h"
Scopenamespace ara::shwa

User GuideKI-GENERIERT

Ermöglicht die Bewertung und gezielte Auswahl von Hardware-Geräten anhand einer Selektor-Strategie.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 89675708a89b Herkunft Offene Fragen (3)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Ermöglicht die Bewertung und gezielte Auswahl von Hardware-Geräten anhand einer Selektor-Strategie.

Die Klasse ara::shwa::CpuSelector dient im Modul shwa der Bewertung und gezielten Auswahl von Hardware-Geräten gemäß einer spezifischen Selektor-Strategie [AP_SWS_SHWA_00410]. Anwendungssoftware kann einzelne Gerätekandidaten über operator() bewerten oder über die Methode SelectDevice() unmittelbar ein geeignetes Zielgerät ermitteln [AP_SWS_SHWA_00409]. Als wesentliche Randbedingungen sind die Schnittstellen nicht threadsicher spezifiziert, bieten keine Rollback-Semantik und übermitteln potenzielle Fehler wie belegte Ressourcen ausschließlich über ara::core::Result.

Kontext

Die Klasse ara::shwa::CpuSelector ist Bestandteil des Moduls für Hardware-Beschleunigung (shwa) innerhalb der AUTOSAR Adaptive Platform. Sie leitet sich von der Basisschnittstelle DeviceSelector ab und spezialisiert die funktionale Auswahl von Ausführungsgeräten. Ihre primäre Verantwortung besteht darin, Hardware-Geräte (Device) anhand einer Selektor-Strategie zu bewerten oder ein geeignetes Gerät direkt auszuwählen [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410].

Im Gesamtsystem fungiert CpuSelector als Bindeglied zwischen anfordernden Softwarekomponenten und verfügbaren Hardware-Einheiten. Während DeviceSelector die allgemeine Schnittstelle bereitstellt, dürfte CpuSelector als Selektor-Strategie speziell auf CPU-basierte Hardware-Ressourcen zielen, wie der Klassenname nahelegt. Frage Q-32abbae13e272c68 (offen) Anwendungssoftware bindet diese Klasse ein, um vor der Arbeitsübergabe fundierte Entscheidungen über die Ressourceneignung zu treffen.

Lebenszyklus

Instanzen von CpuSelector werden im Anwendungskontext oder durch übergeordnete Verwalterinstanzen erzeugt, um Auswahlstrategien bereitzustellen. Die zentralen Bewertungs- und Auswahloperationen sind als const deklariert, weshalb sich die Instanz während ihrer Nutzung nach außen hin zustandslos verhält und keine internen Selektionszustände modifiziert [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410].

Für die Nebenläufigkeit gilt, dass weder SelectDevice() [AP_SWS_SHWA_00410] noch operator() [AP_SWS_SHWA_00409] threadsicher sind (not thread-safe). Da die Methoden als nicht threadsicher spezifiziert sind, müssen nebenläufige Zugriffe auf dieselbe Instanz von CpuSelector vermutlich durch den Aufrufer synchronisiert werden. Frage Q-fced1ce242dea2c2 (offen) Am Ende des Lebenszyklus wird der Selektor ohne gesonderte Rollback-Prozeduren aufgelöst.

Nutzungspfad

Die typische Interaktion mit CpuSelector umfasst entweder die individuelle Bewertung einzelner Kandidaten oder die direkte Abfrage des optimalen Zielgeräts. Zur Kandidatenprüfung übergibt der Aufrufer eine Gerätereferenz an operator()(const Device &device) [AP_SWS_SHWA_00409]. Die Rückgabe von operator() als ara::core::Result<int> dürfte eine numerische Bewertungsmetrik (Score) für das übergebene Device darstellen, anhand derer mehrere Geräte verglichen werden können. Frage Q-33885b34ba761592 (offen)

Möchte die Anwendung die Auswahl vollständig der Strategie überlassen, ruft sie SelectDevice() auf [AP_SWS_SHWA_00410]. Diese Methode ermittelt intern das geeignete Gerät und liefert ein ara::core::Result<Device> zurück, welches das ausgewählte Zielgerät kapselt.

Bewertung und Auswahl eines Geräts mit CpuSelectorAnwendungCpuSelectorDeviceUse Case: Kandidatenbewertung via operator()operator()(device)Bewertung gemäß Selektor-StrategieResult<int> (Score)Use Case: Direkte Geräteselektion via SelectDevice()SelectDevice()Auswahl anhand Selektor-StrategieResult<Device>

Sequenzdiagramm: Typischer Ablauf zur Bewertung und Auswahl eines Zielgeräts über CpuSelector. Quellen: [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410].

Fehlerszenarien

Beide Methoden sind mit noexcept deklariert und garantieren vollständige Ausnahmesicherheit (exception safe) [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410]. Auftretende Fehlerbedingungen werden nicht über C++-Exceptions gemeldet, sondern über die Fehlerdomäne in ara::core::Result zurückgegeben.

Folgende Fehlerwerte aus ShwaErrorCode sind für beide Methoden spezifiziert:

Als Vorbedingung für operator() muss eine gültige Device-Referenz bereitstehen. Beide Funktionen verzichten auf Rollback-Semantiken (no_rollback_semantics), weshalb im Fehlerfall keine automatische Bereinigung vorheriger Systemzustände erfolgt [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410].

Dieser Leitfaden wurde durch ein KI-System auf Basis der Spezifikation von AUTOSAR Adaptive R25-11 generiert.

Methoden

SelectDevice function

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

virtual ara::core::Result< Device > SelectDevice () const noexcept override;

Operatoren

operator() function

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

ara::core::Result< int > operator() (const Device &device) const noexcept override;

Details

function SelectDevice [AP_SWS_SHWA_00410] Upstream: RS_SHWA_00006, RS_SHWA_00007

virtual ara::core::Result< Device > SelectDevice () const noexcept override;

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

Scopeclass ara::shwa::CpuSelector
Thread Safetynot thread-safe no_rollback_semantics ShwaErrorCode::k ResourceBusy The operation could not be performed because the resource is currently busy no_rollback_semantics
Exception Safetyexception safe
ErrorsShwaErrorCode::k FeatureNotSupported Used when a requested feature isn’t supported

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00410
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00410@rel:R25-11#25297b84
Content hash
25297b84
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00410
Status: valid/unmigrated Version: rel:R25-11#25297b84 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/AP_SWS_SHWA_00410@rel:R25-11#25297b84
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function operator() [AP_SWS_SHWA_00409] Upstream: RS_SHWA_00006, RS_SHWA_00007

ara::core::Result< int > operator() (const Device &device) const noexcept override;

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

Scopeclass ara::shwa::CpuSelector
Thread Safetynot thread-safe no_rollback_semantics ShwaErrorCode::k ResourceBusy The operation could not be performed because the resource is currently busy no_rollback_semantics
Exception Safetyexception safe
ErrorsShwaErrorCode::k FeatureNotSupported Used when a requested feature isn’t supported

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00409
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00409@rel:R25-11#d547c13d
Content hash
d547c13d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00409
Status: valid/unmigrated Version: rel:R25-11#d547c13d Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/AP_SWS_SHWA_00409@rel:R25-11#d547c13d
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill