[임베디드 기초] 1편 - 임베디드 시스템과 펌웨어란 무엇인가

들어가며 학부 때 ESP32로 재활 자전거 IoT 모니터링 시스템을 만들고, 석사에서는 Tinker Board 2S와 STM32를 써서 HBOT 챔버 제어 시스템을 구축했다. 그 과정에서 꽤 다양한 것들을 다뤘다. 근데 기술 스택을 쌓는 데 집중하다 보면 정작 가장 기본적인 개념들이 흐릿해지기 마련이다. 그래서 지금까지 해온 것들의 기반이 되는 기초 개념들을 처음부터 다시 정리해보기로 했다. 당연하게 써왔던 것들의 의미를 되짚어보는 시리즈다. 임베디드 시스템이란? 임베디드 시스템(Embedded System) 은 특수한 목적을 위해 설계된 컴퓨터 시스템이다. ...

April 7, 2026 · 4 min · 서보민

[임베디드 기초] 2편 - 메모리 구조와 변수 저장 원리

들어가며 1편에서 펌웨어가 플래시에 저장되고, 변수는 RAM에서 동작한다고 정리했다. 그런데 막상 “전역변수는 어디 저장돼요?”, “const는요?” 라는 질문을 받으면 정확하게 대답하기가 쉽지 않다. 2편에서는 STM32 메모리 구조를 조금 더 깊이 들어가본다. 내가 선언한 변수 하나가 어느 메모리 영역에 올라가는지, 링커가 이걸 어떻게 결정하는지까지 정리한다. Flash vs RAM 다시 짚기 STM32에는 크게 두 가지 메모리가 있다. Flash (플래시) non-volatile — 전원을 꺼도 데이터가 유지된다 읽기는 자유롭지만, 쓰기는 Erase → Write 순서로 페이지/섹터 단위로만 가능하다 속도가 RAM보다 느리다 코드(명령어), 상수, 전역변수 초기값이 저장된다 RAM ...

April 7, 2026 · 5 min · 서보민