DEENESPTFRRUARHIKOZHNL

clase 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] texto aún no importado 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

Guía del usuarioGENERADO POR IA

Permite la evaluación y la selección específica de dispositivos de hardware mediante una estrategia de selector.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 89675708a89b Procedencia Preguntas abiertas (3)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Permite la evaluación y la selección específica de dispositivos de hardware mediante una estrategia de selector.

La clase ara::shwa::CpuSelector sirve en el módulo shwa para la evaluación y selección específica de dispositivos de hardware según una estrategia de selector específica [AP_SWS_SHWA_00410]. El software de aplicación puede evaluar candidatos a dispositivos individuales mediante operator() o determinar inmediatamente un dispositivo de destino adecuado mediante el método SelectDevice() [AP_SWS_SHWA_00409]. Como condiciones límite esenciales, las interfaces están especificadas como no seguras para subprocesos, no ofrecen semántica de reversión y transmiten los errores potenciales, como recursos ocupados, exclusivamente a través de ara::core::Result.

Contexto

La clase ara::shwa::CpuSelector forma parte del módulo para aceleración de hardware (shwa) dentro de la AUTOSAR Adaptive Platform. Se deriva de la interfaz base DeviceSelector y especializa la selección funcional de dispositivos de ejecución. Su responsabilidad primordial consiste en evaluar dispositivos de hardware (Device) mediante una estrategia de selector o seleccionar directamente un dispositivo adecuado [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410].

En el sistema global, CpuSelector actúa como enlace entre los componentes de software solicitantes y las unidades de hardware disponibles. Mientras que DeviceSelector proporciona la interfaz general, es de suponer que CpuSelector, como estrategia de selector, apunta específicamente a recursos de hardware basados en CPU, tal como sugiere el nombre de la clase. Pregunta Q-32abbae13e272c68 (abierta) El software de aplicación integra esta clase para tomar decisiones fundamentadas sobre la idoneidad de los recursos antes de transferir el trabajo.

Ciclo de vida

Las instancias de CpuSelector se crean en el contexto de la aplicación o mediante instancias de administración de nivel superior a fin de proporcionar estrategias de selección. Las operaciones centrales de evaluación y selección están declaradas como const, razón por la cual la instancia se comporta externamente sin estado durante su uso y no modifica estados internos de selección [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410].

En cuanto a la concurrencia, ni SelectDevice() [AP_SWS_SHWA_00410] ni operator() [AP_SWS_SHWA_00409] son seguros para subprocesos (not thread-safe). Dado que los métodos están especificados como no seguros para subprocesos, es de suponer que los accesos concurrentes a la misma instancia de CpuSelector deben ser sincronizados por quien realiza la llamada. Pregunta Q-fced1ce242dea2c2 (abierta) Al final del ciclo de vida, el selector se destruye sin procedimientos especiales de reversión.

Ruta de uso

La interacción típica con CpuSelector comprende o bien la evaluación individual de candidatos individuales, o bien la consulta directa del dispositivo de destino óptimo. Para la comprobación de candidatos, quien realiza la llamada pasa una referencia de dispositivo a operator()(const Device &device) [AP_SWS_SHWA_00409]. El retorno de operator() como ara::core::Result<int> constituiría probablemente una métrica de evaluación numérica (puntuación) para el Device suministrado, a partir de la cual se pueden comparar múltiples dispositivos. Pregunta Q-33885b34ba761592 (abierta)

Si la aplicación desea delegar la selección por completo a la estrategia, invoca SelectDevice() [AP_SWS_SHWA_00410]. Este método determina internamente el dispositivo adecuado y devuelve un ara::core::Result<Device> que encapsula el dispositivo de destino seleccionado.

Evaluación y selección de un dispositivo con CpuSelectorAplicaciónCpuSelectorDispositivoUse Case: Kandidatenbewertung via operator()operator()(device)Evaluación según la estrategia del selectorResult<int> (Score)Use Case: Selección directa de dispositivo mediante SelectDevice()SelectDevice()Auswahl anhand Selektor-StrategieResult<Device>

Diagrama de secuencias: flujo típico para la evaluación y selección de un dispositivo de destino a través de CpuSelector. Fuentes: [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410].

Escenarios de error

Ambos métodos están declarados con noexcept y garantizan seguridad completa frente a excepciones (exception safe) [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410]. Las condiciones de error que se produzcan no se notifican mediante excepciones de C++, sino que se devuelven a través del dominio de error en ara::core::Result.

Se especifican para ambos métodos los siguientes valores de error de ShwaErrorCode:

Como condición previa para operator() debe haber disponible una referencia válida a Device. Ambas funciones prescinden de semánticas de reversión (no_rollback_semantics), por lo que en caso de error no se realiza ninguna limpieza automática de los estados previos del sistema [AP_SWS_SHWA_00409], [AP_SWS_SHWA_00410].

Esta guía fue generada por un sistema de IA a partir de la especificación de AUTOSAR Adaptive R25-11.

Métodos

SelectDevice función

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

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

Operadores

operator() función

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

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

Detalles

función 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#010b630d
Content hash
010b630d
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

función 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#2331543a
Content hash
2331543a
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