반응형

SW 2013

Adaptive Autosar Diagnostics ( 진단 )

개요 Diagnostics 관리는 주로 ISO 14229-1 (UDS) 및 ISO 13400-2 (DoIP)를 기반으로하는 ISO 14229-5 (UDSonIP)를 구현합니다. Diagnostics 관리는 ara::com을 사용하여 서비스 계층에서 Adaptive Platform의 Functional Cluster를 나타냅니다. 언어 독립적이며 다른 언어 바인딩을 사용하여 Adaptive 응용 프로그램을 제공합니다. 이 구성은 Classic Platform의 Autosar Diagnostics 추출 템플릿 (DEXT)를 기반으로 합니다. DEXT는 정착하기 시작했습니다. 이미 여러 OEM 및 공급 업체에서 사용되고 있습니다. 지원되는 전송 계층은 DolP입니다. 미래의 Adaptive Platforms은..

SW/Autosar 2018.11.16

Adaptive Autosar RESTful Communication (Restful 통신)

개요통신 스택인 ara::com, ara::rest는 모두 Adaptive Application 프로그램 간에 통신 경로를 설정할 수 있습니다. Ara::rest는 RESTful API와 특정 API를 빌드하는 프레임워크입니다. 직접 RESTful 서비스를 구성하기 위해 특정 API를 정의하지 않습니다. 이 프레임워크는 모듈화되어 있습니다. 개발자는 RESTful 메시지 트랜잭션과 관련된 여러 계층에 직접 액세스 할 수 있습니다. ara:com의 초점은 기존의 함수 호출 인터페이스를 제공하고 이 시점을 넘어서 트랜잭션의 모든 세부 사항을 숨겨야 합니다. 다른 중요한 차이점은 ara:rest가 비 autosar와 상호 운용성을 보장해야 하는 것입니다. 예를들어, ara::rest 서비스는 모바일 HTTP ..

SW/Autosar 2018.11.16

[ C++ ] Lambda 개념 및 예제

C++을 사용하다 보면 함수 자체를 다른 함수의 파라미터로 넘기는 경우가 있습니다. 다음의 예를 살펴보도록 하겠습니다. template void sort(RandsomIt first, RandomIt last, Compare comp);cs template을 이용하여 정렬할 값의 시작과 끝을 알려줍니다. 비교할 함수를 받아 comp() 함수를 이용해 값을 비교합니다. 이 때 비교 함수는 우리가 정렬하는 값이 문자열인지, 숫자인지, 객체인지에 따라 임의로 전달해 주어야 합니다. 즉 함수를 파라미터로 넘겨주어야 하는 것입니다. 이런 상황이 다른 곳에서 많이 발생합니다. 따라서 비교하는 함수를 만들어 정렬할 때마다 전달해야 합니다. 하지만 이러한 함수는 굉장히 짧고 다른 곳에서 쓰이지 않을 일회용 함수일 가능..

SW/C++ 2018.11.15

[ c++ ] auto 개념 및 예제

auto변수를 선언하기 위해 변수 이름 앞에 어떤 데이터 형으로 선언할지 변수의 데이터 형을 입력해야 했습니다. 하지만 객체 지향을 이용하는 개발자들은 데이터형을 하나하나 입력하는 것도 귀찮은게 사실입니다. 결국 개발자들은 컴파일러가 데이터에 따라 알아서 데이터 형을 정해주기를 바랍니다. 최근 이슈가 되고 있는 파이썬에는 어떠한 변수에도 데이터형을 입력하지 않습니다. 프로그램을 실행하면 자동으로 데이터 형을 정하는 것입니다. C++11에서는 auto라는 기능이 추가되었습니다. auto를 활용하면 데이터 형을 컴파일러가 알아서 지정합니다. 대신 auto로 선언되는 변수는 선언과 동시에 초기화되어야하는 것이 조건입니다. 컴파일러가 초기화되는 시점에 데이터형을 결정합니다. 따라서 어떤 데이터형으로 선언할지 알..

SW/C++ 2018.11.15

C++11은 무엇일까요?

