Я хочу дізнатися про BIOS на материнській платі Raspberry Pi. Як називається BIOS? Він має конкретне ім’я або його просто називають BIOS на Raspberry Pi?
Я хочу дізнатися про BIOS на материнській платі Raspberry Pi. Як називається BIOS? Він має конкретне ім’я або його просто називають BIOS на Raspberry Pi?
Відповіді:
Прошивка - це власний код із закритим кодом, запрограмований на процесор SoC (Система на чіпі), який неможливо змінити. Після включення програмного забезпечення буде запущено завантажувач на SD-карту. Я не вірю, що будь-які інші послуги надаються через прошивку SoC, тому це насправді не є "BIOS" (базовою системою вводу / виводу). Після цього все інше виходить із SD-карти.
Відповідно до програмного розділу вікі , порядок завантаження такий:
bootcode.bin
з SD-карти. З цієї причини неможливо завантажувати RaspberryPi з іншого, ніж SD-карти.
@TevoD майже правий у тому, що написав у своїй відповіді - RaspberryPi використовує бінарний прошивку із закритим кодом як завантажувач. Поточну версію можна знайти тут . Два файли, що створюють прошивку, це bootcode.bin
(завантажувач 2-го ступеня) та start.elf
("прошивка" GPU). Що цікаво і досить унікально для RaspberryPi, це те, що він починається з GPU
(графічний чіп), і саме тут завантажувач фактично працює. GPU
потім запускає ARM CPU
та запускає ядро Linux.
Після запуску Linux, код увімкнено GPU
не завантажується. Замість цього він працює, це власна проста ОС, що називається VCOS
( Video Core Operating System
). Ядро Linux спілкується зі своїми службами, використовуючи спеціальні mailbox protocol
та використовуючи переривання (GPU може виробляти переривання ARM). Ви можете прочитати деякі відомості про протокол поштової скриньки , використовуваного для framebuffer
тут . Графічний процесор відповідає не тільки за графічні речі - він також контролює годинники і, наприклад, видає аудіо. У зв'язку з цим прошивку GPU можна вважати чимось схожим на BIOS
звичайні комп'ютери ПК. Ви можете знайти більше інформації про це читання драйверів ядра RaspberryPi Linux.
Ви також можете знайти більше інформації в цій відповіді.