부팅(Booting)은 컴퓨터 시스템이 켜질 때 운영 체제를 로드하여 실행 가능한 상태로 만드는 과정을 말한다. 이 과정은 하드웨어 초기화부터 운영 체제 로드까지 단계적으로 이루어진다. 부팅은 컴퓨터 전원을 켤 때 수행된다. 부트(boot)라는 이름은 "bootstrap"에서 유래했다.
부팅의 주요 종류
- Cold Boot:
- 컴퓨터 전원을 처음 켜는 과정.
- 하드웨어를 초기화한 후 운영 체제를 로드.
- Warm Boot:
- 시스템이 이미 실행 중일 때 재부팅(Restart)을 수행하는 과정.
- 하드웨어 초기화 과정이 생략될 수도 있음.
부팅 과정의 단계
전원 공급 및 하드웨어 초기화
- 전원 공급(POST 시작):
- 컴퓨터에 전원이 공급되면, CPU는 하드웨어를 초기화하기 시작.
- POST (Power-On Self-Test):
- 하드웨어 테스트 수행.
- CPU, 메모리(RAM), 키보드, 디스크 드라이브 등의 기본 하드웨어가 정상 작동하는지 점검.
- 문제가 있으면 비프음(beep code) 또는 화면 메시지로 알림.
부트로더(Loader) 실행 준비
- BIOS/UEFI 실행:
- BIOS (Basic Input/Output System) 또는 UEFI (Unified Extensible Firmware Interface)가 ROM에 저장된 상태에서 실행.
- 하드웨어와 소프트웨어 간 인터페이스 역할을 수행.
- 저장 장치에서 운영 체제를 로드할 디바이스를 결정.
- 부트 디바이스 목록을 검사해 디스크(또는 네트워크)에서 부팅 가능한 디스크를 선택.
- MBR 또는 GPT 확인:
- 부팅 가능한 디스크의 첫 번째 섹터(MBR 또는 GPT)를 확인.
- 여기서 부트로더가 위치.
부트로더(Loader) 실행
- 부트로더란?
- 운영 체제를 메모리에 로드하고 제어를 넘기는 역할을 담당.
- 예시: GRUB(Linux), NTLDR(Windows), BOOTMGR(Windows).
- 1단계 부트로더:
- BIOS/UEFI에서 로드되며, 운영 체제가 저장된 파티션과 2단계 부트로더를 식별.
- 2단계 부트로더:
- 운영 체제를 로드.
- 운영 체제의 커널을 메모리에 복사한 후 실행 시작.
커널 로드
- 부트로더가 선택한 운영 체제의 커널(kernel)을 메모리에 로드.
- 커널은 하드웨어와 소프트웨어를 관리하는 시스템의 핵심.
- 초기화 작업:
- CPU 및 메모리 구성.
- 디바이스 드라이버 로드.
- 프로세스 관리 준비.
사용자 공간(User Space) 초기화
- 커널이 초기화되면, 사용자 공간 프로그램을 실행.
- init 시스템(Linux) 또는 Windows Session Manager가 시작.
- init: Linux에서 사용되는 프로세스 관리 시스템(예: systemd).
- Windows:
wininit.exe를 통해 초기화 수행.
- 사용자 로그인 화면 또는 GUI 환경 제공.
BIOS vs. UEFI
| 항목 | BIOS | UEFI |
|---|
| 동작 방식 | 하드웨어 초기화 후 MBR 부트 | 하드웨어 초기화 후 GPT 부트 |
| 지원 저장 장치 | 2TB 이하 | 2TB 이상 |
| 부트 속도 | 느림 | 빠름 |
| 인터페이스 | 텍스트 기반 | GUI 지원 |
| 확장성 | 제한적 | 확장 가능(모듈 추가 가능) |
운영 체제별 부트로더 예시
- Linux:
- GRUB (GRand Unified Bootloader): 다중 운영 체제 선택 가능.
- LILO (Linux Loader): GRUB 이전의 부트로더.
- Windows:
- BOOTMGR: Windows 부트로더.
- NTLDR: Windows XP 이전에 사용된 부트로더.
- macOS:
정리
- POST: 전원 공급 후 하드웨어 테스트.
- BIOS/UEFI: 하드웨어 초기화 및 부트 디바이스 선택.
- MBR/GPT: 디스크 파티션 및 부트로더 정보 저장.
- 부트로더: 운영 체제의 커널 로드.
- 커널 초기화: 운영 체제 실행 준비.
- 사용자 환경 로드: 로그인 화면 또는 데스크톱 환경 제공.
이 모든 과정이 순차적으로 이루어지며, 부팅이 완료되면 사용자가 시스템을 사용할 수 있다.