Als ara::com-Dienst modellierte Schnittstelle; Methoden/Felder werden über generierte Proxies/Skeletons aufgerufen (Parameterrichtung IN/OUT).
Guía del usuarioGENERADO POR IA
Sirve para la transferencia, procesamiento, activación y supervisión de paquetes de software y clusters de software en el UCM.
GENERADO POR IAno revisadoModelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 6e0698182e67ProcedenciaPreguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán
Sirve para la transferencia, procesamiento, activación y supervisión de paquetes de software y clusters de software en el UCM.
La interfaz de servicio PackageManagement controla la transferencia, el procesamiento y la activación de paquetes de software en la AUTOSAR Adaptive Platform [SWS_UCM_00345], [SWS_UCM_00352]. Permite la carga por bloques de paquetes, la extracción de clusters de software y su activación controlada en coordinación con el State Management [SWS_UCM_00346], [SWS_UCM_00352]. Además, el servicio proporciona mecanismos para la monitorización del estado, así como para la reversión y limpieza de datos de sesión [SWS_UCM_00353], [SWS_UCM_00361].
1. Rol y contexto del sistema de la interfaz de servicio
La interfaz de servicio PackageManagement constituye la interfaz central del Update and Configuration Management (UCM) para la gestión, transferencia e instalación de paquetes de software en la AUTOSAR Adaptive Platform [SWS_UCM_00343]. En este contexto, la instancia de UCM actúa normalmente como proveedor de servicios (Skeleton), mientras que los coordinadores de actualización o clientes de diagnóstico de nivel superior actúan como consumidores de servicios (Proxy). Para la identificación, el servicio proporciona mediante el método GetId el identificador único de instancia de módulo [SWS_UCM_00343]. Durante el proceso de activación, UCM interactúa estrechamente con el State Management, el cual debe habilitar la sesión de actualización y llevar a cabo las verificaciones [SWS_UCM_00352].
2. Métodos, eventos y campos
Todos los métodos definidos en la interfaz de servicio operan con semántica de invocación síncrona o con mensajes de tipo solicitud-respuesta, ya que para la totalidad de los métodos se especifica Fire & Forget false[SWS_UCM_00345]. El campo de estado CurrentStatus cuenta con un getter y un notifier, lo que permite a los clientes suscribirse a cambios de estado del UCM basados en eventos o consultarlos de manera activa [SWS_UCM_00361]. De forma complementaria, GetProgress proporciona información detallada sobre el progreso correspondiente al estado activo de la máquina de estados [SWS_UCM_00360]. Para las consultas del inventario de software, se encuentran disponibles GetSwPackages para listar los paquetes de software disponibles [SWS_UCM_00359], GetSwClusterInfo para clusters de software instalados en el estado kPresent[SWS_UCM_00357], GetSwClusterManifestInfo para datos de manifiesto del cluster [SWS_UCM_00358], así como GetSwClusterChangeInfo para cambios pendientes en los estados kAdded, kUpdating o kRemoved[SWS_UCM_00356]. La trazabilidad histórica de las acciones ejecutadas se proporciona mediante GetHistory con filtros de marca de tiempo [SWS_UCM_00355].
3. Ciclo de vida, flujos de sesión y dependencias de estado
Un flujo típico de actualización se divide en transferencia, procesamiento, activación y finalización. La transferencia de paquetes se inicia bien mediante TransferStart, lo que crea una TransferIdType y negocia el tamaño de bloque [SWS_UCM_00345], o bien alternativamente se registra mediante RegisterSoftwarePackage especificando una URI de paquete [SWS_UCM_00344]. En la transferencia por bloques, los bloques de datos se persisten de forma continua mediante TransferData indicando un contador de bloques [SWS_UCM_00346] y se finalizan con TransferExit[SWS_UCM_00347]. A continuación, ProcessSwPackage extrae el paquete de software [SWS_UCM_00349]. Los procesamientos en curso pueden cancelarse mediante Cancel[SWS_UCM_00351] o pausarse y reanudarse con Suspend y Resume[SWS_UCM_00397], [SWS_UCM_00398]. Las transferencias que ya no se necesiten pueden eliminarse con DeleteTransfer[SWS_UCM_00348]. Con Activate se activan los clusters de software extraídos [SWS_UCM_00352], mientras que Finish finaliza la sesión de procesamiento y limpia los datos temporales [SWS_UCM_00354]. Si se producen errores, RevertProcessedSwPackages permite revertir los paquetes procesados [SWS_UCM_00350] y Rollback permite restablecer el estado del sistema previo al procesamiento del paquete [SWS_UCM_00353].
Los métodos de la interfaz protegen las condiciones de error mediante Application Errors específicos. En caso de llamadas contrarias al contexto, métodos como Activate, Cancel, Finish, ProcessSwPackage, TransferData y TransferExit devuelven el error kOperationNotPermitted[SWS_UCM_00346], [SWS_UCM_00347], [SWS_UCM_00349], [SWS_UCM_00352]. Los ID de transferencia no válidos se rechazan con kTransferIdInvalid[SWS_UCM_00346], [SWS_UCM_00348], mientras que secuencias de bloques erróneas o cuellos de botella de memoria provocan kBlockIncorrect, kBlockSizeIncorrect, kBlockInconsistent o kMemoryInsufficient[SWS_UCM_00345], [SWS_UCM_00346]. Las comprobaciones de seguridad y consistencia arrojan errores como kAuthenticationFailed, kPackageInconsistent, kPackageManifestInvalid y kPackageVersionIncompatible[SWS_UCM_00346], [SWS_UCM_00349]. La eliminación del sistema central se impide con kSwclRemovalDenied[SWS_UCM_00349]. Durante la activación, kDependencyMissing, kUpdateSessionRejected o kVerificationFailed señalan problemas de integración con dependencias o con el State Management [SWS_UCM_00352].
Esta guía fue generada por una IA sobre la base de la especificación AUTOSAR R25-11.
Mitglieder
ActivateThis method activates the Software Clusters extracted from the processed Software Packages.
CancelThis method aborts an ongoing processing of a Software Package.
This method finishes the processing for the current set of processed Software Packages. It does a cleanup of all data of the processing including the sources of the Software Packages.
This method returns a list pending changes to the set of SoftwareClusters on the adaptive platform. The returned list includes all SoftwareClusters that are to be added, updated or removed. The list of changes is extended in the course of processing Software Packages.
Start the transfer of a Software Package after having received a Vehicle Package. The size of the Software Package to be transferred to UCM must be provided. UCM will generate a Transfer ID for subsequent calls to TransferData, TransferExit, ProcessSwPackage, DeleteTransfer.
This method aborts an ongoing processing of a Software Package.
GENERADO POR IAno revisadoModelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: b042c91a5838ProcedenciaPreguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán
usar
El método de servicio Cancel de la interfaz de servicio PackageManagement sirve para cancelar de forma anticipada el procesamiento en curso de un paquete de software [SWS_UCM_00351]. Como parámetro de llamada se transmite el identificador del proceso como parámetro INid de tipo TransferIdType[SWS_UCM_00351]. Dado que Fire & Forget está establecido en false para este método, la llamada al método se realiza de forma síncrona con confirmación o respuesta al llamador [SWS_UCM_00351].
Manejo de errores
Si la ejecución falla, la interfaz define códigos de error específicos (Application Errors) [SWS_UCM_00351]:
kTransferIdInvalid: El ID de transferencia transmitido no es válido [SWS_UCM_00351].
kOperationNotPermitted: La cancelación no es compatible en el contexto actual [SWS_UCM_00351].
Interacción y concurrencia
El método está estrechamente relacionado con el procesamiento de paquetes: normalmente se inicia un proceso de procesamiento mediante ProcessSwPackage para una TransferIdType id asignada [SWS_UCM_00349]. Interpretación: es de prever que Cancel esté diseñado primordialmente para cancelar el procesamiento de paquetes en ejecución mediante ProcessSwPackage[SWS_UCM_00349], [SWS_UCM_00351]. Pregunta Q-a220345676f7046c (abierta) Las entidades invocadoras deben asegurarse de que el ID de transferencia exista y de que el paquete se encuentre en un estado que permita una cancelación, con el fin de evitar el error kOperationNotPermitted[SWS_UCM_00351].
Este texto ha sido generado por una IA y sirve como guía orientativa.
This method finishes the processing for the current set of processed Software Packages. It does a cleanup of all data of the processing including the sources of the Software Packages.
This method returns a list pending changes to the set of SoftwareClusters on the adaptive platform. The returned list includes all SoftwareClusters that are to be added, updated or removed. The list of changes is extended in the course of processing Software Packages.
registers a package that could already be in Machine’s file system or to be downloaded.
GENERADO POR IAno revisadoModelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 0620dbe84c7eProcedenciaPreguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán
usar
El método de servicio RegisterSoftwarePackage pertenece a la interfaz de servicio PackageManagement (versión 1.0) y sirve para registrar un paquete de software en el sistema [SWS_UCM_00344]. El paquete de destino puede encontrarse ya localmente en el sistema de archivos de la máquina o transmitirse como referencia para una descarga pendiente.
El método posee los siguientes parámetros:
uri (IN, UriString): Especifica la ruta URI que apunta al paquete de software que se va a registrar [SWS_UCM_00344].
transferId (OUT, TransferIdType): Devuelve un identificador unívoco para el proceso de transferencia tras un registro exitoso [SWS_UCM_00344].
Semántica de llamada y tratamiento de errores
La propiedad Fire & Forget está establecida en false para este servicio [SWS_UCM_00344]. Por lo tanto, los llamadores reciben una confirmación directa sobre el resultado del procesamiento del método. Si el URI transmitido es sintácticamente inválido o apunta a un destino no permitido, la ejecución falla con el error de aplicación específico kInvalidUri[SWS_UCM_00344].
Interacción y restricciones
La llamada al método constituye típicamente el paso inicial en el flujo de gestión de paquetes. Como interpretación, es previsible que el transferId devuelto se utilice en pasos posteriores de la gestión de paquetes para direccionar de forma unívoca el proceso de transferencia o instalación. Pregunta Q-fc2bc07c914858a2 (abierta) Dado que no se especifican garantías de concurrencia, el llamador debería esperar la llegada del resultado antes de iniciar acciones sucesivas con el identificador correspondiente.
Esta indicación de uso fue generada por una IA sobre la base de la especificación AUTOSAR Adaptive R25-11.
método de servicio TransferData [SWS_UCM_00346]Upstream: RS_UCM_00019 texto aún no importado, RS_UCM_00025 texto aún no importado
TransferData (IN TransferIdType id, IN ByteVectorType Management data, IN uint64_t blockCounter)
Block-wise transfer of a Software Package to UCM.
GENERADO POR IAno revisadoModelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: fbad4e8e0243ProcedenciaPreguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán
El método de servicio TransferData sirve para la transferencia por bloques de un paquete de software al gestor de Update and Configuration Management (UCM) dentro de la interfaz de servicio PackageManagement ([SWS_UCM_00346]). Dado que el método no está definido como Fire & Forget, cada llamada devuelve una confirmación o un error de aplicación específico.
Para la llamada deben pasarse los siguientes parámetros de entrada ([SWS_UCM_00346]):
id (TransferIdType): La identificación de transferencia generada previamente por el UCM.
data (ByteVectorType Management): El bloque de datos útiles a transferir del paquete de software.
blockCounter (uint64_t): El contador consecutivo del bloque de datos actual.
En cuanto al orden y a la interacción, el método presupone una llamada previa de TransferStart ([SWS_UCM_00345]). A través de TransferStart el llamador recibe, además del ID de transferencia válido, el tamaño de bloque requerido blockSize, así como la obligación de indicar el tamaño total del paquete. La transferencia de datos debe ajustarse estrictamente a estas prescripciones; interpretación: es de esperar que el blockCounter deba incrementarse de forma monótona y sin huecos por parte del llamador, ya que una recepción duplicada del mismo número de bloque desencadena el error kBlockIncorrect ([SWS_UCM_00346]). Pregunta Q-61272c50c151f4db (abierta)
El tratamiento de errores diferencia entre errores estructurales de transferencia, problemas de consistencia y errores de validación de paquetes ([SWS_UCM_00346]):
Transferencia y recursos: Si la sesión no es válida o el contexto de llamada es incorrecto, el UCM responde con kTransferIdInvalid o kOperationNotPermitted. Si un bloque excede el tamaño acordado o el tamaño total anunciado, siguen kBlockSizeIncorrect o kSizeIncorrect respectivamente. En caso de memoria insuficiente o errores al persistir, se devuelve kMemoryInsufficient o kTransferFailed.
Integridad y compatibilidad: Si las verificaciones de los datos fallan, se reportan kBlockInconsistent, kPackageInconsistent o kAuthenticationFailed. Además, se rechazan manifiestos inválidos (kPackageManifestInvalid), versiones incompatibles (kPackageVersionIncompatible, kOldVersion), formatos no compatibles (kPackageFormatUnsupported) o la eliminación no permitida de clústeres Core (kSwclRemovalDenied).
Esta nota de uso fue generada automáticamente sobre la base de la especificación AUTOSAR R25-11.
Start the transfer of a Software Package after having received a Vehicle Package. The size of the Software Package to be transferred to UCM must be provided. UCM will generate a Transfer ID for subsequent calls to TransferData, TransferExit, ProcessSwPackage, DeleteTransfer.
gemini-3.8-flash-low· 2026-10-13 · Original en alemán