星期四, 11月 17, 2005

LinuxBIOS

看一下FAQ的筆記..

LinuxBIOS用來替代現有PC, Alpha system的BIOS,LinuxBIOS基於原始的Linux code,
加上約10 行的patch。再加上約500 行的assembly code,5000行的C Code作startup。
執行16個instruction後就進入32-bit mode。作hardware initialize,讓linux執行。

LinuxBIOS v2並不含Linux Kernel,他只是BIOS的一種,並且是最簡單BIOS。利用Linux Kernel將所有的工作內建,不依賴BIOScall的特點。LinuxBIOS 不提供任何的BIOS呼叫,他只是將需要的(並非所有的)周邊initialize好。然後就交給 payload

這個計劃原來的目的是在大型的Cluster系統上。

目前的Cluster Node還是使用原有的BIOS,這些古老的BIOS還是採用以往的方式:依賴floppy開機,動作緩慢,需要標準的keyboard/Monitor作開機介面。

LinuxBIOS是一個gzipe過的image,放在NVRAM(Flash?),起動後他會解壓縮在RAM中執行,完全不需要依賴其他的 device。BIOS只做必要的hardware init,其他都讓真正boot後的linux系統去作。

LinuxBIOS可以用來bootLinux,Plan9,Windows2000/XP(藉由ADLO)。
FreeBSD因為使用到BIOS call,但是LinuxBIOS只支援開機,並不提供BIOS呼叫服務,所以不能用來boot FreeBSD,但是或許可以用ADLO來boot FreeBSD。

ADLO是bochs的一個子計畫,提供16 bit mode的bios。

需要的工具

  • Motherboard
  • Linux Developement platform (因為LinuxBIOS SDK只能在Linux下執行)
  • Flash的燒錄器
  • Bios Savior - 類似Gigabyte的Dual BIOS技術,可以讓你決定active那一顆BIOS chip.
  • POST Card
  • CF - IDE adaptor
  • ...以下的有點過頭,所以略(其實就是去買一套LinuxBIOS SDK就都會有了)


所以使用LinuxBIOS的重點就是要找到有支援Chipset,否則要自己port(could this be possible ?)

Broadbandbox的chipset是intel82845G.
intel datasheet,82845G 屬於845G晶片組。

沒有留言:

網誌存檔