개요
서로 다른 응용 프로그램, ECU 간의 Time Synchronization는 분산 시스템에서 서로 다른 이벤트의 상관 관계가 필요할 때 중요한 이벤트입니다. 이러한 이벤트를 제 시간에 추적하거나 정확한 시점에 트리거 해야 합니다.
Time Synchronization
이러한 이유로 Time Synchronization API가 애플리케이션에 제공되어집니다. 다른 Entities / ECU와 동기화 된 시간 정보를 검색 할 수 있습니다. Time Synchronization 기능은 시스템에있는 다양한 "시간 기반 자원"의 수단으로 제공됩니다.
디자인
Adaptive Platform의 경우 필요한 모든 Time Synchronization 요구 사항을 충족하기 위해 다음 세 가지 기술이 고려되었습니다.
. StbM of the Classic Platform
. Library chrono - either std::chrono (C++11) or boost::chrono
. The Time POSIX interface
Time Synchronization 모듈은 Classic Platform의 StbM 모듈과 비슷합니다. 그러나 std :: chrono에서 영감을 얻은 API 디자인과 유사한 기능을 제공합니다.
다음과 같은 기능적 측면이 시간 동기화에 의해 고려됩니다.
module:
Startup Behavior
Constructor Behavior (Initialization)
Normal Operation
Error Handling
다음 기능 측면이 향후 릴리스에서 고려 될 예정입니다.
Shutdown Behavior
Error Classification
Version Check
구조
응용 프로그램은 각 Time Base Resource에 대해 다른 특수 클래스 구현에 액세스 할 수 있습니다. Time Base Resource은 ara :: com 디자인에서 제공되는 것과 비슷한 방식으로 리소스로 제공됩니다. 다음과 같은 ara :: com의 아키텍처 디자인 패턴을 채택합니다.
Proxy: ara :: com Service Proxy Skeleton 패턴과 유사하게 TS는 Skeleton 부분을 생략하고 Resource Proxy 패턴을 제공합니다.
Find: ara :: com 서비스 프록시 패턴과 유사하게 TS는 TBR에 대한 액세스를 제공하는 리소스 프록시 찾기 패턴을 제공합니다.
Proxy Methods: ara :: com 프록시 메소드 패턴과 유사하게 TS는 비동기식 미래 패턴을 고수하는 메소드 패턴을 사용합니다.
이 아키텍처 설계는 대기 시간을 피하는 상황에서 Time Synchronization design을 ara :: com API의 디자인 패턴의 비동기 동작에 본질적으로 추가하기 때문에 충돌을 일으킵니다.
'SW > Autosar' 카테고리의 다른 글
Adaptive Autosar Cryptography (암호) (0) | 2018.11.21 |
---|---|
Adaptive Autosar Network Management ( 네트워크 관리 ) (0) | 2018.11.20 |
Adaptive Autosar Persistency (지속성) (0) | 2018.11.16 |
Adaptive Autosar Diagnostics ( 진단 ) (0) | 2018.11.16 |
Adaptive Autosar RESTful Communication (Restful 통신) (0) | 2018.11.16 |