/
https://42jerrykim.github.io/ _index.md
안드로이드 하드웨어 개발자가 필요한 이유와 앱 개발자와의 차이, AOSP 5계층 구조와 Treble 아키텍처, Phase 1~4 구성 근거, 00~18장 전체 목차, 선수 지식과 완주 후 갖추는 구체적 실무 역량을 정리한 과정 개요 챕터. SoC와 Cortex-A big.LITTLE 구조, GPU·NPU, LPDDR·UFS 메모리 계층, 무선 연결성, 센서·디스플레이, DVFS·열 관리까지 안드로이드 단말 하드웨어의 핵심 구성 요소를 이론 중심으로 정리한다. 안드로이드의 5-레이어 소프트웨어 스택과 Zygote 프로세스 모델, Binder IPC 메커니즘, ART의 AOT/JIT 하이브리드 컴파일 구조를 이론 중심으로 분석하고 AIDL 기반 시스템 서비스 구현으로 실전 감각을 잡는다. Android Common Kernel과 GKI 구조, ashmem·Binder·Wakelock·Low Memory Killer 같은 안드로이드 전용 커널 서브시스템, Device Tree 기반 하드웨어 기술, 커스텀 커널 빌드·플래시 절차를 이론과 실전 코드로 정리한다. Legacy HAL의 단일 프로세스 구조와 Project Treble이 도입한 HIDL·AIDL 기반 벤더 인터페이스를 비교하고, VINTF 호환성 검증 메커니즘과 커스텀 AIDL HAL을 설계·구현·등록하는 전체 흐름을 실전 예제로 설명한다. SystemServer 부팅 흐름과 ServiceManager 레지스트리, AIDL 인터페이스 설계를 중심으로 AMS·PMS의 내부 구조를 분석하고, 커스텀 시스템 서비스를 SystemServer에 등록하는 전 과정을 실제 AOSP 코드로 다룬다. AOSP frameworks/base 수정 범위를 정의하고 Runtime Resource Overlay·config.xml 오버레이로 리소스를 안전하게 교체하며 SystemUI를 커스터마이징하는 절차와 판단 기준을 다룬다. 커널 모듈과 캐릭터·플랫폼 드라이버 구조, sysfs·ioctl 두 제어 경로의 트레이드오프를 이론적으로 정리하고, IMU 센서 드라이버를 실제로 작성해 AIDL 센서 HAL과 연결하는 과정과 V4L2 카메라 드라이버가 카메라 HAL로 이어지는 방식을 실전 예제로 설명한다. BootROM부터 커널까지 이어지는 부트 체인의 단계와 LK·ABL·U-Boot의 역할, A/B 파티션 기반 무중단 업데이트, Android Verified Boot의 서명·롤백 검증, fastboot 프로토콜의 동작 원리를 실전 코드로 정리한다. Perfetto·systrace로 시스템을 트레이싱하는 원리, ANR·Jank의 판정 기준과 임계값, 힙/네이티브 메모리 프로파일링, cpufreq 거버너 기반 DVFS 튜닝까지 성능 진단 절차를 이론과 실전 코드로 정리한다.