BIOSとかしこく付き合う方法

第1回

岩村 益典

 

 最近のコンピュータの発達はめまぐるしく,CPUの性能・処理速度も上がり,また,チップセットも多くの機能を取り入れるようになってきました.最近の傾向としては,従来サウスブリッジが担当していたI/O系の内容がノースブリッジに加わるようになってきたり,また,AGPグラフィックスの機能がノースブリッジのチップに含まれるようになってきたという状況の変化が起こっています.

 出荷されている例としては,SiSのチップセット530があります.SiS530は,AGPグラフィックスをノースブリッジ内に含んでいますし,ATA 66も使うことができるようになっています. これらの傾向は,他社のチップセットでも同様のようで,最終的にはチップの統合化が進み,ますますプリント基板(PCB)上の部品点数は減っていくものと思われます.そのことで,ますます重要になってくるのが,PCの機能を制御するために必要となるBIOSなのです.

 今回から,このBIOSについて,いろいろと考えていきたいと思います.第1回ですから,BIOSの重要性についてお話しましょう.

BIOSの設定とはなにか 

 BIOSというのは,皆さんご承知のように基本入出力プログラムの頭文字をとった略語で,ユーザーから見れば本来はフロッピディスクやキーボード,ディスプレイなどの種類をシステムに覚え込ませておくために必要となるものです.すべての機器の仕様が統一され,すべての周辺機器が自動設定されるような状況になれば,最終的にBIOSの設定という作業は存在してはいても,私たちユーザーが触れる必要はなくなっていくものと思われます.
 しかし,取り付けられる周辺機器がどのようなものであるかどうかわからない,というのが現状です.また,マニアの中には,何とかしてシステムをぎりぎりまで自分の好みに合わせてチューンナップしたい,という要望があります.こういうとき,BIOSをユーザーが設定できるという仕様は,極めて便利なものです.
 元来,BIOSが存在するのは,IBMのPC/ATにBIOSがあったから今でもそれを引き継いでいる,というのが基本的な事実です.要するに互換性の維持ということで,メーカーとしては,今から10年前に作られたISAバス拡張カードも使えるようになっていなければならないからです.互換性を維持するために古いカードを使えるようにするには,ある程度手動で設定できるという方法を用意しておかなければなりません.もちろん,最新のメインボードに,プラグ&プレイに対応した最新の周辺機器を取り付けるという場合には,おそらくBIOSの設定は不要で,すべて自動認識(Auto)ですむということになるでしょう.
 ちなみに,数年前からハードディスクに関してはオートディテクションが一般的になっており,IDEおよびE-IDEハードディスクについては,自動的にそのパラメータが入力されるようになってきました.しかも,最近のOSにはBIOSを経由せずに周辺機器と通信するような仕様になってきます.要するにBIOSの設定自体は次第に必要なくなってきているともいえます.

● BIOSは不要なのか

 結論として,マニアの要望やさまざまな周辺機器への対応,そして,最後には古い機器との互換性との理由から,BIOSというものと私たちは切っても切り離せない関係にあるといえるのです.
 ただし,WindowsなどのOSのために,BIOSの設定項目の中にプラグ&プレイOSかどうかを設定する箇所があることからもわかるように,次第にBIOSの機能を使わなくなってきました.
 たとえば,3モードのフロッピディスク・ドライブを使用したいと考えた場合に,BIOSの設定だけでは不完全で,Windows上であるならばWindows用のドライバが必要です.言い方を換えると,メインボードのBIOS自体が3モードに対応していない,すなわち1.25Mバイトの2HDディスクの読み書きができないかたちになっていても,Windows上のドライバがその1.25Mバイトの2HDに対応しているものであるならば,そのモードを使用することができるのです.
 これはどういうことかというと,WindowsというマルチタスクOSそのものがBIOSを経由せずに直接システムを制御している部分があるという一つの実例です.その最大の理由は,BIOSがシングルタスクOSの時代のプログラムであって,マルチタスクに対応していないからです.

