2000-07-05· ·福建 曹曦··cpcw
b> 壹、BIOS基本概念
BIOS(Basic Input / Output System)——基本輸入輸出系統,通常是固化在只讀存儲器(ROM)中,所以又稱為ROM-BIOS。它直接對計算機系統中的輸入輸出設備進行設備級、硬件級的控制,是連接軟件程序和硬件設備之間的樞紐。ROM-BIOS是計算機系統中用來提供最低級、最直接的硬件控制的程序。計算機技術發展到今天,出現了各種各樣新技術,許多技術的軟件部分是借助於BIOS來管理實現的。如PnP技術(Plug and Play—即插即用技術),就是在BIOS中加上PnP模塊實現的。又如熱插拔技術,也是由系統BIOS將熱插拔信息傳送給BIOS中的配置管理程序,並由該程序進行重新配置(如:中斷、DMA通道等分配)。事實上熱插拔技術也屬於PnP技術。
二、BIOS的工作原理
講到BIOS的工作原理,我們先來介紹壹下BIOS系統的兩類載體:EPROM和EEPROM的相關知識。EPROM——可擦除可編程只讀存儲器,從外觀上可以看見,在芯片的中央有壹個透明的小窗口,紫外線光即是通過這個小窗口將芯片上保存的信息擦除掉的,因為在日光和熒光中都含有紫外線,因此,我們通常用壹塊不透明的標簽將已保存了信息的EPROM芯片的紫外線窗口封住。當然,寫入EPROM芯片時,我們首先必須先用紫外線擦除器將EPROM中的信息清除掉,使它變為空的芯片後才能進行寫操作,應該說明的是這裏“空芯片”的“空”並非我們通常意義上的“空白”,而是此時芯片內部變為全“1”信息,因此,芯片的寫入原理實際上是將指定位置上的“1”改為“0”。到這裏,有的朋友壹定想問:既然日光和熒光均含有紫外線,為什麽我們不讓EPROM芯片在這些光線下暴露壹段時間來擦除呢?要知道,完全擦除壹塊EPROM中的內容,在日光下至少要壹周,在室內熒光下至少要三年了!而且隨著芯片容量的增大,時間也得相應拉長。EEPROM是電可擦除可編程只讀存儲器。在平常情況下,EEPROM與EPROM壹樣是只讀的,需要寫入時,在指定的引腳加上壹個高電壓即可寫入或擦除,而且其擦除的速度極快!通常EEPROM芯片又分為串行EEPROM和並行EEPROM兩種,串行EEPROM在讀寫時數據的輸入/輸出是通過2線、3線、4線或SPI總線等接口方式進行的,而並行EEPROM的數據輸入/輸出則是通過並行總線進行的。另外還有壹種EEPROM即是我們現在主板上常見到的FLASH ROM——閃速存儲器,其讀寫速度更快,更可靠,而且可以用單電壓進行讀寫和編程,為便攜式設備的在線操作提供了極大的便利,也因此廣泛應用 撲慊?靼逕稀?br> 通常,486以及486檔次以下電腦的BIOS芯片基本上均是EPROM芯片,而586以及PⅡ、PⅢ檔次的BIOS芯片基本上均是EEPROM。另外我們也可以從BIOS芯片上的型號來識別:像27C010、27C512等以“27”打頭的芯片均是EPROM,而28C010、29C010、29C020、29C040等,均為EEPROM,其中28C010是128K×8,即1M比特並行EEPROM,29C010是128K×8(1M比特)、29C020是256K×8(2M比特)、29C040是512K×8(4M比特)的FLASH ROM。串行EEPROM在計算機主板上較少見,而提供這些芯片的廠家多為MX、WINBOND、ATMEL等廠家。應註意的是:不同廠家生產的芯片命名方式不同。以上介紹的芯片是以ATMEL公司的產品為例。
下面我們以當前最常見的AT29C020為例,介紹壹下BIOS的工作原理和程序的燒錄過程。
AT29C020是ATMEL公司生產的256K×8的FLASH ROM芯片,采用單5V供電,由於AT29C020的容量為256K×8,所以需要18根地址線來尋址,也即圖中A0~A17,而其輸出是8位並行輸出,需要8位雙向數據線,即圖中D0~D7,另外圖中還有幾個用於控制芯片工作狀態的引腳。“”引腳是控制芯片寫入的使能端,“”引腳是控制芯片輸出數據的使能端,這兩個引腳控制芯片在選中後的工作狀態,“”引腳為芯片的片選端。當處理器需要對該芯片進行讀寫操作時,首先必須選中該芯片,即在“”端送出低電平,然後,再根據是讀指令還是寫指令,而將相應的“”引腳或”引腳拉至低電平,同時處理器要通過A0~A17地址線送出待讀取或寫入芯片指定的存儲單元的地址,AT29C020芯片就將該存儲單元中的數據讀出到數據線D0~D7上或者將數據線D0~D7上的數據寫入到指定的存儲單元中,從而就完成了壹次讀或寫操作。
當上電後,計算機即從BIOS芯片中讀取出指令代碼進行系統硬件的自檢(含BIOS程序完整性檢驗、RAM可讀寫性檢驗、進行CPU、DMA控制器等部件測試)。對PnP設備進行檢測和確認,然後依次從各個PnP部件上讀出相應部件正常工作所需的系統資源數據等配置信息。BIOS中的PnP模塊試圖建立不沖突的資源分配表,使得所有的部件都能正常地工作。配置完成之後,系統要將所有的配置數據即ESCD——Extended System Config Data寫入BIOS中,這就是為什麽我們在開機時看到主機啟動進入Windows前出現壹系列檢測:配置內存、硬盤、光驅、聲卡等,而後出現的“UPDATE ESCD..SUCCESSED”等提示信息。所有這些檢測完成後,BIOS將系統控制權移交給系統的引導模塊,由它完成操作系統的裝入。
三、計算機主板中的BIOS技術
第壹代BIOS技術通常見於586以及現在的大部分440LX、440BX、i810等芯片組的主板上,這些主板通常只有壹塊BIOS芯片,而且基本上均采用EEPROM芯片,因此在給予電腦愛好者提供便利的BIOS升級、提升主板性能、充分發揮主板潛力的大好機遇的同時,也給CIH之類的病毒造成了可乘之機。病毒通過程序指令給BIOS芯片加上編程電壓,然後向BIOS芯片寫入壹大堆亂碼,從而達到破壞主機引導、癱瘓系統之目的。1999年的4月26日,想必許多人至今還刻骨銘心。於是廠家集思廣益迅速推出了第二代雙BIOS技術,以技嘉科技推出的DUALBIOS技術最早也最為出名,其原理是在計算機主板上安排了兩個BIOS芯片,壹塊為Master BIOS,另壹塊為Slave BIOS。兩塊BIOS中的內容完全壹樣,Slave BIOS只是提供簡單的備份功能,每次系統啟動,Slave BIOS就會主動檢查Master BIOS的完整性,若發現主BIOS內容有損壞,立即用備份BIOS重寫主BIOS,壹旦重寫失敗,則直接從備份BIOS啟動。微星公司的SAFEBIOS技術原理也壹樣,但其配備了壹片容量為普通BIOS芯片容量兩倍的4MB Flash ROM作為BIOS芯片,平均劃分為兩個獨立的區域,並且這兩個區域的BIOS均可啟動系統。近來壹些廠家又提出了更為先進實用的雙BIOS技術,像承啟科技提出TWIN BIOS技術,其與DUAL BIOS技術所不同的是,TWIN BIOS技術中兩塊BIOS可以按完全不同配置進行配置,兩塊BIOS芯片地位完全對等,無主從之分,可以在開機時通過鍵盤按鍵選擇從哪壹塊BIOS芯片上啟動,這樣大大地提高了另壹片BIOS芯片的利用率,又能在壹臺電腦上實現按不同系統環境進行不同系統配置的要求。如可實現中文Windows與英文/日文Windows***存等,而不需用System Conmand等軟件來實現復雜的多重啟動來引導,從而使雙BIOS技術從單壹的系統安全保護作用躍升為兼備獨立配置系統硬件設備的強大功能。隨著科技的發展,可以預見不久的將來BIOS芯片的容量將會越來越大,提供給我們設置和監視系統的功能也將越來越大,當然也會越來越方便。