본문 바로가기

Embedded/Embedded Software50

Kconfig, defconfig, .config? Linux kernel Kconfig, defconfig, .config를 이해하기 위해서 “리눅스 커널을 직접 빌드해서 내 보드에서 돌리고 싶다”고 가정해봅시다.그럼 커널에게 이런 걸 알려줘야 해요“나는 어떤 CPU를 쓸 거고, 어떤 드라이버를 켜고 끌 거고, 어떤 파일시스템을 쓸 거야.” 이 설정을 ‘커널 설정(configuration)’이라고 부르고,그걸 저장하고 관리하는 파일들이 바로Kconfig, defconfig, .config 입니다.커널 설정의 흐름 한 줄 요약📂 Kconfig → 📄 defconfig → 🧾 .config1️⃣ Kconfig — 메뉴 설계도 (설정 항목의 “설계도”)“어떤 설정 항목이 존재하는가?”를 정의해둔 파일이에요.커널 소스코드 곳곳에 Kconfig 파일이 있음각 디렉터리별로 설정 항.. 2025. 10. 27.
POSIX(Portable Operating System Interface for UNIX), pthread 1️⃣ POSIX란?POSIX(Portable Operating System Interface for UNIX) → “유닉스 계열 운영체제 간 호환성을 위한 표준 인터페이스”쉽게 말해 운영체제의 공통 언어로, 리눅스, 유닉스, macOS에서 똑같이 통하는 약속 2️⃣ POSIX와 스레드 (Pthreads)POSIC는 여러 기능을 표준화했는데, 그중 멀티스레드 관련 표준이 Pthreads (POSIX Threads)입니다.Pthreads = POSIX 표준 스레드 라이브러리C 프로그램에서 스레드를 생성하고 제어할 때 pthread_로 시작하는 함수들을 사용합니다. pthread_create(), pthread_join(), pthread_mutex_lock() 등 3️⃣ 스레드(Thread)란?하나의 프로.. 2025. 10. 21.
2025 정기 기사 3회 - 임베디드 기사 필기 합격 ㅎㅎ 오늘 임베디드 기사 필기 결과가 나왔네요. 하ㅏ하 이제 실기 공부도 해야겠습니다아래의 임베스트라는 사이트의 자료를 구매해서 공부했습니다. http://www.embeddedgisa.com/user/workbook.php 임베스트 www.embeddedgisa.com 2025. 9. 10.
Makefile default grammer - Pattern Rule, Automatic Variable 1️⃣ Pattern Rule?Used to process similar rules in batches.%.o: %.c command%.o: Any .o file%.c: the corresponding .c filePattern => Deduplication 2️⃣ Automatic Variable?Automatically provide specific information within the build command.automatic variableMeaning$@name of current target$first dependency (input file)$^all of dependencies (deduplication) ExampleCC = gccCFLAGS = -WallOBJS = main.o ut.. 2025. 4. 25.
Makefile default grammar - default structure, using variables, cleaning files, .PHONY MakefileIf you look at numerous open sources on Git, you can often see that Makefile is included.Makefile provides automation build and run the command like gcc, as, ld. 1️⃣ Makefile default grammertarget: dependencies command target: Result that you want to make (ex: main.o, main.elf, clean)dependencies: file required to create targetcommand: Commands to be executed (must start with a tab!)2️⃣E.. 2025. 4. 23.
ESP-IDF를 이용한 펌웨어 빌드(with CMake), 플래싱, 모니터링 ESP-IDF를 이용한 펌웨어 빌드(with CMake), 플래싱, 모니터링임베디드 개발을 하다 보면, 펌웨어를 빌드하고 보드에 업로드(플래싱)하며, 실행 로그를 모니터링하는 과정이 필수적입니다.ESP32 개발에서는 ESP-IDF를 사용하여 이를 손쉽게 진행할 수 있으며, 빌드 시스템으로 CMake를 활용합니다.이번 글에서는 ESP-IDF에서 CMake가 어떤 역할을 하는지 설명하고, 펌웨어를 빌드, 플래싱, 모니터링하는 방법을 소개합니다.1️⃣ CMake란? ESP-IDF에서 CMake가 하는 역할CMake란?CMake는 소프트웨어 빌드를 자동화하는 도구입니다.ESP-IDF에서는 CMake를 통해 프로젝트의 빌드 과정과 설정을 정의합니다.ESP-IDF에서 CMake의 역할소스 코드와 라이브러리를 어떻게.. 2025. 4. 19.