Raspberry PiマザーボードのBIOSについて学びたいです。BIOSとは何ですか?それは特定の名前を持っていますか、それともRaspberry PiのBIOSと呼ばれていますか?
Raspberry PiマザーボードのBIOSについて学びたいです。BIOSとは何ですか?それは特定の名前を持っていますか、それともRaspberry PiのBIOSと呼ばれていますか?
回答:
ファームウェアは、SoC(System on a Chip)プロセッサーにプログラムされたクローズドソースの専用コードであり、変更できません。電源投入時に、ファームウェアはSDカードでブートローダーを開始します。他のサービスがSoCファームウェアを介して提供されるとは思わないため、それ自体は「BIOS」(基本入出力システム)ではありません。この後、他のすべてはSDカードから取得されます。
wikiのソフトウェアセクションによると、起動順序は次のとおりです。
bootcode.binSDカードからの読み込みのみが責任です。これが、SDカード以外のメディアからRaspberryPiを起動できない理由です。
@TevoDは、彼の答えで彼が書いたものにほとんど正しいです-RaspberryPiは、クローズドソースファームウェアバイナリをブートローダーとして使用しています。現在のバージョンはここにあります。ファームウェアを作成する2つのファイルはbootcode.bin(2ndステージブートローダー)とstart.elf(GPU "ファームウェア")です。RaspberryPiに固有で非常にユニークなのは、GPU(グラフィックチップ)から始まることであり、これが実際にブートローダーが実行される場所です。GPUその後ARM CPU、Linuxカーネルを起動して実行します。
GPUただし、Linuxの起動後、コードオンはアンロードされません。代わりに、VCOS(Video Core Operating System)と呼ばれる独自のシンプルなOSを実行します。Linuxカーネルは、特別なmailbox protocol割り込みを使用してサービスと通信します(GPUはARM割り込みを生成できます)。framebuffer ここで使用されるメールボックスプロトコルに関する情報を読むことができます。GPUはグラフィックのことだけでなく、クロックの制御やオーディオの生成なども行います。この点で、GPUファームウェアはBIOS、通常のPCコンピューターと同様のものと見なすことができます。このリーディングRaspberryPi Linuxカーネルドライバーに関する詳細情報を見つけることができます。
また、この回答でさらに情報を見つけることができます。