라즈베리 파이의 부팅 순서는 다음과 같다.
1. 보드에 전원이 들어오고 GPU가 활성화된다.
2. SoC 내 ROM에 있는 첫번째 부트로더(Firmware)를 읽어들인다.
3. 첫번째 부트로더가 SD카드에 있는 두번째 부트로더(bootcode.bin)을 호출한다.
4. 두번째 부트로더가 SD카드에 있는 config.txt를 읽고 실행한다.
4. 두번째 부트로더가 세번째 부트로더(start.elf)를 호출 및 실행하여, ARM Core를 활성화한다.
6. ARM Core가 활성화되면 네번째 부트로더(kernel.img)를 호출, 실행한다.
그래서 Raspberry Pi를 구동하는데 필요한 최소 파일은 다음 3개이다.
bootcode.bin
start.elf
kernel.img
이 중 start.elf는 두 가지 변형이 있는데,
start_cd.elf는 기존 start.elf의 Cut-Down 버전이고,
start_x.elf는 start.elf의 테스트 버전이다.
더 자세한 내용은 다음 링크 참조(영문)
http://thekandyancode.wordpress.com/2013/09/21/how-the-raspberry-pi-boots-up/
관련 소스
https://github.com/raspberrypi/noobs
https://github.com/raspberrypi/firmware