부트스트랩 프로그램 (Bootstrap Program)
Jan 25, 2026
핵심 개념
섹션 제목: “핵심 개념”부트스트랩 프로그램은 컴퓨터 전원이 켜지거나 재부팅될 때 실행되는 초기 프로그램으로, 운영체제를 로드하는 역할을 한다.
RAM은 휘발성이므로 부트스트랩 프로그램을 저장할 수 없다. 대신 펌웨어(firmware) 에 저장된다.
부트스트랩의 역할
섹션 제목: “부트스트랩의 역할”- CPU 레지스터부터 장치 컨트롤러, 메모리 내용까지 시스템의 모든 측면을 초기화
- 운영체제 커널을 찾아 메모리에 로드
- 운영체제 실행을 시작
저장 위치
섹션 제목: “저장 위치”| 저장 매체 | 특징 |
|---|---|
| 펌웨어 | 드물게 쓰여지고 비휘발성인 저장장치 |
| EEPROM | 변경 가능하지만 자주 변경 불가, 느림 |
예: iPhone은 EEPROM을 사용하여 장치의 시리얼 번호와 하드웨어 정보를 저장한다.
부팅 과정
섹션 제목: “부팅 과정” 1 전원 ON
2 부트스트랩 실행
3 시스템 초기화
4 커널 로드
5 데몬 시작
6 부팅 완료
| 단계 | 동작 |
|---|---|
| 1. 전원 ON | 컴퓨터 전원 켜짐 또는 재부팅 |
| 2. 부트스트랩 실행 | 펌웨어에 저장된 부트스트랩 프로그램 실행 |
| 3. 시스템 초기화 | CPU 레지스터, 장치 컨트롤러, 메모리 등 초기화 |
| 4. 커널 로드 | 운영체제 커널을 찾아 메모리에 로드 |
| 5. 시스템 데몬 시작 | 커널 실행 후 시스템 서비스 시작 |
| 6. 부팅 완료 | 시스템과 사용자에게 서비스 제공 시작 |
시스템 데몬
섹션 제목: “시스템 데몬”커널 외부에서 일부 서비스는 부팅 시 메모리에 로드되는 시스템 데몬(system daemons) 에 의해 제공된다.
- 커널이 실행되는 전체 시간 동안 실행됨
- Linux에서 첫 번째 시스템 프로그램은 systemd이며, 이것이 다른 많은 데몬을 시작함
관련 개념
섹션 제목: “관련 개념”- 시스템 부팅 (System Boot) - 부트스트랩 프로그램이 커널을 로드하여 컴퓨터를 시작하는 전체 부팅 과정
- 커널 (Kernel) - 부트스트랩 프로그램이 메모리에 로드하는 운영체제의 핵심 프로그램
- 폰 노이만 아키텍처 (Von Neumann Architecture) - 메모리에서 명령어를 가져와 실행하는 컴퓨터 구조
- 운영체제 (Operating System) - 부트스트랩 프로그램에 의해 로드되어 하드웨어를 관리하는 소프트웨어
- Operating System Concepts, 10th Edition, Chapter 1, p.11-12, 21-22