본문 바로가기

분류 전체보기119

[임베디드기사 실기 20부작 17편] C Pointer, Struct, Union, malloc/free와 Double Free — 실기에서 자주 나오는 C 언어 핵심 [임베디드기사 실기 20부작 17편] C Pointer, Struct, Union, malloc/free와 Double Free — 실기에서 자주 나오는 C 언어 핵심임베디드기사 실기에서 C 언어 문제는 단순 문법 암기보다 메모리가 실제로 어떻게 배치되고, 포인터가 무엇을 가리키며, 구조체와 공용체가 메모리를 어떻게 사용하는지를 이해하고 있는지를 확인하는 형태로 출제되는 경우가 많습니다.특히 Pointer, Struct, Union, malloc/free, Memory Leak, Double Free는 서로 별개의 주제가 아니라 모두 “주소와 메모리의 생명주기”라는 하나의 축으로 연결됩니다. 이번 편에서는 시험에서 손으로 답을 쓰는 상황을 기준으로, 코드를 읽고 결과를 추적하는 방법까지 함께 정리합니다... 2026. 9. 18.
[임베디드기사 실기 20부작 16편] TCP Socket, 3-Way/4-Way Handshake, UART와 SPI — 임베디드 통신의 핵심 [임베디드기사 실기 20부작 16편] TCP Socket, 3-Way/4-Way Handshake, UART와 SPI — 임베디드 통신의 핵심임베디드 시스템에서 “통신”은 하나의 기술이 아닙니다. Linux 네트워크 프로그램에서는 TCP Socket을 사용하고, MCU와 센서·모듈 사이에서는 UART나 SPI를 사용합니다. 서로 다른 계층의 기술이지만 실기시험에서는 모두 데이터가 어디에서 어디로, 어떤 절차를 거쳐 이동하는가를 묻는다는 공통점이 있습니다.이번 편에서는 TCP 서버의 socket() → bind() → listen() → accept() 흐름, TCP 연결 수립의 3-Way Handshake와 종료의 4-Way Handshake, 그리고 UART와 SPI의 물리적 통신 특성을 한 장 안에서.. 2026. 9. 18.
[임베디드기사 실기 20부작 15편] Makefile, Cross Compiler, Linking, ELF와 readelf — 소스코드가 실행파일이 되는 과정 [임베디드기사 실기 20부작 15편] Makefile, Cross Compiler, Linking, ELF와 readelf — 소스코드가 실행파일이 되는 과정임베디드기사 실기에서는 소스코드를 작성하는 것만큼이나, 그것이 어떻게 오브젝트 파일과 실행파일로 바뀌고, 다른 아키텍처용으로 Cross Compile되며, 최종 ELF 바이너리 내부를 어떻게 검증하는지를 묻는 문제가 반복적으로 등장합니다. 특히 2025년 기출에는 Dynamic Linking, Makefile 자동 변수 $^, readelf, Cross Compile 시 -c와 -o가 함께 출제되었습니다. 이번 편에서는 이 네 주제를 따로 외우지 않고 하나의 Build Pipeline으로 연결해 보겠습니다.1. 전체 흐름부터 — 소스코드는 바로 실행.. 2026. 9. 18.
[임베디드기사 실기 20부작 14편] Mutex, Semaphore, Spinlock, Completion — 동시성 제어와 동기화 완전 이해 [임베디드기사 실기 20부작 14편] Mutex, Semaphore, Spinlock, Completion — 동시성 제어와 동기화 완전 이해임베디드 시스템과 Linux Kernel에서는 여러 Task, Thread, Interrupt Handler가 동시에 같은 자원에 접근합니다. 이때 아무런 보호 없이 공유 데이터를 읽고 쓰면 Race Condition이 발생하고, 심하면 데이터 손상·Deadlock·우선순위 역전·간헐적 오동작으로 이어질 수 있습니다. 이번 편에서는 실기시험의 단골 주제인 Mutex, Semaphore, Spinlock, Completion을 하나의 관점에서 정리해 보겠습니다.1. 먼저 Critical Section부터 이해하자Critical Section(임계구역)은 둘 이상의 실.. 2026. 9. 18.
ORB-SLAM3: 카메라와 IMU로 로봇이 스스로 위치를 찾고 지도를 만드는 방법 ORB-SLAM3: 카메라와 IMU로 로봇이 스스로 위치를 찾고 지도를 만드는 방법로봇이나 자율이동장비가 실제 공간에서 안정적으로 움직이려면 가장 먼저 해결해야 할 문제가 있습니다. 바로 “나는 지금 어디에 있고, 주변 공간은 어떻게 생겼는가?”라는 질문입니다. SLAM(Simultaneous Localization and Mapping)은 이 두 문제, 즉 자기 위치 추정(Localization)과 지도 작성(Mapping)을 동시에 수행하는 기술입니다.이번 글에서는 IEEE Transactions on Robotics에 발표된 ORB-SLAM3 논문을 바탕으로, Visual SLAM과 Visual-Inertial SLAM이 어떻게 동작하는지, ORB-SLAM3가 기존 ORB-SLAM2에서 무엇을 확장.. 2026. 9. 18.
[임베디드기사 실기 20부작 13편] Interrupt, IVT, ISR 그리고 DMA — CPU가 외부 사건을 처리하는 방법 [임베디드기사 실기 20부작 13편] Interrupt, IVT, ISR 그리고 DMA — CPU가 외부 사건을 처리하는 방법임베디드 시스템은 가만히 앉아 계산만 하는 컴퓨터가 아닙니다. 센서 입력이 들어오고, 타이머가 만료되고, UART로 데이터가 도착하며, 모터 드라이버에서 Alarm이 발생합니다. 이런 외부 사건에 CPU가 즉시 반응하도록 만드는 핵심 장치가 Interrupt입니다. 이번 편에서는 Interrupt가 발생한 뒤 CPU가 어떤 순서로 움직이는지, IVT와 ISR은 무엇인지, 그리고 대량 데이터 전송에서 왜 DMA가 중요한지까지 하나의 흐름으로 연결해 보겠습니다.1. Interrupt란 무엇인가Interrupt는 현재 실행 중인 프로그램의 흐름을 잠시 멈추고, 더 긴급한 사건을 처리하도.. 2026. 9. 18.