서비스 인터페이스 PackageManagement은 AUTOSAR Adaptive Platform에서 소프트웨어 패키지를 관리, 전송 및 설치하기 위한 Update and Configuration Management(UCM)의 중앙 인터페이스를 형성합니다 [SWS_UCM_00343]. 여기서 UCM 인스턴스는 일반적으로 서비스 제공자(Skeleton) 역할을 하며, 상위 업데이트 코디네이터 또는 진단 클라이언트는 서비스 소비자(Proxy) 역할을 합니다. 식별을 위해 서비스는 메서드 GetId를 통해 고유한 모듈 인스턴스 식별자를 제공합니다 [SWS_UCM_00343]. 활성화 프로세스 동안 UCM은 업데이트 세션을 릴리스하고 검증을 수행해야 하는 State Management와 긴밀하게 상호 작용합니다 [SWS_UCM_00352].
2. 메서드, 이벤트 및 필드
서비스 인터페이스에 정의된 모든 메서드는 모든 메서드에 대해 Fire & Forget false이 명시되어 있으므로 동기 호출 시맨틱 또는 요청-응답(Request-Response) 메시지로 작동합니다 [SWS_UCM_00345]. 상태 필드 CurrentStatus에는 Getter 및 Notifier가 있으므로 클라이언트는 이벤트 기반으로 UCM의 상태 변경을 구독하거나 능동적으로 쿼리할 수 있습니다 [SWS_UCM_00361]. 또한 GetProgress는 상태 머신의 현재 활성 상태에 대한 상세한 진행 정보를 제공합니다 [SWS_UCM_00360]. 소프트웨어 인벤토리 쿼리를 위해 사용 가능한 소프트웨어 패키지를 나열하는 GetSwPackages[SWS_UCM_00359], kPresent 상태의 설치된 소프트웨어 클러스터를 위한 GetSwClusterInfo[SWS_UCM_00357], 클러스터 매니페스트 데이터를 위한 GetSwClusterManifestInfo[SWS_UCM_00358], 그리고 kAdded, kUpdating 또는 kRemoved 상태의 보류 중인 변경 사항을 위한 GetSwClusterChangeInfo을 사용할 수 있습니다 [SWS_UCM_00356]. 실행된 작업의 이력 추적성은 타임스탬프 필터가 있는 GetHistory을 통해 제공됩니다 [SWS_UCM_00355].
3. 수명 주기, 세션 흐름 및 상태 종속성
일반적인 업데이트 흐름은 전송, 처리, 활성화 및 완료로 나뉩니다. 패키지 전송은 TransferStart에 의해 시작되어 TransferIdType이 생성되고 블록 크기가 협상되거나 [SWS_UCM_00345], 대안으로 패키지 URI를 지정하여 RegisterSoftwarePackage에 의해 등록됩니다 [SWS_UCM_00344]. 블록 단위 전송의 경우 데이터 블록은 블록 카운터를 지정하여 TransferData를 통해 지속적으로 유지되고 [SWS_UCM_00346], TransferExit로 완료됩니다 [SWS_UCM_00347]. 그런 다음 ProcessSwPackage가 소프트웨어 패키지를 추출합니다 [SWS_UCM_00349]. 진행 중인 처리는 Cancel을 사용하여 취소하거나 [SWS_UCM_00351], Suspend 및 Resume를 사용하여 일시 중단하거나 재개할 수 있습니다 [SWS_UCM_00397], [SWS_UCM_00398]. 더 이상 필요하지 않은 전송은 DeleteTransfer을 사용하여 제거할 수 있습니다 [SWS_UCM_00348]. Activate를 사용하여 추출된 소프트웨어 클러스터가 활성화되고 [SWS_UCM_00352], Finish은 처리 세션을 종료하고 임시 데이터를 정리합니다 [SWS_UCM_00354]. 오류가 발생하는 경우 RevertProcessedSwPackages을 통해 처리된 패키지를 롤백할 수 있으며 [SWS_UCM_00350], Rollback를 통해 패키지 처리 전의 시스템 상태를 복원할 수 있습니다 [SWS_UCM_00353].
인터페이스 메서드는 특정 Application Errors를 통해 오류 조건을 방어합니다. 컨텍스트에 맞지 않는 호출의 경우 Activate, Cancel, Finish, ProcessSwPackage, TransferData 및 TransferExit와 같은 메서드는 오류 kOperationNotPermitted을 반환합니다 [SWS_UCM_00346], [SWS_UCM_00347], [SWS_UCM_00349], [SWS_UCM_00352]. 유효하지 않은 전송 ID는 kTransferIdInvalid로 거부되며 [SWS_UCM_00346], [SWS_UCM_00348], 잘못된 블록 시퀀스 또는 메모리 부족은 kBlockIncorrect, kBlockSizeIncorrect, kBlockInconsistent 또는 kMemoryInsufficient로 이어집니다 [SWS_UCM_00345], [SWS_UCM_00346]. 보안 및 일관성 검사는 kAuthenticationFailed, kPackageInconsistent, kPackageManifestInvalid 및 kPackageVersionIncompatible과 같은 오류를 발생시킵니다 [SWS_UCM_00346], [SWS_UCM_00349]. 핵심 시스템의 제거는 kSwclRemovalDenied으로 차단됩니다 [SWS_UCM_00349]. 활성화 중 kDependencyMissing, kUpdateSessionRejected 또는 kVerificationFailed은 종속성 또는 State Management와의 통합 문제를 나타냅니다 [SWS_UCM_00352].
이 가이드는 AUTOSAR 사양 R25-11을 기반으로 AI에 의해 생성되었습니다.
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.
AI 생성미검증모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: b042c91a5838출처열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문
사용
서비스 인터페이스 PackageManagement의 서비스 메서드 Cancel은(는) 소프트웨어 패키지의 진행 중인 처리를 조기에 중단하는 역할을 합니다 [SWS_UCM_00351]. 호출 매개변수로 프로세스 식별자가 TransferIdType 타입의 IN 매개변수 id(으)로 전달됩니다 [SWS_UCM_00351]. 이 메서드에 대해 Fire & Forget이(가) false(으)로 설정되어 있으므로, 메서드 호출은 호출자에 대한 확인 응답 또는 피드백과 함께 동기식으로 수행됩니다 [SWS_UCM_00351].
오류 처리
실행이 실패할 경우, 인터페이스는 특정 오류 코드를 정의합니다(Application Errors) [SWS_UCM_00351]:
kOperationNotPermitted: 현재 컨텍스트에서는 중단이 지원되지 않습니다 [SWS_UCM_00351].
상호작용 및 동시성
이 메서드는 패키지 처리와 밀접한 관련이 있습니다: 처리 절차는 일반적으로 할당된 TransferIdType id에 대해 ProcessSwPackage을(를) 통해 시작됩니다 [SWS_UCM_00349]. 해석: Cancel은(는) 주로 ProcessSwPackage에 의해 진행 중인 패키지 처리를 중단하도록 설계되었을 것으로 추정됩니다 [SWS_UCM_00349], [SWS_UCM_00351]. 질문 Q-a220345676f7046c (열림) 오류 kOperationNotPermitted을(를) 방지하기 위해 호출자는 전송 ID가 존재하고 패키지가 중단을 허용하는 상태에 있는지 확인해야 합니다 [SWS_UCM_00351].
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.
AI 생성미검증모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 0620dbe84c7e출처열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문
사용
서비스 메서드 RegisterSoftwarePackage은(는) 서비스 인터페이스 PackageManagement(버전 1.0)에 속하며, 시스템에 소프트웨어 패키지를 등록하는 역할을 합니다 [SWS_UCM_00344]. 이때 대상 패키지는 이미 머신의 파일 시스템에 로컬로 존재하거나 보류 중인 다운로드를 위한 참조로 전달될 수 있습니다.
이 메서드는 다음 매개변수를 갖습니다:
uri (IN, UriString): 등록할 소프트웨어 패키지를 가리키는 URI 경로를 지정합니다 [SWS_UCM_00344].
transferId (OUT, TransferIdType): 등록 성공 후 전송 프로세스에 대한 고유 식별자를 반환합니다 [SWS_UCM_00344].
호출 시맨틱 및 오류 처리
이 서비스에 대해 Fire & Forget 속성은 false(으)로 설정되어 있습니다 [SWS_UCM_00344]. 따라서 호출자는 메서드 처리 결과에 대한 직접적인 확인 응답을 받습니다. 전달된 URI가 구문상 유효하지 않거나 허용되지 않은 대상을 가리키는 경우, 실행은 특정 애플리케이션 오류 kInvalidUri(으)로 인해 실패합니다 [SWS_UCM_00344].
상호작용 및 제약사항
메서드 호출은 일반적으로 패키지 관리 절차의 초기 단계를 구성합니다. 반환된 transferId은(는) 전송 또는 설치 프로세스를 고유하게 지정하기 위해 패키지 관리의 추가 단계에서 사용될 것으로 해석됩니다. 질문 Q-fc2bc07c914858a2 (열림) 동시성에 대한 보장이 명시되어 있지 않으므로, 호출자는 해당 식별자를 사용한 후속 작업을 시작하기 전에 결과를 기다려야 합니다.
이 사용 지침은 AUTOSAR Adaptive R25-11 사양을 기반으로 AI에 의해 생성되었습니다.
서비스 메서드 TransferData [SWS_UCM_00346]Upstream: RS_UCM_00019 문구 아직 가져오지 않음, RS_UCM_00025 문구 아직 가져오지 않음
TransferData (IN TransferIdType id, IN ByteVectorType Management data, IN uint64_t blockCounter)
Block-wise transfer of a Software Package to UCM.
AI 생성미검증모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: fbad4e8e0243출처열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문
서비스 메서드 TransferData은(는) 서비스 인터페이스 PackageManagement([SWS_UCM_00346]) 내에서 Update and Configuration Management 관리자(UCM)로 소프트웨어 패키지를 블록 단위로 전송하는 데 사용됩니다. 이 메서드는 Fire & Forget으로 정의되어 있지 않으므로, 각 호출은 확인 응답 또는 특정 애플리케이션 오류를 반환합니다.
data (ByteVectorType Management): 전송할 소프트웨어 패키지의 페이로드 데이터 블록입니다.
blockCounter (uint64_t): 현재 데이터 블록의 연속 카운터입니다.
순서 및 상호작용 측면에서 이 메서드는 사전에 TransferStart이(가) 호출되었음을 전제로 합니다([SWS_UCM_00345]). 호출자는 TransferStart을(를) 통해 유효한 전송 ID뿐만 아니라 요구되는 블록 크기 blockSize 및 전체 패키지 크기 지정 의무도 전달받습니다. 데이터 전송은 이러한 규정을 엄격히 준수해야 합니다. 해석: 동일한 블록 번호를 중복 수신하면 오류 kBlockIncorrect이(가) 발생하므로([SWS_UCM_00346]), 호출자는 blockCounter을(를) 누락 없이 단조 증가시켜야 할 것으로 추정됩니다. 질문 Q-61272c50c151f4db (열림)
오류 처리는 구조적 전송 오류, 일관성 문제 및 패키지 검증 오류 간을 구분합니다([SWS_UCM_00346]):
전송 및 리소스: 세션이 유효하지 않거나 호출 컨텍스트가 잘못된 경우, UCM은 kTransferIdInvalid 또는 kOperationNotPermitted(으)로 응답합니다. 블록이 합의된 크기 또는 발표된 전체 크기를 초과하면 각각 kBlockSizeIncorrect 또는 kSizeIncorrect이(가) 뒤따릅니다. 메모리가 부족하거나 지속성 유지(영속화) 시 오류가 발생하면 kMemoryInsufficient 또는 kTransferFailed이(가) 반환됩니다.
무결성 및 호환성: 데이터 검사에 실패하면 kBlockInconsistent, kPackageInconsistent 또는 kAuthenticationFailed이(가) 보고됩니다. 또한 유효하지 않은 매니페스트(kPackageManifestInvalid), 호환되지 않는 버전(kPackageVersionIncompatible, kOldVersion), 지원되지 않는 형식(kPackageFormatUnsupported) 또는 코어 클러스터의 허용되지 않는 제거(kSwclRemovalDenied)는 거부됩니다.
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 · 독일어 원문