반응형

2025/03 101

HAL 로그 확인 및 디버깅 (logcat, dmesg), HAL이 정상적으로 동작하지 않을 때 문제 해결 방법

HAL 로그 확인 및 디버깅 (logcat, dmesg), HAL이 정상적으로 동작하지 않을 때 문제 해결 방법Android 시스템에서 HAL(Hardware Abstraction Layer)은 하드웨어와 상위 프레임워크를 연결하는 중요한 계층입니다. 그러나 HAL이 정상적으로 동작하지 않는 경우, 이를 분석하고 해결하는 과정이 필요합니다. 이 글에서는 HAL 로그를 확인하는 방법(logcat, dmesg)과 HAL이 정상적으로 동작하지 않을 때 문제를 해결하는 방법을 설명합니다.1. HAL 로그 확인 방법HAL이 정상적으로 동작하는지 확인하려면, 다양한 로그를 분석해야 합니다. Android에서는 logcat과 dmesg 명령어를 사용하여 HAL의 동작을 확인할 수 있습니다.1.1 logcat 로그 확..

Android/Framework 2025.03.28

Embedded Linux Kernel: Custom Kernel 패치 및 빌드

Embedded Linux Kernel: Custom Kernel 패치 및 빌드Embedded 시스템에서 Linux Kernel을 사용하는 경우, 하드웨어 및 소프트웨어 요구사항에 맞춰 커널을 커스터마이징하는 작업은 필수적입니다. 오늘 포스팅에서는 Rockchip RK3399 시스템을 기준으로 Kernel 소스 코드 수정 및 패치 작성 방법과 특정 Embedded 시스템에 맞춘 Kernel 빌드 방법을 설명합니다.1. Kernel 소스 코드 수정 및 패치 작성커널 패치 작성은 기존 커널 소스에 새로운 기능을 추가하거나, 기존 코드를 수정하여 시스템에 적합한 커널 이미지를 생성하는 과정입니다.1.1 Kernel 소스 코드 준비Rockchip GitHub에서 Kernel 소스를 클론합니다:# Kernel 소..

Linux/Kernel Driver 2025.03.28

AWS IoT Thing 등록 및 인증서 발급 방법: Provisioning 종류와 특징

AWS IoT Thing 등록 및 인증서 발급 방법: Provisioning 종류와 특징AWS IoT에서 디바이스를 등록하고 인증서를 발급하는 과정은 보안과 운영 효율성을 고려하여 다양한 방식으로 제공됩니다. 이를 통칭하여 provisioning이라 하며, 적절한 방식으로 디바이스를 프로비저닝해야 원활한 IoT 운영이 가능합니다. 이번 포스팅에서는 AWS IoT에서 제공하는 provisioning 방식의 종류와 특징 및 절차를 설명하겠습니다.1. AWS IoT Provisioning 방식 개요AWS IoT에서 디바이스를 등록하고 인증서를 발급하는 provisioning 방식은 다음과 같이 구분됩니다.Provisioning 방식특징절차JITR (Just-In-Time Registration)디바이스가 처음..

AWS IoT 2025.03.27

Android HAL 레이어에서 Native Library 및 커널 드라이버 연동

Android HAL 레이어에서 Native Library 및 커널 드라이버 연동1. 개요Android 하드웨어 추상화 계층(HAL, Hardware Abstraction Layer)은 애플리케이션과 하드웨어 간의 인터페이스 역할을 수행합니다. HAL을 통해 Android 프레임워크는 하드웨어에 직접 접근하는 것이 아니라 표준화된 API를 사용하여 장치를 제어할 수 있습니다.이번 글에서는 HAL 레이어에서 Native Library 및 커널 드라이버와의 연동 방법을 설명합니다. 또한, AOSP(Android Open Source Project) 코드 예제를 통해 실제 구현 방식도 살펴보겠습니다.2. HAL과 Native Library, 커널 드라이버의 관계Android의 하드웨어 접근 구조는 일반적으로 ..

Android/Framework 2025.03.27

Embedded Linux에서 전력 관리 기술과 Device Driver의 전력 관리 구현

Embedded Linux에서 전력 관리 기술과 Device Driver의 전력 관리 구현임베디드 시스템은 제한된 전력 자원에서 동작하는 경우가 많아 효율적인 전력 관리가 필수적입니다. Linux 커널은 다양한 전력 관리 기법과 API를 제공하여 개발자가 시스템의 전력 소비를 최적화할 수 있도록 돕습니다. 이 글에서는 Embedded Linux에서 전력 관리 기술의 개요와 Device Driver에서 전력 관리를 구현하는 방법에 대해 Rockchip RK3399 시스템을 예제로 설명하겠습니다.1. Embedded Linux에서 전력 관리 기술1.1 전력 관리의 주요 구성 요소Embedded Linux의 전력 관리는 다음과 같은 주요 구성 요소로 이루어집니다:CPU Idle States: 프로세서가 유휴 ..