● 役割は減っているが必要だ

 したがって,今後OSが発達してくればBIOSの役割はどんどん減ってくるかもしれません.また,古いタイプのマシンや古い周辺機器を使うというのでなければ,BIOSも別に変更する必要もないのです.しかし,古い周辺機器を使いたいというニーズはまだ多くありますし,また,マシンをチューンナップしたいというニーズからしても,BIOSの重要性というものがPC/ATからなくなる日はこないのではないか,というのが筆者の見解です.
 なお,最近ではこのBIOS設定を少しでも簡単にするために,たとえばSOYO社はSOYOコンボセットアップというメインボードの設定に重要となる設定項目を一つにまとめた新メニューを作ったりするなど,各社ユーザーが少しでもわかりやすく処理できるようなBIOSの設定に勤めているという傾向が挙げられます.

BIOSのその他の機能

 さて,話は少し変わりますが,近く紹介する筆者の単行本で,メインボードの製造過程について紹介するために取材・執筆をしています.その取材を元に少し,メインボードの設計関係に触れたいと思います.
 ご存じのようにメインボードはPCBと呼ばれるプリント基板の上に部品を配置して作られています.プリント基板上に配線がプリントされているという形です.このPCBは,1枚だけを作るとすると非常に高いコストがかかります.当然,メーカーとしては,このPCBの設計1回について少なくとも3,000枚単位で発注しなければならないわけです.
 ここで,一番最初に説明したチップセットの高機能化ということに再度触れなければなりません.チップセットが高機能化されているということは,それだけバグの危険性が高まってくるのです.チップセット内のバグを修正することは,もはやチップセットメーカーにしかできません.そのメーカーのチップセットが世の中に広まる前に,他社のチップセットが広まってしまうというジレンマがありますから,どのメーカーもタイムリーに製品を出すということに躍起になっています.したがって,多少のバグがあってもチップセットをリリースせざるを得ません.
 この点については,そのほかのメインボードや一般の製品についても同じです.チップセットができ,CPUが発表されると,ほぼそれと同時にそのメインボードが世間に出回ります.ということは,チップセットやCPUに多少のバグがあるプロトタイプ(エンジニアリングサンプル)であっても,それを元に開発を始めていかなければ,今日の競争を勝ち抜いていけないという事実があるわけです.

● PCBにはバグはつきもの

 ところが,そのようにして作られたPCBにバグがないといったい誰にいえるでしょうか.そうです,PCBにバグがあると考えたほうがよいのです.つまり,初期ロットのメインボードには常にバグがあると考えてもよいでしょう. しかし,メーカーはバグが残っていることがわかっても,その製品を市場に出してこようとします.
 どういうことかというと,たとえば,細かな温度管理をBIOSで設定することができます.これは,オーバークロック動作をする場合には非常に重要なことですが,このような設定について,たとえば実際には摂氏78度なのに79度と表示されてしまう,というバグがあったとしましょう.おそらく,その1度の差は製品としては問題であり,バグであるとしかいいようがありませんが,そのことにより致命的な問題をユーザーに与えるかというと,その可能性はきわめて低いものになります.
 また,何%の利用者の方がBIOSの機能を100%隅から隅まで使っているでしょうか.Autoで設定できている限り,そのままにしていないでしょうか.とくに,メモリのタイミングなどは一歩間違えるとマシン自体が動作しなくなります.これも,バグといえばバグなのでしょうが,世の中にはさまざまな種類のメモリがあり,すべてのメモリで動作するかどうかをメーカー側がチェックする時間的余裕もないため,ある程度のバグフィックスの段階で出荷してしまいます.

● PCBを簡単に作り直せない

 もし,バグが見つかり修正するもっとも良い方法は,回路設計を変更し,作り直すことですが,それをするためにはPCB自体を作り直さなければなりません.すでに1,000枚単位で作ったPCBが倉庫に山のように積み上げられている中で,新しいPCBを作るということはコストの増加,ひいてはエンドユーザー価格の高騰へとつながります.
 このような現象を避けるためにどのようなことを行うのか,それが,BIOSの役割なのです.