객체 지향 언에는 많은 언어가 있습니다. C++ 뿐만 아니라 스몰토크, Ada, 파이썬, 루비까지 다양한 언어가 있습니다. 이러한 다양한 언어가 존재하는 이유는 시대가 흐르면서 컴퓨터의 성능이 발전하고 고성능 장치가 생겨나면서 다양한 요구가 생기기 때문입니다. 그러므로 객체지향에서 원하는 요구사항이 변경되면서 C++도 다양한 요구 사항을 받아들이고 있습니다. 새로운 기능들을 추가하기 위해 지속적으로 발전하는 것입니다. 앞으로 알아두면 좋은 C++ 기능을 포스팅하겠습니다. 객체지향의 요구사항이 변경되고 새롭게 추가되면서 C++도 새로운 좋은 기능들이 채택되었습니다. 혹시 C++0x라고 들어보셨나요? C++ 기능들이 추가되어가면서 2000년대의 한 시점에 표준이 공개될 것이라고 예상해 C++0x라 칭하였습니..

SW/C++ 2018.11.15

Adaptive Autosar Communication Management (통신 관리)

개요Communication Management는 분산 실시간 임베디드 환경 속에서 애플리케이션 간의 모든 통신을 수행합니다. 통신 파트너를 찾아 연결하는 실제 매커니즘을 추상화하여 응용 프로그램 소프트웨어 구현자가 응용 프로그램의 특정 목적에 집중할 수 있도록 합니다. Service Oriented Communication (서비스 지향 통신)서비스의 개념은 기본 운영 소프트웨어가 제공하는 기능 이상으로 응용 프로그램에 제공되는 기능을 뜻합니다. Communication Management SW는 머신 간 통신을 위해 이러한 서비스를 제공하거나 메커니즘을 제공합니다. 서비스는 다음으로 구성됩니다. . Events . Methods . Fields 통신 파트너 간의 통신 경로는 설계시, 시동시, 실행시에..

SW/Autosar 2018.11.14

Adaptive Autosar State Management (상태 관리)

State Management는 현재 컴퓨터 상태 및 Functional Group State 집합을 정의하고 Execution Management에서 요청한 State 전환을 시작하는 Functional Cluster입니다. Execution Management는 State 전환을 수행하고 현재 State에 따라 실제 실행중인 프로세스들을 제어합니다. State 변경 요청은 다음에 의해 논의 됩니다. :. 오류 복구를 트리거하고 대체 기능을 활성화하기위한 플랫폼 상태 관리. 시스템을 진단 상태로 전환하는 진단 프로그램. 업데이트 및 구성 관리를 사용하여 소프트웨어 또는 구성을 업데이트 할 수있는 상태로 시스템을 전환. 필요한 기능과 네트워크 상태를 조정하는 네트워크 관리. 다른 기계 또는 다른 ECU에..

SW/Autosar 2018.11.14

Adaptive Autosar Execution Management (실행 관리)

개요 Execution Management는 플랫폼 초기화, 응용 프로그램 시작 및 종료를 포함한 시스템 실행 관리를 담당합니다. Execution Management는 운영체제와 함께 작동합니다. 또 응용 프로그램의 런타임 스케줄링을 수행합니다. System Startup (시스템 시작)머신이 시작되면 운영체제가 가장 먼저 초기화 됩니다. Execution Management는 OS의 초기 프로세스 중 하나로 시작됩니다. 그 다음 Execution Management가 Adaptive Platform Foundation의 다른 Functional Cluster와 플랫폼 레벨 어플리케이션을 시작시킵니다. Adaptive Platform Foundation이 실행되면 Execution Management는..

SW/Autosar 2018.11.14

리눅스 시스템 개념

시스템 프로그래밍커널 및 핵심 시스템 라이브러리로 개발을 합니다. 라이브러리를 통해 하위 레벨에서 동작하는 시스템을 개발합니다. 이 때 시스템 소프트웨어를 작성하는 기술을 시스템 프로그래밍이라 합니다. 시스템 콜운영체제에 리소스나 서비스를 요청합니다. 이 때 사용자 영역에서 커널 내부로 들어가는 함소 호출을 시스템 콜이라 합니다. read(), write()와 같은 익숙한 함수뿐만아니라 get_narea(), set_tid_address() 같은 생소한 함수도 있으며 매우 다양한 편입니다. C 라이브러리유닉스 애플리케이션의 핵심은 바로 C 라이브러리입니다. 기본 C 라이브러리 뿐 만 아니라 시스템 콜에 대한 래퍼와 스레드 지원, 기본 애플리케이션 기능에 대한 내용도 포함하고 있습니다. C 컴파일러리눅스는..

