728x90
반응형

Android 13

HAL 유형

Android 8.0 이상에서 좀 더 모듈식에 가까운 새 아키텍처를 채택하도록 하위 수준 레이어가 재작성됩니다. Android 8.0이상을 실행하는 기기는 HIDL로 작성된 HAL을 지원해야 하지만 아래와 같은 몇 가지 예외가 있습니다. 이러한 HAL은 Passthrough or Binderized 될 수 있습니다. Android 11 (R)에서는 AIDL로 작성된 HAL도 지원됩니다. 모든 AIDL HAL은 Binderized 됩니다. Binderized HALs HAL은 HIDL or AIDL로 표현됩니다. 이러한 HAL은 기존 레거시 HAL을 대체 하기 위함입니다. Binderized HAL에서 Android 프레임워크와 HAL은 바인더 프로세스 간 통신 (IPC) 호출을 사용하여 상호 간에 통신합..

개발 이야기 2020.05.12

Origin HAL Interface

Origin HAL HAL은 HW공급업체에서 구현해야 하는 표준 인터페이스를 정의합니다. Android에서 Low Level의 드라이버 구현을 고려하지 않고 응용어플리케이션 개발을 할 수 있도록 도움을 줍니다. 이 시스템은 Android 8.0 이전까지 사용했으며 이후에는 HIDL로 변경해서 제공하고 있습니다. Vendor사의 하드웨어에 해당하는 HAL 및 드라이버는 일반적으로 공유 라이브러리 모듈(.so파일) 내에 구축됩니다. 안드로이드 시스템이 하드웨어와 올바른 방식으로 상호작용하기 위해서는 각 하드웨어 별 HAL 인터페이스에 정의된 계약을 준수해야합니다. hardware/libhardware/include/hardware/hardware.h 에서 정의된 속성이 있어야 합니다. 이 인터페이스를 사용하..

개발 이야기 2020.05.12

POSIX C pthread

안녕하세요. 앤디라이언입니다. pthread는 posix thread를 줄여서 표현하며, 유닉스 계열 시스템에서 일반적으로 사용하는 thread 관련 표준 API입니다. 쓰레드를 생성하기 위해서는 pthread_create 메서드를 사용합니다. //Create pthread int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void*), void *arg); /*param *thread: 스레드 식별자 : 스레드가 성공적으로 생성되었을 때 생성된 스레드 식별을 위해 사용한다. *attr: 스레드의 특성을 지정하기 위해 사용, 기본 스레드 특성 사용하는 경우는 항상 NULL로 지정한다. start_..

개발 이야기 2020.05.07
728x90
반응형
SMALL