먼저 UEFI가 먼지 이해하려면 BIOS를 알아야 한다.
BIOS란?
컴퓨터가 켜지면 가장 먼저 실행되서 부팅 준비 작업을 하는 시스템 소프트웨어를 부트 펌웨어라고 한다. 전통적으로는 BIOS (Basic Input/Output System)가 이 역할을 담당했다.
BIOS는 다음 과정을 통해 운영체제를 부팅한다.
- 하드웨어 초기화 (POST)
- 전원이 켜지면 BIOS는 POST(Power-On Self-Test)를 수행하여 CPU, 메모리, 그래픽 카드 등 주요 부품이 정상인지 확인하고 사용할 준비를 마친다.
- 부팅 디바이스 탐색 (Boot Priority)
- BIOS 설정에 저장된 부팅 우선순위(Boot Priority Order)에 따라 어떤 저장장치(HDD, SSD, USB 등)에서 부팅할 것인가가 정해지고, 첫 번째 디스크의 맨 앞 512 바이트 MBR(Master Boot Record) 영역을 읽는다.
- MBR 안의 부트 코드 실행
- MBR은 부트 코드와 파티션 테이블로 이루어져 있는데, 부트 코드는 파티션 테이블을 훑어보고 Active(실행 가능)으로 표시된 파티션을 찾아 파티션 시작지점으로 점프한다.
- OS 부트로더로 제어 전달
- 부트코드가 찾은 파티션의 시작 부분(VBR: Volume Boot Record)에는 실제 OS 부트로더(ex. Windows의 bootmgr, 리눅스의 grub)있어서, 제어권은 완전히 OS 부트로더로 넘어가고 부트로더가 커널을 로드하며 운영체제로 부팅이 완료된다.
※ 참고로 MBR(Master Boot Record)는 문맥에 따라 GPT와 대비되는 디스크 구조를 뜻하기도 하지만, 디스크 맨 앞의 512 바이트 영역을 의미하기도 한다.
아무튼 그런 BIOS에는 한계가 많았다.
- 2TB 이상 디스크 지원 불가
- 파티션 개수 4개 제한
- 보안 기능 부족
- 현대 시스템에 적용하기에 비효율적
그래서 이를 완전히 대체하기 위해 등장한 것이 UEFI이다.
UEFI란?
UEFI (Unified Extensible Firmware Interface)는 BIOS를 대체하기 위해 만들어진 현대식 부트 펌웨어 시스템이다.
UEFI는 더 이상 MBR에 있는 512바이트 부트코드를 사용하지 않고, 대신 GPT(GUID Partition Table) 기반 디스크의 EFI System Partition(ESP) 안에 있는 .efi 파일을 읽어 부팅한다.
GPT란?
GPT(GUID Partition Table)는 UEFI가 사용하도록 설계된 최신 파티션 구조로, MBR의 한계를 극복하기 위해 등장했다.
GPT의 주요 특징은 다음과 같다.
- 2TB 이상 디스크 지원 (ZB 이상도 가능)
- 파티션 개수 무제한 (Windows 기준 최대 128개)
- 파티션 정보가 디스크 앞부분과 뒷부분에 이중 백업되어 안정적
- EFI System Partition(ESP)을 통해 UEFI 부팅 가능
UEFI 부팅 과정
UEFI의 OS 부팅 과정은 다음과 같다.
- UEFI 펌웨어 실행 및 하드웨어 초기화 (POST)
- 부팅 디바이스 탐색 (Boot Priority)
- 디스크 내에서 FAT32 파일시스템으로 포맷된 EFI 시스템 파티션(ESP) 탐색
- EFI 실행 파일 로드
- ESP 파티션 폴더 내에 저장된 .efi 확장자의 부트로더 파일을 실행한다.
- Windows : \EFI\Microsoft\Boot\bootmgfw.efi
- Linux : \EFI\ubuntu\grubx64.efi
- 범용 부트로더 : \EFI\boot\bootx64.efi
- ESP 파티션 폴더 내에 저장된 .efi 확장자의 부트로더 파일을 실행한다.
- OS 부트로더로 제어 전달
EFI 시스템 파티션(ESP) 실제 구조
대부분의 리눅스 배포판에서 EFI 파티션은 /boot/efi 경로에 마운트되어 있으므로 쉽게 접근할 수 있다.

윈도우의 경우는 보안을 위해 해당 파티션이 일반 탐색기에서는 숨겨져 있고, diskpart 명령을 통해 드라이브 문자를 임시로 할당해야 내부 파일을 열어볼 수 있다.

UEFI의 장점
BIOS 대비 UEFI의 장점은 다음과 같은 것들이 있다.
- 2TB 이상 대용량 디스크 지원
- 파티션 제한 없음
- Secure Boot 가능
- 빠른 부팅
- 그래픽 UI 설정화면 제공 및 마우스 조작 지원
- 부트로더가 파일 형태라 관리 쉬움
※ 참고로 요즘 PC들은 99% UEFI 방식을 사용하지만, 관습적으로 써온 용어기 때문에 '바이오스 진입'이나 '바이오스 설정'이라는 표현을 그대로 사용하고 있다.
요약
- BIOS : 옛날 부트 펌웨어
- MBR : BIOS가 사용하는 파티션 구조
- UEFI : 최신 부트 펌웨어
- GPT : UEFI가 사용하도록 설계된 최신 파티션 구조
- BIOS는 MBR을 읽고 부팅
- UEFI는 GPT의 EFI 파티션 안에 있는 .efi 파일을 실행하여 부팅
'임베디드 개발 > 펌웨어' 카테고리의 다른 글
| 선형 보간 (Linear Interpolation) (0) | 2025.12.25 |
|---|---|
| TPS3808 ] Supervisor IC (0) | 2025.10.06 |
| 555 Timer의 Monostable & Astable Operation 모드 (0) | 2025.10.03 |
| 인덕터 고장 검사 with 멀티미터 (0) | 2025.09.30 |
| MIPI D-PHY (with IMX219 Waveform) (0) | 2025.09.21 |