Saya ingin belajar tentang BIOS pada motherboard Raspberry Pi. Apa nama BIOS itu? Apakah itu memiliki nama tertentu atau hanya disebut BIOS pada Raspberry Pi?
Saya ingin belajar tentang BIOS pada motherboard Raspberry Pi. Apa nama BIOS itu? Apakah itu memiliki nama tertentu atau hanya disebut BIOS pada Raspberry Pi?
Jawaban:
Firmware adalah kode berpemilik sumber tertutup yang diprogram ke dalam prosesor SoC (System on a Chip), yang tidak dapat dimodifikasi. Saat dinyalakan, firmware akan memulai bootloader pada kartu SD. Saya tidak percaya bahwa layanan lain disediakan melalui firmware SoC, jadi itu bukan "BIOS" (Basic Input / Output System) per se. Setelah titik ini segala sesuatu yang lain berasal dari kartu SD.
Menurut software bagian dari wiki , urutan boot adalah sebagai berikut:
bootcode.bin
dari kartu SD. Ini adalah alasan mengapa tidak mungkin untuk mem-boot RaspberryPi dari media selain kartu SD.
@TevoD hampir benar dalam apa yang ia tulis dalam jawabannya - RaspberryPi menggunakan binary firmware sumber tertutup sebagai bootloader. Versi saat ini dapat ditemukan di sini . Dua file yang membuat firmware adalah bootcode.bin
(bootloader tahap 2) dan start.elf
("firmware" GPU). Yang menarik dan cukup unik untuk RaspberryPi adalah mulai dari GPU
(chip grafis) dan ini adalah tempat bootloader berjalan. GPU
kemudian mulai ARM CPU
dan jalankan kernel Linux.
Namun, setelah Linux dimulai, kode aktif GPU
tidak diturunkan. Sebaliknya itu menjalankan OS sederhana itu sendiri, yang disebut VCOS
( Video Core Operating System
). Kernel Linux berkomunikasi dengan layanannya mailbox protocol
menggunakan interupsi khusus dan menggunakan (GPU dapat menghasilkan interupsi ARM). Anda dapat membaca beberapa informasi tentang protokol kotak surat yang digunakan di framebuffer
sini . GPU bertanggung jawab tidak hanya untuk hal-hal grafis - GPU juga mengontrol jam dan menghasilkan audio, misalnya. Dalam hal ini, firmware GPU dapat dianggap sesuatu yang mirip dengan BIOS
dari komputer PC normal. Anda dapat menemukan informasi lebih lanjut tentang ini membaca driver kernel RaspberryPi Linux.
Anda juga dapat menemukan lebih banyak informasi dalam jawaban ini .