Linux/Kernel Driver 2025.03.27

IoT Thing(디바이스) 등록 및 인증서 발급

IoT Thing(디바이스) 등록 및 인증서 발급1. 개요AWS IoT를 활용하여 IoT 디바이스를 AWS 클라우드에 연결하려면, Thing(디바이스) 등록 및 인증서 발급 과정이 필요합니다. 이 과정에서는 AWS IoT Core에 디바이스를 Thing으로 등록하고, 인증서를 생성하여 보안 연결을 설정합니다. 이 글에서는 ESP32를 기반으로 AWS IoT Device SDK for Embedded C를 활용하여 등록하는 방법을 설명하며, AWS IoT 서버 측의 설정을 Python 코드로 구현합니다.2. AWS IoT Thing(디바이스) 등록AWS IoT 콘솔 또는 AWS CLI를 이용하여 디바이스를 등록할 수 있습니다. 여기서는 AWS CLI를 사용한 방법을 소개합니다.2.1 AWS CLI를 이용한..

AWS IoT 2025.03.26

Android HAL 모듈 작성 방법

Android HAL 모듈 작성 방법Android의 HAL(Hardware Abstraction Layer)은 하드웨어와 프레임워크 사이의 추상화 계층을 제공하여, 특정 하드웨어 구현이 Android 시스템과 연동될 수 있도록 합니다. 본 포스팅에서는 새로운 HAL 모듈을 작성하는 방법에 대해 설명하며, 필요한 경우 AOSP(Android Open Source Project) 코드와 함께 설명하겠습니다.1. HAL 개요HAL은 Android의 하드웨어 접근을 추상화하는 계층으로, Android 프레임워크가 하드웨어의 구체적인 구현을 알 필요 없이 표준 인터페이스를 통해 하드웨어를 제어할 수 있도록 합니다. HAL은 보통 .so(shared object) 라이브러리 형태로 제공되며, hwserviceman..

Android/Framework 2025.03.26

Embedded Linux Kernel 디버깅 가이드

Embedded Linux Kernel 디버깅 가이드Embedded Linux Kernel 개발을 하다 보면 다양한 문제에 직면하게 됩니다. 이를 해결하기 위해서는 커널 디버깅 기술이 필수적입니다. 이번 포스팅에서는 Linux Kernel 디버깅 방법을 소개하고, Rockchip RK3399 시스템을 기준으로 예제를 통해 gdb, kgdb, ftrace 등을 활용한 디버깅 방법을 설명합니다.1. Kernel 로그 확인 및 디버깅 도구1.1 dmesg 명령어Linux Kernel은 시스템 부팅 과정과 실행 중 발생하는 로그를 기록합니다. 이 로그는 dmesg 명령어를 통해 확인할 수 있습니다.# dmesg 로그 확인$ dmesg | less# 특정 키워드 필터링$ dmesg | grep "error"1.2..

Linux/Kernel Driver 2025.03.26

AWS IoT Core를 이용한 기본 설정

AWS IoT Core를 이용한 기본 설정1. 개요AWS IoT Core는 AWS에서 제공하는 클라우드 기반 IoT 서비스로, 다양한 IoT 디바이스와 안전하게 연결하고 데이터를 송수신할 수 있도록 지원합니다. 본 포스팅에서는 AWS IoT Core의 기본 설정 방법을 소개하고, ESP32를 이용한 온도 센싱 디바이스 예제를 구현하여 AWS IoT 서버와의 연동을 설명하겠습니다.2. AWS IoT Core 설정2.1 AWS IoT 콘솔 접속 및 사물(Thing) 등록AWS 콘솔(https://aws.amazon.com/console/)에 로그인합니다.AWS IoT Core 서비스로 이동합니다.좌측 메뉴에서 Manage > Things를 선택합니다.Create Things 버튼을 클릭하고, 원하는 사물(T..

AWS IoT 2025.03.25

Android HAL 모듈 분석: Camera HAL과 Audio HAL

Android HAL 모듈 분석: Camera HAL과 Audio HALAndroid의 HAL(Hardware Abstraction Layer)은 하드웨어와 상위 애플리케이션 프레임워크 사이의 추상화 계층을 제공하는 중요한 구성 요소입니다. 이번 글에서는 HAL의 개념을 설명하고, 대표적인 HAL 모듈인 Camera HAL과 Audio HAL을 AOSP(Android Open Source Project) 코드와 함께 분석하겠습니다.1. HAL 개요HAL은 Android의 아키텍처에서 하드웨어 추상화 계층을 담당하며, 하드웨어와 직접 상호 작용하는 Native 코드로 구현됩니다. Android의 상위 레벨 API(Application Framework)는 HAL을 통해 하드웨어에 접근하며, HAL은 다시 ..

Android/Framework 2025.03.25
반응형