부트스트래핑
컴퓨터에서 부트스트래핑(Bootstrapping) 또는 부팅(Booting)은 컴퓨터에 전원을 인가했을 때 연산을 시작하며 주기억장치에 프로그램을 적재해 시스템을 절차에 따라 준비하는 과정을 뜻한다. 펌웨어 단계에서 수행되며, 해당 역할을 하는 펌웨어를 부트로더(Boot Loader)라고 한다.
장화를 신기 위해 장화 뒤꿈치에 다는 루프형 끈을 잡아당기는 행위에서 이름을 따왔다.
부트로더 종류
1차 단계 부트 로더(First Stage Boot Loader)
- BIOS: 고전 PC의 1차 부트 로더
- UEFI: 현재 PC의 1차 부트 로더
- coreboot: BIOS 및 UEFI를 대체하기 위한 오픈소스 1차 부트 로더 프로젝트. GNU Public License로 배포된다.
- Das Uboot: ARM이나 MIPS 같은 임베디드 RISC CPU 기반 시스템에서는 주로 이것을 많이 쓴다. GNU Public License로 배포되며 직접 컴파일하여 제작한다.
2차 단계 부트 로더(Second Stage Boot Loader)
- BOOTMGR 및 NTLDR: 마이크로소프트 윈도우의 부트 로더
- GNU GRUB: 현재 리눅스와 기타 유닉스 시스템 대다수가 사용하는 부트 로더
- Syslinux: 리눅스를 위해 제작한 GRUB의 대안
- iBoot: 현대 Apple의 OS의 부트로더
네트워크 부트 로더
가끔 전원 인가시 유무선 통신으로 OS 프로그램을 받아 부팅하는 방법이 있다. 주로 학교나 관공서 PC가 이런 형태를 취하는 경우가 많고 PC방에서도 쓰이는 사례가 있다.
NetBoot, EBoot 등이 여기 들어간다.