● BIOSでバグ取りをする

 以上のことから,BIOSはハードウェアのバグを取るという役割さえ果たしている,ということがいえます.最近は,このBIOS側のバグ取り機能ということが非常に重要になっています.BIOSが周辺機器やメインボード上のパーツについてのさまざまな情報を設定しますから,たとえば,新しいCPUがリリースされても,BIOSをアップデートするだけでハードウェア的に電圧やクロックなどを供給できる限り,使用することができるということになります.
 すなわち,BIOSのアップデートを頻繁に行う理由は,機能を追加したりする以外に,バグを取っているというように考えたほうがいいでしょう. このとき,取るべきバグはBIOSプログラムそのものにあるバグ,という考え方もできますし,むしろハードウェアのバグを取っている,という考え方もできます.

 ここで,メインボードメーカーの立場になって考えてみましょう. 各メーカーは,たとえばAWARD BIOSをAWARD社からライセンスを取得して載せています.しかし,大手メーカーはそのソースコードを改変するライセンスも購入し,同時にソースコードに手を入れます.すなわち,自分たちのメインボードがもっとも最適・確実に動作するようにBIOSを調整しているのです. 同じAWARD BIOSといっても,ASUSTeK系とGigabyte系とはそのメニューの構成から若干の違いが見られるのは,このようにAWARDがカスタマイズしているというわけではなくて,各メーカーがバグフィックスを行おうとしているということの現れであるわけです.
 BIOSのアップデートが重要な役割を果たすというのはこのような場面ということになります.

BIOSの本質

 BIOSがメインボード上の部品や接続されている部品を支配するという点からわかるように,CPUが実行する命令はBIOSに依存します.同じCPUを搭載していても,同じプログラムが動作しないというのが,たとえば,旧タイプのNEC-9800シリーズとPC/ATとの間に見られましたが,これはBIOSが異なるため同じプログラムが動作しないということになるわけです.
 当然,ハードウェア的に旧PC-9800シリーズのフロッピディスク管理方法と,PC/ATのそれとは異なります(同じコントローラを使っていたが).当然,それを吸収しているのはBIOSで,BIOSがそのようなアクセス方法を処理しているということになるわけです.

 以上のように,この連載ではBIOSというものの重要性とその働きについて理解していただき,そして,各BIOS設定画面について設定をするといったい何が起きるのか,どのような設定が便利なのか,そして,どのようにすればもっとも有効なPC活用につながるのかということを含めて説明したいと思っています.

● BIOSの著作権

 すなわち同じプログラムが使用できるということを維持するためには,PC/ATのそもそものIBMのBIOSを解析しなければなりません.基本的な仕様であるIBM PCが世界中に広まった最大の理由は,IBM社が最初にその仕様を公開したということに始まります.そして,各メーカーは互換機を作ることができるようになったわけです.
 しかし,最終的に製品がどんどん発達してくると,IBMも次第に閉鎖的な態度をとるようになっていきます.このような中で,各メーカーはIBMの動作するプログラムが自社のマシンでも動作するという条件を満たすため,IBMのBIOSに似せる必要が出てくるのです.しかし,IBMがBIOSのソースコードを教えてくれない限り,他社はIBM BIOSを逆アセンブルして解析するか,何らかの別の方法をとらなければなりません.
 しかし,プログラムが著作権であったり特許法で守られていたり,何らかの意味で知的財産であるということは事実なので,それは侵害にあたります.COMPAQなどの大手メーカーは,自社でBIOSを開発することができます.これは,可能です.しかし,小さなメインボードメーカーがBIOSを作るというのは非常に大変です.

 つまり,どういうことかというと,著作権などを侵害しないためにIBMのBIOSを外部仕様から解析するチームと,実際のBIOSプログラムを書くチームをまったく別の部屋(地理的にも離れた場所)において(これをクリーンルーム方式といいます)BIOSを作っていかなければなりません.膨大な時間とコストのかかる作業です.
 これを避けるためにどうするかというと,各メインボードメーカーはBIOSメーカーから著作権上安全なBIOSのライセンスを購入するわけです.

 BIOSメーカーとして有名なのは,AMI,AWARD,Phoenixなどがあります.PhoenixとAWARDは合併しましたから,最終的にはAWARD・PhoenixというかたちでBIOSはリリースされてくると思いますが現在のところもっとも柔軟性が高いというのが理由だと思われますが,採用されているのはAWARD BIOSです.各社メーカーはAWARD BIOSのライセンスを購入し,メインボードを販売しているわけです.
 たとえば,AWARD BIOSならメインボードに「AWARD」とプリントされた銀色や金色のシールが貼られていますが,そのシール1枚1枚がライセンスの証明なのです.以前筆者は,メインボードメーカーの工場で「そのシールを1枚ください」と頼みましたが,絶対に分けてくれませんでした.すなわち,シールの数だけBIOSの利用権がある,というかたちになっているのでしょう.このようなことがまず,基本的にいえるわけです.

