||
Raspberry Pi的BCM2835 SoC内建CPU,GPU和内存。Pi上电Boot是从GPU开始,这个时候CPU是没有启动的。 整个Boot分为个各阶段: 1. SoC上的bootloader加载SD卡上的boot分区(FAT32格式)。这段bootloader是不可被改写的,出厂时已经被写在板上。GPU上一个专用RISC核来实现这个功能。 2.加载完boot分区。bootcode.bin被载入GPU执行 3. GPU执行start.elf去启动CPU。fixup.dat(用来定义GPU和CPU的RAM大小)被载入执行。这时候CPU从GPU接管控制权。 4. 加载Linux内核(kernel.img),配置文件(config.txt)和其他用户文件。 第一段的bootloader不可被改写,所以pi之能通过SD卡启动。 所有这些启动文件都可以在/boot下找到。最新的版本是10月26号。这个没有办法通过apt-get或yum升级。可以到pi官方的Github上找到。地址是https://github.com/raspberrypi/firmware |