반응형

2025/03/15 3

Android의 전체 아키텍처 개요

Android의 전체 아키텍처 개요Android는 개방형 모바일 운영체제로, 다양한 하드웨어에서 동작할 수 있도록 여러 계층으로 구성되어 있습니다. 본 포스팅에서는 Android의 전체 아키텍처를 Linux Kernel, HAL(Hardware Abstraction Layer), Native Libraries, Framework, Application Layer로 나누어 설명합니다. 또한, 각 계층의 역할과 AOSP(Android Open Source Project) 코드 일부를 예시로 들어 설명하겠습니다.1. Android 아키텍처 개요Android 아키텍처는 크게 다음과 같은 계층으로 구성됩니다:Linux Kernel: 하드웨어와 직접 상호작용하며 Android 시스템의 기반이 되는 계층HAL (Ha..

Android/Framework 2025.03.15

Embedded Linux에서 Root Filesystem 생성하기

Embedded Linux에서 Root Filesystem 생성하기임베디드 시스템에서 Linux Kernel을 구동하려면 Root Filesystem(이하 Rootfs)이 반드시 필요합니다. Rootfs는 커널이 부팅한 후 시스템 동작에 필요한 기본 파일, 라이브러리, 그리고 실행 파일 등을 포함합니다. 이 글에서는 Rootfs 생성 방법과 최적화, 커스터마이징 방법을 Rockchip RK3399 플랫폼을 기준으로 설명합니다.1. Root Filesystem의 개념Rootfs는 다음과 같은 요소들로 구성됩니다:기본 디렉토리 구조: /bin, /lib, /etc, /dev, /usr, /var 등.필수 파일 및 라이브러리: init 파일, C 표준 라이브러리 등.필수 디바이스 파일: /dev 디렉토리 내의..

Linux/Kernel Driver 2025.03.15

Bzip2 압축 알고리즘

Bzip2 압축 알고리즘1. 개요Bzip2는 무손실 데이터 압축 알고리즘으로, Burrows-Wheeler 변환(BWT)과 무브 투 프론트 변환(MTF) 등의 기법을 활용하여 높은 압축률을 제공합니다. 이 알고리즘은 gzip보다 높은 압축률을 제공하며, 텍스트 파일과 같은 반복 패턴이 많은 데이터에서 특히 효과적입니다.2. Bzip2의 동작 원리Bzip2는 여러 단계의 변환을 거쳐 데이터를 압축합니다. 주요 단계는 다음과 같습니다.2.1 Burrows-Wheeler 변환 (BWT)Burrows-Wheeler 변환은 입력 문자열의 모든 회전(rotation)을 생성한 후 이를 사전 순으로 정렬하고 마지막 열을 추출하는 방식으로 동작합니다. 이 변환을 통해 데이터의 연속적인 패턴이 강조되어 후속 압축 단계에..

반응형