BIOS設定の方法

 Windows98で最新の周辺機器を使うということを問題にするのであれば,ほとんどプラグ&プレイ機能で自動設定される場合もありますし,BIOSの自動設定機能も利用できます.したがって,最新の機器を使う限り設定はきわめて簡単です.
 まず,BIOS設定画面でLOAD SETUP DEFAULTSを選択し,初期値を読み込みます.つぎにSTANDARD CMOS SETUPを選択し,HARD DISKSのTYPEとMODEをすべてAutoに設定します.そして,つぎにEscキーでメインメニューに戻り,SAVE & EXIT SETUPで変更を保存して終了します.この状態で,マシンは絶対に動作します.新しいものであれば,動作は確実です.

 あえて言えば,注意が必要なのは,OSをインストールしようとするときです.デフォルトの状態では,BIOS ROM内のウィルスチェックプログラムをEnable (有効)にしていたり,またシステムの起動順序がC,Aとなっているような場合には,OSのセットアップに失敗する場合があります.
 なぜなら,もしウィルスチェックが有効になっていると,OSのセットアッププログラム自身をウィルスと勘違いしてBIOSはシステムの変更を止めてしまうからです.

 そして,もう一つの理由は,ブートするドライブの順序がC,Aとなっていると,FDISKをかけた状態のCドライブに先にアクセスしようとしてフォーマットプログラムが入っているAドライブの起動ディスクから起動しなくなるからです(図1).

 ですから,最低限のチェックとして,このBIOS設定画面でシステムの起動順序がA,Cとなるようにすること,そして,ウィルスチェックをとりあえずDisabledにすることなどに気をつけておいてください.あとは,Boot Up Floppy SeekがDisabledになっていると,起動時にフロッピディスクを読まなくなってしまいます.この場合も,OSの起動のときに問題が生じますから,気をつけておいて欲しいところです.

BIOSをマニュアル設定しなくてはならない場合

 先に説明した方法で,ほとんどすべてのPC/AT互換機は動作することができます.周辺機器でもっとも設定の難しかったのは,ネットワークカードです.なぜなら,低価格ネットワークカードはNE2000と呼ばれるネットワークカードのコンパチブルカードが多いのですが,オリジナルのNE2000自体はジャンパピンでIRQなどの設定を行いましたが,そのほかのコンパチブルカードの中には,ユーティリティプログラムを使って設定するものが多くありました.

 すなわち,カードのほうでIRQ(割り込み)の設定をしてしまうのです.BIOSで設定をするのではありません.したがって,BIOSとOS,そしてカード自体の設定にずれが生じる場合には,OSはそのカードを認識することができず,ネットワークを利用することができないという問題が発生したわけです.
 しかし,ネットワークカードも最近はPCIが多くなってきました.PCIカードの場合には,BIOSが起動時に自動的にIRQの割り込みなどを割り当てるので,そのような問題はありません.