SW/리눅스 2018.11.14

Adaptive Autosar Operating System (운영 체제)

안녕하세요. 글쓴이입니다. 이번 포스팅에서는 Adaptive Autosar의 운영체제에 대해 알아보도록 하겠습니다. 개요 운영 체제는 모든 프로그램에 대한 실행 자원 관리 역할을 수행합니다. Execution Management는 OS와 함께 플랫폼 초기화 및 응용프래그램 시작 및 종료 관리 역할을 수행합니다. Adaptive Platform은 새로운 운영체제를 정해놓지는 않습니다. 그보다는 Adaptive Application에서 사용하는 Context와 인터페이스를 정의합니다. OSI에서는 Adaptive Application ARA의 일부인 응용 프로그램 인터페이스가 정의되어 있습니다. 운영체제 자체에서는 프로그램 시작을 위해 Execution Management에 필요한 다른 인터페이스를 제공 가..

SW/Autosar 2018.11.13

Adaptive Autosar Architecture( 구조)

ARA Adaptive Applications (AA)은 ARA, AUTOSAR 런타임을 기반으로 작동합니다. ARA는 Foundation 또는 Services에 속하는 Functional Clusters가 제공하는 응용 프로그램 인터페이스로 구성합니다. Foundation은 AP 및 Service의 기본 기능을 서비스합니다. 모든 Adaptive Applications은 다른 Adaptive Applications에 서비스를 제공할 수 있습니다. Functional Clusters의 인터페이스는 Foundation과 Services의 인터페이스 중 하나입니다. 지정된 C++ 인터페이스와 AP가 향후 지원할 다른 언어 바인딩을 제공하고 있습니다. ARA 라이브러리를 포함하여 ARA 인터페이스 아래에는 A..

SW/Autosar 2018.11.13

Adaptive Autosar 특징

지능형 ECU와 기술 드라이버의 환경은 많은 컴퓨티 성능을 필요로 합니다. 그리고 이러한 기술 동향은 이 필요에 맞는 기준을 제공합니다. 전력 및 비용 효율성은 중요한 부분이지만 안전 영역의 HPC는 다양한 난제에 부딪힙니다. 이것을 해결하기 위해서는 ECU가 활용하지 못하는 기술을 채택해야합니다. 또 혁신적인 기술을 최대한 활용할 수 있어야 합니다. C ++ 객체 언어를 활용하여 프로그래밍을 할 수 있습니다. 성능이 중요한 복잡한 응용 프로그램에도 새로운 응용 소프트웨어를 개발하고 알고리즘을 개발하기 위해서 C++이 채택되었습니다. 새로운 알고리즘의 신속한 적용과 응용 프로그램의 생산성 향상에 큰 도움이 될 것입니다. SOA 애플리케이션을 지원하기 위해서는 배포 및 자원 할당에서 유연성과 확장성을 허용..

SW/Autosar 2018.11.13

Adaptive Autosar 소개, 배경, 기술

Adaptive Autosar 소개 안녕하세요. 글쓴이 입니다. 이번 포스팅을 통해 Autosar Adaptive Platform (AP) 디자인에 대해 말씀드리고자 합니다. 제가 이렇게 포스팅을 하는 이유는 AP 디자인의 모든 것들을 말씀드리려고 하는 것은 아닙니다. AP에 대한 핵심 개념들을 설명드리고자합니다. 앞으로 자동차 SW 플랫폼에서 AP는 큰 각광을 받을 것이기 때문에 미리 관련 개념들을 여러분들과 함께 익히고자 하는 것이 목적입니다. 우선 AP의 탄생 배경에 대해 공부를 하도록 하겠습니다. 그 후에는 논리적인 측면도 살펴보겠습니다. 또 AP 기능들의 방법들과 사양과 Functional Clusters들에 대해 알아보겠습니다. 차분히 정리해 나가면 다른 페이지에서도 천천히 다루어 보겠습니다...

SW/Autosar 2018.11.08
반응형