728x90
반응형

2025/03/11 3

Arithmetic Coding

Arithmetic Coding데이터 압축 기법 중 하나인 Arithmetic Coding(산술 부호화)은 확률 모델을 기반으로 가변 길이 부호를 생성하는 방법입니다. 이 글에서는 Arithmetic Coding의 수학적 원리, Huffman Coding과의 비교, 그리고 Java와 C 언어를 이용한 구현 예제 및 응용 방법에 대해 설명합니다.1. Arithmetic Coding의 개요Arithmetic Coding은 고정된 비트 길이를 사용하는 전통적인 부호화 기법과 달리, 입력 데이터를 하나의 실수 구간으로 변환하여 부호화합니다. 이러한 방식은 데이터의 빈도수에 따라 보다 효율적인 압축을 가능하게 합니다.Arithmetic Coding은 다음과 같은 단계로 이루어집니다:입력 심볼의 확률 분포를 기반으..

Linux에서 SocketCAN을 활용한 CAN 네트워크 제어

Linux에서 SocketCAN을 활용한 CAN 네트워크 제어1. 개요CAN(Controller Area Network)은 자동차, 산업 자동화, 로봇 제어 등 다양한 분야에서 사용되는 직렬 통신 프로토콜입니다. Linux에서는 SocketCAN을 통해 CAN 네트워크를 제어할 수 있으며, 이는 기존의 네트워크 소켓 API와 유사한 방식으로 동작합니다.이번 포스팅에서는 Linux의 CAN 드라이버 구조 및 설정, SocketCAN API를 활용한 데이터 송수신, 그리고 Python과 C를 활용한 CAN 통신 프로그래밍 방법을 자세히 살펴보겠습니다.2. Linux의 CAN 드라이버 구조 및 설정2.1 CAN 드라이버 개요Linux 커널은 SocketCAN을 통해 CAN 인터페이스를 네트워크 장치로 지원합니..

CAN 통신 2025.03.11

Embedded Linux Kernel 포팅 기본

Embedded Linux Kernel 포팅 기본1. 서론Embedded 시스템에서 Linux Kernel을 포팅하는 것은 시스템 개발의 중요한 단계 중 하나입니다. 이번 포스팅에서는 Rockchip RK3399 시스템을 기준으로, 하드웨어 사양 분석에서부터 요구사항 정의까지 Linux Kernel 포팅의 기본 절차를 알아보겠습니다.2. Embedded 시스템에서 Linux Kernel 포팅의 기본 절차2.1 하드웨어 사양 분석Embedded 시스템에 Linux Kernel을 포팅하려면 먼저 하드웨어 사양을 분석해야 합니다. 하드웨어 사양 분석은 다음과 같은 항목을 포함합니다:CPU 아키텍처 확인: Rockchip RK3399은 ARMv8 기반의 Cortex-A72와 Cortex-A53 코어를 포함합니다..

Linux/Kernel Driver 2025.03.11
728x90
반응형