목록분류 전체보기 (102)
Automotive Software
개관 클래식 오토사에서 DCM (Diagnostic Communication Manager), DEM (Diagnostic Event Manager) 이 진단 및 고장코드를 관장한다면 아답티브 오토사에는 하나의 기능군(Functional Cluster)에 속하는 Diagnostic Management (하위, DM)가 있다. DM은 기본적으로 ISO 14229-1에 따라 UDS 진단 서비스를 구현한 모듈로 설정에 따라 DTC (Diagnostic Trouble Codes)와 같이 제어기의 고장 정보를 관리할 수 있는 기능 그리고 전송 계층으로써 DoIP (Diagnostic over IP) 기능을 제공한다. 아답티브 오토사에서 제공하는 소프트웨어 클러스터(SC : Software Cluster) 기반의 ..
캐시 구조 직접 주소 매핑 (direct mapped cache) : 가장 간단한 방식으로 메인 메모리상의 주소가 하나의 캐시 블록에 매핑 전 연관 캐시 (fully associative cache) : 지정된 캐시 블록 없이 사용가능한 캐시에 동적으로 데이터 저장 집합 연관 캐시 (set associative cache) : 캐시 블록을 집합이라는 그룹으로 나누고 각 주소 영역의 하나의 집합에 매핑, 데이터는 해당 집합 내의 어느 주소에 저장 가능 예, 1블록으로 이루어진 8 세트 캐시가 있을 경우, 1 Way associative cache : direct mapped와 동일 2 - 4 way associative cache : 각각 2 블록(4 세트) / 4 블록(2세트) 8 way associat..
일반적으로 캐시는 상기 그림과 같은 단일 버스 기반의 멀티 코어(프로세서) 시스템에서 명령어 및 데이터 읽기 동작을 위해 메인 메모리 접근에 소비되는 버스의 통신량을 줄이기 위해 사용된다. 하지만, 프로세스 간 공유 메모리를 통해 IPC (Inter Processs Communicartion)을 구현하는 경우, 캐시와 메인 메모리 간 동기화 비용이 전체 시스템 성능을 영향을 끼치게 되며 또한 신뢰성 있는 IPC를 구현하는데 키 요소가 된다. 멀티 프로세스 캐시내 데이터의 일관성을 유지하기 위한 방법인 캐시 일관성 프로토콜 (Cache Coherency Protocol) 은 아래와 같은 방식이 있다. 스누핑 (Snooping) : 별도의 스누핑 제어기가 항상 캐시와 연결된 버스를 감시하여 각 프로세서 캐시..
우분투상에서 크롬 업데이트 시 최신 버전이라 필요 없다는 메시지가 나오지만, 크롬상에서 계속 업데이트가 필요하다면, 크롬 리스트 파일 확인 /etc/apt/sources.list.d/google-chrome.list 에서 맨 아래 줄의 주석을 지워서 아래와 같이 변경 ### THIS FILE IS AUTOMATICALLY CONFIGURED ### # You may comment out this entry, but any other modifications may be lost. deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main 업데이트 재시도 sudo apt update sudo apt-get --only-upgrade instal..
ara::com에서는 사용 시나리오에 따라 세 가지의 통신 방식, 이벤트(Event), 메서드(Method) 그리고 필드(Field)를 지원한다. 이벤트 : 데이터 기반, 특정 신호를 주기적 또는 갱신 시점에 받아서 처리하는 경우 CAN 신호와 같이 주기적 또는 산발적으로 발생되는 데이터를 교환하는 경우 메서드 : 기능(함수) 기반, 원격지 프로세스의 특정 기능(함수)을 호출하고 그 결과를 확인하는 경우 RPC (Remote Procedure Call)을 통해 외부 프로세스에 구현된 기능을 사용하고 그 결과를 확인코저 하는 경우 필드 : 데이터 기반으로 이벤트와 메서드의 혼합, 어느 시점에나 특정 신호의 값을 받거나 전달하고 그 결과를 확인하고자 하는 경우 외부 프로세스의 데이터를 필요한 시점에 언제나 ..
ara::com에서의 이벤트 통신 서비스 절차는 우선 서버는 제공 서비스 식별을 위해 서버에서 서비스 인스턴트 ID를 생성 제공할 서비스의 등록과 전송을 위해, 관련 API가 구현된 스켈레톤 클래스 (service_interfaces.arxml에서 생성된)의 인스턴스 생성 생성된 인스턴스의 OfferService()를 통해 서버의 서비스를 등록 생성된 인스턴스의 Send()를 통해 서비스의 데이터 업데이트 클라이언트는 Service_interfaces.arxml을 통해 생성된 프록시 클래스의 FindService()를 통해 필요 서비스의 존재 유무 확인 수집된 정보를 바탕으로 프록시 클래스의 인스턴트 생성 (해당 서비스가 없으면 프록시 생성 필요 없으므로) 서비스 데이터 업데이트 시 호출될 수신 핸들러 ..