● IRQの設定時に必要になってくる

 しかし,逆にIRQの何番を使いたいというような指定をユーザーがしたい場合には,BIOSの設定が必要になってくるのです(図2).これは,PC/ATのある意味でのまずい点,割り込みの数に制限があるために,BIOSの設定を変更して,IRQを合わせるということ以外にIRQを空けるという作業を行う場合です.
 
 たとえば,PC/ATでは同時にCOM1からCOM4の内の二つのシリアルポートを利用することができますが,現在の環境でシリアルポートを二つ共利用していないとするのであれば,COM2をDisabled(無効)にするこによって,IRQを一つ空けることができます.その空いたIRQをPCカードが使うという方法になるのです.
 言い方を換えると,BIOS問題について悩みたくないならば,1台のマシンに多くの機能を求めようとしないということです.つまり,このことによってIRQに十分余裕を持たせることが必要なのです.さらに,できる限り最新のプラグ&プレイ対応の機器を使うということです.そして,ドライブ類に関しては,SCSIを使うということ.割高になりますが,SCSIカード1枚のIRQでたくさんの周辺機器が動作することができます.

BIOSのアップデートについて

 つぎに,BIOSのアップデートについて簡単に触れておきましょう.BIOSのアップデートは,先ほどもいったように最新の周辺機器やCPUに対応するため,そして,ハードウェア上のバグを取るため,そしてもう一つは,BIOSそのもののバグを取るために行うべきものです.

 注意しておきたいことは,必要もないのにBIOSのアップデートをしてはいけないということです.
 ROMライタという機械を持っていれば,直接ROMにBIOSプログラムを書き込むことができます.しかし,もしあなたが1枚のメインボードしか持っていなくて,BIOSのアップデートに失敗した場合には,二度とそのマシンを生き返らせることはできません.そのためには,メーカーに送り返してBIOS ROMの交換,BIOSプログラムの再書き込みをする必要があります.BIOSが正常に機能しないと,フロッピディスクからシステムをブートすることもできず,ブートすることができないということは,当然BIOSのプログラムも書き込むことができないということです.

 もちろん,世の中には裏技というのがあって,たとえば正しく動作するメインボードが1枚あれば,フロッピディスクからDOSを起動した後,取り付けられているROMを取り外し,BIOSの書き込みに失敗したROMに交換することによってそのROM内にBIOSプログラムを書き込むという方法があります.多くのショップや一部のメインボードメーカーの日本支社はそのような方法でBIOSの書き込みを行っています.
 この方法はメインボードが同じ種類であれば成功しますが,どんな場合でも成功するというものではありません.本当に書き換えたいならば,ROMライタという装置が必要です.

 はっきりいって,コンピュータは道具であり動けばいいのですから,自分の目的に応じて動作している限り不必要にBIOSのアップデートをするのは危険である,ということに気をつけておきたいものです.

今後の展開

 次回からは,まず標準的と思われるASUSTeK社などののメインボードの例をあげ,BIOSについての各項目の説明およびアップデート方法などについて触れていきたいと思います.
 また,新しい情報として,サードパーティ製のBIOSメーカーであるMR BIOSについても触れておきたいと思います.このBIOSはwww.mrbios.comからダウンロードできるシェアウェアのBIOSです.基本的に,AWARD社もこのBIOSの使用を認めていて,すべてのIntelチップセットメインボードでMR BIOSが使えるということになっています.
 MR BIOS自体の特徴は,IDEでRAID0が実現する,つまり,2台のハードディスクをあたかも1台のハードディスクであるかのように扱って,データーを半分ずつに分けて格納するということが実現するところにあります(高速化の手法).しかし,それ以外にも,たとえばメーカー製のマシンなどでマシンメーカーがBIOSをアップデートしてくれない時に,何らかのマシン自体のアップグレードを図るためにMR BIOSというのは便利なものではないか,ということがいえるわけです.

 今後は,BIOSのチューニングのみならず,アップデートの方法についても深く触れていきたいと思います.

戻る


Copyright 1999 岩村 益典