JPH0754462B2 - デイスケツトからbiosをロードするパーソナルコンピユータシステム - Google Patents

デイスケツトからbiosをロードするパーソナルコンピユータシステム

Info

Publication number
JPH0754462B2
JPH0754462B2 JP2220130A JP22013090A JPH0754462B2 JP H0754462 B2 JPH0754462 B2 JP H0754462B2 JP 2220130 A JP2220130 A JP 2220130A JP 22013090 A JP22013090 A JP 22013090A JP H0754462 B2 JPH0754462 B2 JP H0754462B2
Authority
JP
Japan
Prior art keywords
bios
boot record
master boot
diskette
planar
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2220130A
Other languages
English (en)
Other versions
JPH0391034A (ja
Inventor
リチヤード・ビイールコフスキイ
ジヨン・ウイレイ・ブラツクレツジ、ジユニア
ドイル・スタンフイール・クロンク
リチヤード・アレン・ダイアン
スコツト・ジエラルド・キニアー
ジヨージ・デイー・コバツク
マシユー・ステイブン・ポルカ、ジユニア
ロバート・ザツクセンマイアー
ケビン・マーシヤル・ジイボロスキイ
Original Assignee
インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン filed Critical インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
Publication of JPH0391034A publication Critical patent/JPH0391034A/ja
Publication of JPH0754462B2 publication Critical patent/JPH0754462B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Charge And Discharge Circuits For Batteries Or The Like (AREA)
  • Secondary Cells (AREA)
  • Information Transfer Between Computers (AREA)

Description

【発明の詳細な説明】 A.産業上の利用分野 本発明はパーソナルコンピユータシステム(以下、PCS
という)に関し、特にBIOSをデイスケツトからPCSにロ
ードするための方法および装置に関する。
B.従来の技術 PCSは現代社会の様々な分野で広く使用されるようにな
つてきた。PCSは一般にデエスクトツプ型、フロアスタ
ンド型、ポータブル型等に分けられるが、いずれもシス
テムプロセツサ、デイスプレイモニタ、キーボード、1
以上のデイスケツトドライブ、固定デイスク記憶装置、
(オプシヨンの)プリンタ等を備えている。このような
システムの1つの特徴は、マザーボードあるいはシステ
ムプレーナを用いてそれらの構成要素を電気的に接続し
ていることである。PCSは主としてシングルユーザー向
けに設定されており、個人あるいは中小企業のユーザー
が手軽に買えるように、その価格も低く設定されてい
る。
PCSはバスアーキテクチヤによつて2つのフアミリにわ
けることができる。第1のフアミリはフアミリ1モデル
と呼ばれ、IBM PCATに代表されるようなPCSを含む。第
2のフアミリ、すなわちフアミリ2モデルは、IBM PS/2
モデル50ないし80のように、マイクロチヤネルバスアー
キテクチヤを使用する。
フアミリ1モデルの初期のPCSでは、ソフトウエアの互
換性が最も重要であると考えられていた。そのため、シ
ステム常駐コード(マイクロコード)という分離手段が
ハードウエアとソフトウエアの間に設定された。このコ
ードは、ユーザーのアプリケーションプログラム/オペ
レーテイングシステムと装置(デバイス)の間の動作イ
ンタフエースを与え、ハードウエアデバイスの特性につ
いてユーザーが注意を払わなくてもよいようにしてい
た。最終的には、アプリケーシヨンプログラムをハード
ウエアの特性から独立させつつ、新しいデバイスをシス
テムに付加できるようにするため、コードはBIOSへと発
展していつた。BIOSは、特定のデバイスハードウエア特
性に対するデバイスドライバの依存性をなくすと共に、
デバイスへの中間インタフェースとしての働きをデバイ
スドライバに持たせたため、その重要性が直ちに認めら
れた。BIOSはシステムと一体化されていて、システムプ
ロセツサに対するデータの入出力を制御するものである
から、読取専用メモリ(ROM)の形でシステムプレーナ
に組み込まれていた。例えば、初期のIBMパーソナルコ
ンピユータのBIOSは、プレーナボード上のROMの8Kの領
域を占めていた。
C.発明が解決しようとする課題 PCSの新しいモデルが開発される時は、新しいハードウ
エア及びI/O装置を導入するためにBIOSを拡張しなけれ
ばならなかった。当然のように、BIOSを記憶するための
メモリ容量は大きくなつていつた。例えば、IBMパーソ
ナルコンピユータATの場合、BIOSは32KバイトのROM容量
を必要とした。
最近は新しい技術の発達により、フアミリー2モデルの
PCSは益々精巧になり、一般の消費者も使い始めてい
る。技術の進歩は急速であり、新しいI/O装置がPCSに使
用されだしたので、PCSの開発サイクルでBIOSの変更が
問題になつてきた。
例えば、マイクロチヤネルアーキテクチヤを採用したIB
Mパーソナルシステム/2の場合、新しい拡張BIOS(ABIO
S)が開発された。しかしソフトウエアの互換性を維持
するため、フアミリー1モデルからのBIOSをフアミリー
2モデルに含ませておく必要があった。フアミリー1の
BIOSは、互換BIOS(CBIOS)と呼ばれるようになつた。
しかしIBMパーソナルコンピユータATに関連して説明し
たように、プレーナボード上には32KバイトのROMしかな
かつた。システムは96KバイトのROMまで拡張できたが、
システムの制約上、これがBIOSに対して使用できる最大
の容量であつた。幸いなことに、ABIOSを追加しても、A
BIOS及びCBIOSの両方を96KのROMに詰め込むことができ
たが、残りの容量はごく僅かであつた。従つて、将来新
しいI/O装置が付加されるときは、CBIOS及びABIOSはROM
スペースを超過してしまい、新しいI/O技術を容易にはC
BIOS及びABIOSに組み込めなくなる。
上述のような問題に加えて、フアミリー2BIOSの変更を
開発サイクルの出来るだけ遅い段階で行いたいという要
求があつたため、BIOSの一部をROMから外すことが必要
になつた。そのため、外された部分は固定デイスクに記
憶され、そこからロードされた。しかし、固定デイスク
だけからのローデイングでは問題があることが判明し
た。まず第1に、固定デイスクがダウンすると、システ
ムが使用不能になる。また、システムを変えると、BIOS
と新しいシステムの間の適合性が問題になる。従つて、
固定デイスク以外の直接アクセス記憶装置からBIOSをロ
ードすることが要求される。また、デイスケツトからロ
ードされるBIOSについて優先モードおよび回復モードを
使用することが望まれる。優先モードにおいては、BIOS
は直ちにデイスケツトからロードされる。回復モードに
おいては、BIOSは固定デイスクからのローデイングに失
敗した後でのみデイスケツトからロードされる。
従つて本発明の目的は、BIOSの一部をデイスケツトから
ロードするための装置および方法を提供することにあ
る。
D.課題を解決するための手段 本発明に従うPCSは、システムプロセツサ、ランダムア
クセスメモリ、読取専用メモリ、デイスケツト駆動機構
および切替手段を含む。この他に固定デイスクを含める
こともできる。読取専用メモリは、システムを初期設定
して、システムプロセツサへ電気的に接続された切替手
段の状態を検出するBIOSの第1部分を含む。もし切替手
段が優先位置にあれば、固定デイスクを検査することな
くマスタブートレコードを直ちにデイスケツト駆動機構
からロードされる(優先モード)。切替手段が回復位置
にあれば、BIOSの第1部分はマスタブートレコードを固
定デイスクからロードしようと試みる。固定デイスクが
使用可能あるいは作動可能でないか、またはデイスク上
のマスタブートレコードが無効であれば、BIOSの第1部
分はデイスケツト駆動機構からマスタブートレコードを
読み込む(回復モード)。
固定デイスクまたはデイスケツトのいずれからロードさ
れるにしても、マスタブートレコードはデータセグメン
トおよび実行可能コードセグメントを含む。データセグ
メントは、当該マスタブートレコードに適合するシステ
ムハードウエアを表わすデータを含む。実行可能コード
セグメントは、第1BIOS部分から制御を移されると、マ
スタブートレコードのデータセグメントからのデータ
と、読取専用メモリに記憶されている、システムプロセ
ツサ、システムプレーナおよびプレーナI/O構成を表わ
すデータを比較することにより、マスタブートレコード
がシステムハードウエアに適合しているかどうかを確か
める。
もしマスタブートレコードがシステムハードウエアに適
合していると、実行可能コードセグメントはシステム構
成が変わつていないことを確認し、BIOSの第2部分、す
なわち残りの部分を固定デイスクまたはデイスケツトか
らランダムアクセスメモリにロードする。次に実行可能
コードセグメントは、この第2BIOS部分が真正であるこ
とを確かめ、ランダムアクセスメモリにある第2BIOS部
分の実行開始をシステムプロセツサに命じる。この第2B
IOS部分の実行によりオペレーテイングシステムがブー
トアツプされ、PCSのオペレーシヨンが始まる。以後は
第2BIOS部分だけが使用され、第1BIOS部分は使用されな
い。
要約していうと、BIOSをデイスケツトからロードするた
めの装置および方法は、信号生成手段、第1BIOS部分、
マスタブートレコード、信号応答手段、および第2BIOS
部分を含む。切替手段のような信号生成手段は、デイス
ケツトローデイングのモードを表わす信号を生成する。
第1BIOS部分に含まれる信号応答手段は、この信号に応
答して、BIOSがデイスケツトからロードされるのかどう
かを決定する。第1BIOS部分はシステムを初期設定し、
そしてもし必要であれば、ランダムアクセスメモリへの
マスタブートレコードのローデイングを行うためにデイ
スケツトを初期設定する。マスタブートレコードは実行
可能コードを含む。これは、第1BIOS部分により活動化
されると、ランダムアクセスメモリへの第2BIOS部分の
ローデイングを行う。
E.実施例 図面、特に第2図において、複数のI/Oスロツト18を介
してシステムボードないしプレーナボード24に接続した
複数のDASD(直接アクセス記憶装置)12〜16を有するPC
S(パーソナルコンピュータシステム)10の一部を切除
したものが示されている。電源22は周知のようにシステ
ム10に電力を供給する。プレーナボード24は、入力、プ
ロセスおよび出力情報に対し計算機命令による制御のも
とで動作するシステムプロセツサを含んでいる。
使用に当り、PCS10は主として少数のユーザーのグルー
プまたはシングルユーザーに個々に計算パワーを与える
ように設計されそして個人または小企業用に安価なもの
とされている。動作を述べると、このシステムプロセツ
サはIBMのOS/2またはPC-DOSのようなオペレーテイング
システムのもとで動作する。この形式のオペレーテイン
グシステムはDASD12〜16とオペレーテイングシステムの
間にBIOSインターフエースを含む。機能により複数のモ
ジユールに分割されたBIOSの一部はプレーナ24上のROM
に記憶され、そして以降ではROM-BIOSと呼ぶ。BIOSはハ
ードウエアとオペレーテイングシステムのソフトウエア
の間にインターフエースを与え、プログラマまたはユー
ザが特定の装置について深いオペレーテイング上の知識
を必要とせずにそのマシンをプログラムしうるようにす
る。例えば、BIOSデイスケツトモジユールはプログラマ
がデイスケツト駆動ハードウエアの深い知識がなくとも
デイスケツト駆動機構をプログラムしうるようにする。
このように異る製造業者により設計され製造された多数
のデイスケツト駆動機構がこのシステムで使用出来る。
これはシステム10のコストを低減するばかりでなくユー
ザが多数のデイスケツト駆動機構からそれを選ぶことが
出来るようにする。
上記の構造を本発明に関連づける前に、PCS10の一般的
な動作を要約する。第1図は、このPCS10のブロツク図
である。第1図はプレーナ24の構成要素と、I/Oスロツ
ト18およびこのシステムの他のハードウエアへのプレー
ナ24の接続を示している。プレーナ24の上にはシステム
プロセツサ26が配置され、このプロセツサは局所母線28
により、メモリコントローラ30に接続するマイクロプロ
セツサからなり、コントローラ30はランダムアクセスメ
モリ(RAM)32に接続する。このマイクロプロセツサは
適当なものでよいが、インテル社の80386がその一例で
ある。
本発明は以降において第1図について説明するが、本発
明の装置および方法は他のプレーナボードハードウエア
構成にも使用されるものである。例えば、システムプロ
セツサはインテル80286または80486でもよい。
このプロセツサによりプレーナ識別番号(プレーナID)
がアクセス可能である。プレーナIDはそのプレーナに固
有のものであり使用されているプレーナの型式を識別す
る。例えば、プレーナIDはシステムプロセツサ26のI/O
ポートを介して、またはスイツチを用いて読取るべくハ
ードワイヤドしうる。また、デイスクコントローラへの
プレーナ論理回路を用いて、システムプロセツサ26の別
のI/Oポートによりリセツト信号を発生させることがで
きる。例えば、リセツト信号発生のためにそのI/Oポー
トをアドレスしてプレーナ論理を活動化するソフトウエ
アにより、リセツト信号の発生を開始することができ
る。
局所母線28は更に母線コントローラ34を通じてプレーナ
24上の読取専用メモリ(ROM)36に接続する。
付加的な不揮発性メモリ(NVRAM)58が直列/並列ポー
トインターフエース40および母線コントローラ34を介し
てマイクロプロセツサ26に接続する。この不揮発性メモ
リ58はシステムの電源が切れたときにも情報を維持する
ために電池でバツクアツプされたCMOSでよい。ROMは通
常プレーナ上にあるから、ROMに記憶されたモデル値お
よびサブモデル値はシステムプロセツサおよびシステム
プレーナI/O構成を夫々識別するために用いられる。こ
のようにこれらの値はプロセツサとプレーナI/O構成を
物理的に識別する。NVRAM58はシステム構成データを記
憶するために用いられる。すなわち、このNVRAMはシス
テムの現在の構成を記述する値を含む。例えばNVRAMは
固定デイスクまたはデイスケツトの容量、デイスプレイ
の型式、メモリ容量、時刻、日付等を記述する情報を含
む。更に、ROMに記憶されたモデル値およびサブモデル
値は構成設定のような特殊な構成プログラムが実行され
るときにNVRAMにコピーされる。構成設定プログラムの
目的はシステムの構成を特徴づける値をNVRAMに記憶さ
せることである。このように適正に構成されたシステム
についてのNVRAM内のモデル値およびサブモデル値はROM
に記憶されたモデル値およびサブモデル値に夫々等し
い。これらの値が等しくない場合には、それはそのシス
テムの構成が変更されていることを示す。第6D図によ
り、BIOSのローデイングとの組合せにおいてこの特徴を
詳述する 第1図の説明を続けると、母線コントローラ34はI/Oプ
レーナ母線43によりI/Oスロツト18、スイツチ29のよう
な信号生成手段、直列/並列インターフエース40および
周辺装置コントローラ42に接続する。周辺装置コントロ
ーラ42は更にキーボード44、マウス46、診断パネル47、
およびデイスケツトコントローラ64に接続する。NVRAM5
8の他に、直列/並列インターフエース40はプリンタ、
ハードコピー装置等に情報を入/出力するための直列ポ
ート48と並列ポート50に接続する。周知のように局所母
線28はキヤツシユコントローラ52、キヤツシユメモリ6
8、コプロセツサ54およびDMAコントローラ56にも接続し
うる。
信号生成手段は、スイツチ29の位置に応じてプロセツサ
26に信号を供給する。例えば、スイツチ29は、システム
をデイスケツト回復モードにする場合は、線33に信号を
発生するように位置決めされる。同様に、デイスケツト
優先モードの場合は、線35に信号を発生するように位置
決めされる。同様な働きは、スイツチ29の代りにハード
ウエアジヤンパを用いても達成できる。また後で述べる
ように、線33および35を1本の線にまとめて、優先モー
ドおよび回復モードの特別の機能を実現させることもで
きる。スイツチ29は、いずれの線33および35にも信号を
発生しないような位置決めも可能である。
システムプロセツサ26はその内部動作並びにPCS10の他
のエレメントとのインターフエースを制御する。例えば
図示のシステムプロセツサ26は、固定デイスク駆動機構
62のようなDASDに接続した小型コンピユータシステムイ
ンターフエース(SCSI)I/Oカード60に接続する。SCSI
デイスク駆動機構以外のものを本発明により固定デイス
クとして使用出来る。固定デイスク62に加えて、システ
ムプロセツサ26はデイスケツト駆動機構66を制御するデ
イスケツトコントローラ64にもインターフエースしう
る。ここで「ハードフアイル」は固定デイスク駆動機構
62であり、「フロツピー」はデイスケツト駆動機構66を
意味するものである。
本発明の以前にはROM36はハードウエア周辺装置に対し
オペレーテイングシステムをインターフエースするBIOS
コードのすべてを含むことが出来た。本発明によればRO
M36はBIOSの一部のみを記憶するようにされる。この部
分はシステムプロセツサ26により実行されるとき、固定
デイスク62またはデイスケツト66からBIOSの第2のすな
わち残りの部分、以下BIOSイメージと呼ぶ部分を入力す
る。このBIOSイメージは第1BIOS部分にとつて代わり、
そしてこのシステムの一体化部分としてRAM32のような
主メモリ内に常駐する。ROM36に記憶されたBIOSの第1
部分(ROM-BIOS)は第3〜4図で一般的に、そして第6A
〜6D図で詳細に説明する。BIOSの第2部分(BIOSイメー
ジ)は第5図で説明し、BIOSイメージのローデイングは
第7図で説明する。DASDからのBIOSイメージのローデイ
ングによる他の利点はシステムプロセツサのRAM32にBIO
Sを直接にロード出来るということである。RAMのアクセ
スはROMのそれより著しく高速であるから、コンピュー
タシステムの処理速度に大きな改善が得られる。
ROM36内のBIOSのオペレーシヨンそして固定デイスクま
たはデイスケツトからのBIOSイメージのローデイングオ
ペレーシヨンを次に述べる。一般に、ROM-BIOSのような
第1プログラムがシステムのプリチエツクを行い、そし
てRAMにBIOSマスタブートレコードをロードする。マス
タブートレコードは検証情報を有するデータセグメント
と実行可能なコードを有しローデイング手段として働く
コードセグメントを含む。この実行可能なコードはハー
ドウエアの適合性とシステム構成の妥当性を判断するた
めにデータ情報を使用する。ハードウエアの適合性と適
正なシステム構成についてのテスト後に、この実行可能
なコードがRAMにBIOSイメージをロードし、主メモリ常
駐プログラムを生成する。BIOSイメージはROM-BIOSに続
き、そしてマシンのオペレーシヨンを開始するためには
オペレーテイングシステムをロードする。説明の便宜
上、マスタブートレコードの実行可能コードセグメント
をMBRコード、データセグメントをMBRデータと呼ぶ。
第3図はROM-BIOSを構成している異つたコードモジユー
ルを示すメモリマツプを示す。ROM-BIOSは電源投入自己
検査(POST)ステージIモジユール70、初期BIOSロード
(IBL)ルーチンモジユール72、デイスケツトモジユー
ル74、ハードフアイルモジユール76、ビデオモジユール
78、診断パネルモジユール80およびハードウエア適合性
データ82を含む。要するに、POSTステージI70はシステ
ムの事前初期設定とテストを行う。IBLルーチン72はBIO
Sイメージがデイスクまたはデイスケツトからロードさ
れるべきかを決定し、適合性をチエツクし、そしてマス
タブートレコードをロードする。デイスケツトモジユー
ル74はデイスケツト駆動機構についての入出力機能を与
える。ハードフアイルモジユール76は固定デイスク等へ
のI/Oを制御する。ビデオモジユール78はビデオデイス
プレイに接続するビデオI/Oコントローラへの出力機能
を制御する。診断パネルモジユール80はシステム用の診
断デイスプレイ装置に対する制御を与える。ハードウエ
ア適合性データ82は第5図で述べるシステムモデル値お
よびサブモデル値のような値を含む。
第4図は固定デイスクまたはデイスケツトからシステム
にBIOSイメージをロードするためのプロセス全体を示
す。システムに電源が投入されかまたはリセツトされる
と、システムプロセツサがステツプ100においてPOSTス
テージIの入口点へと導かれる。POSTステージIはシス
テムを初期設定し、選択されたDASDからのBIOSイメージ
のロードに必要なシステム機能のみをステツプ102でテ
ストする。特にPOSTステージIは、必要であればプロセ
ツサ/プレーナ機能、診断パネル、メモリサブシステ
ム、割込みコントローラ、タイマー、DMAサブシステ
ム、固定デイスクBIOSルーチン(ハードフアイルモジユ
ール76)およびデイスケツトBIOSルーチン(デイスケツ
トモジユール74)を初期設定する。
POSTステージIがシステムを事前初期設定した後に、PO
STステージIは初期BIOSロードモジユール72に含まれる
初期BIOSロード(IBL)ルーチンにシステムプロセツサ
を導く。このIBLルーチンはまずBIOSイメージをロード
するための媒体(デイスクまたはデイスケツト)を選択
し、次にステツプ104において選択された媒体(デイス
クかデイスケツトか)からRAMにマスタブートレコード
をロードする。マスタブートレコードはMBRデータとMBR
コードを含む。MBRデータは検査用であり、MBRコードは
BIOSイメージのロードのために実行される。IBLルーチ
ンの詳細は第6A〜6D図に示してある。
第4図において、IBLルーチンがマスタブートレコード
(MBR)をRAMにロードした後に、ステツプ106におい
て、システムプロセツサがMBRコードのスタートアドレ
スを用いて実行を開始する。MBRコードはBIOSイメージ
の確認とシステム構成の検査のための一連の妥当性テス
トを行う。このMBRコードの詳細は第7図に示してあ
る。
これら妥当性テストにもとづき、MBRコードはBIOSイメ
ージをRAMにロードし、そしてステツプ108において制御
を主メモリに新しくロードされたBIOSイメージへと移
す。特に、BIOSイメージは前にROM-BIOSが占めていたア
ドレススペースにロードされる。すなわちROM−BIOSがO
OOOHからFFFFFHまでの間でアドレスされるとすると、BI
OSイメージはこのRAMアドレススペースにロードされ、
かくしてROM-BIOSに代えられる。次に制御は新しくロー
ドされたBIOSイメージに含まれるPOSTステージIIに移さ
れ、かくしてROM-BIOSは放棄される。このとき、RAMに
あるPOSTステージIIはステツプ110においてオペレーテ
イングシステムブートをロードするために残りのシステ
ムを初期設定しテストする。システムが初期設定されテ
ストされた後に、ステージIIPOSTがステツプ112〜114に
おいてオペレーテイングシステムをロードするためにオ
ペレーテイングシステムブートに制御を移す。
ここでマスタブートレコードの形式について説明してお
く。第5図はマスタブートレコードの形式を示す。ブー
トレコードは実行可能コードセグメント120とデータセ
グメント122〜138を含む。MBRコード120はROM-BIOSの識
別検査、IBLブートレコードがシステムと両立しうるか
どうかのチェック、システム構成の検査および選ばれた
DASD(デイスクまたはデイスケツト)からのBIOSイメー
ジのロードを実行するためのDASDに依存するコードを含
む。データセグメント122〜138は媒体の定義、マスタブ
ートレコードの識別と検査、BIOSイメージの位置決めお
よびBIOSイメージのロードに用いられる情報を含む。
マスタブートレコードはブートレコード識別子122によ
り識別される。ブートレコード識別子122はレコードの
はじめの3バイト内の文字列「ABC」のような固有のビ
ツトパターンである。マスタブートレコードの完全性
は、ブートレコードがロードされるとき計算された検査
合計値と比較される検査合計値132によりテストされ
る。データセグメントは更に少くとも1個の適合プレー
ナID値134、適合モデル値およびサブモデル値136を含
む。マスタブートレコードのプレーナID値はマスタブー
トレコードが有効なプレーナを規定する。同様にマスタ
ブートレコードのモデル値およびサブモデル値はマスタ
ブートレコードが有効であるプロセツサとプレーナI/O
構成を夫々規定する。ブートレコード識別子と検査合計
は有効なマスタブートレコードを識別し、そしてブート
レコードのプレーナID、モデル値およびサブモデル値の
比較は、システムに適合するブートレコードの識別とシ
ステム構成の有効性の決定に用いられる。他の値である
ブートレコードパターン124はROM-BIOSの妥当性の決定
に用いられる。ブートレコードパターン124はROMに記憶
された対応するパターン値と比較される。それらが一致
することは、有効なROM-BIOSが選ばれた媒体からのBIOS
イメージのロードを開始したことを示す。
以下にマスタブートレコードの夫々の値とそれらの機能
を詳述する。
MBR識別子(122):IBLブートレコードのはじめの3バイ
トは「ABC」のような文字からなりうる。これはブート
レコードの識別に用いられる。
MBRコードセグメント(120):このコードは対応するプ
レーナIDとモデル/サブモデル値の比較により、プレー
ナおよびプロセツサに対するブートレコードの適合性を
検査する。これらの値の一致は選ばれた媒体からシステ
ムRAMへのBIOSイメージのロードを生じさせる。システ
ムイメージ(メモリにロードされたBIOSイメージ)検査
合計が有効であり媒体ロードエラーが生じないならば、
MBRコードは制御をシステムイメージのPOSTステージII
ルーチンに移す。
MBRパターン(124):IBLブートレコードデータセグメン
トのはじめのフイールドは文字列「ROM-BIOS 1989」の
ようなパターンを含む。この文字列は、ブートパターン
値とROM内に記憶された対応する値(ROM−パターン)を
比較することによりROM-BIOSの妥当性チエツクに用いら
れる。
MBR版デート(126):マスタブートレコードは更新のた
めの版データを含む。
システム区画ポインタ(128):データセグメントはス
テージIIPOSTで用いるための媒体システム区画領域の開
始点を示す媒体ポインタを含む。IBLデイスケツトでは
このポインタはトラツク−ヘツド−セクタ形式であり、
デイスクでは相対ブロツクアドレス(RBA)形式であ
る。
システム区画タイプ(130):システム区画タイプは媒
体システム区画の構造を示す。3つのシステム区画構造
のタイプ、すなわち、完全、最小および不在、がある。
完全システム区画はBIOSイメージおよびマスタブートレ
コードに加えてセツトアツプユーテイリテイおよび診断
を含む。最小システム区画はBIOSイメージとマスターブ
ートレコードのみを含む。システムがIBLイメージを有
するハードフアイルへのアクセスを有さないことがあ
り、この場合にはシステム区画タイプは不在となる。こ
の例ではIBLはデイスケツトから生じることになる。こ
れら三種のシステム区画タイプにより、媒体上でシステ
ム区画が占めるスペースを変えることができる。
検査合計値(132):データセグメントの検査合計値
は、MBRコードのレコード長値(1.5kバイト)について
の有効検査合計を発生するために初期設定される。
MBRプレーナID値(134):データセグメントは適合プレ
ーナIDを規定するワード列のような値を含む。各ワード
は16ビツトのプレーナIDからなり、この列はワード値0
で終る。システムのプレーナIDがマスタブートレコード
内のプレーナID値と一致すると、IBL媒体イメージはシ
ステムプレーナに適合しうる。システムのプレーナIDが
列内のいずれのワードとも一致しないならば、IBL媒体
イメージはシステムプレーナに適合しない。
MBRモデル値およびサブモデル値(136):このデータセ
グメントは適合プロセツサを規定するワード列のような
値を含む。各ワードはモデル値およびサブモデル値から
なり、このワード列はワード値0で終了する。システム
のモデル値およびサブモデル値(ROMに記憶されたも
の)がこのワード列内の1つのワードと一致するならば
IBL媒体イメージはそのシステムプロセツサに適合す
る。ROMモデル値とROMサブモデル値がこのワード列中の
いずれのワードとも一致しないならば、IBL媒体のイメ
ージはシステムプロセツサに適合しない。
MBRマツプ長(138):IBLマツプ長は媒体イメージブロツ
クの数に初期設定される。云い換えると、BIOSイメージ
が4個のプロツクに分割されるならばマツプ長は4とな
り、4個のブロツクポインタ/長さフイールドを示す。
媒体イメージは1個の連続した128kブロツクであるから
一般にこの長さは1にセツトされる。
MBR媒体セクタサイズ(138):このワード値は媒体セク
タサイズ(セクタのバイト数)に初期設定される。
媒体イメージブロツクポインタ(138):この媒体イメ
ージブロツクポインタは媒体上でシステムイメージブロ
ツクを見つけ出す。通常は、媒体イメージが1個の連続
したブロツクとして記憶されるため、1個のポインタし
か存在しない。IBLデイスケツトではポインタはトラツ
ク−ヘツド−セクタ形式となつており、デイスクでは相
対ブロツクアドレス形式となつている。
媒体イメージブロツク長(138):媒体イメージブロツ
ク長は対応するイメージブロツクポインタが示すブロツ
クのサイズ(セクタ数)を示す。BASIC用のスペースを
含む128kの連続する媒体イメージの場合には、このフイ
ールドは256にセツトされて、BIOSイメージブロツクが
媒体イメージブロツクポインタ位置からはじまり256個
のセクタ(512バイト/セクタ)からなることを示す。
第6A〜6D図はIBLルーチンの詳細なフローチヤートであ
る。通常状態ではIBLルーチンはシステムの固定デイス
クからRAMの特定のアドレスにマスタブートレコードを
ロードし、そしてシステムプロセツサをこのマスタブー
トレコードのコードセグメントの実行開始へと導く。ま
たIBLルーチンは、マスタブートレコードをデスケツト
からロードするデイスケツト優先モードおよびデイスケ
ツト回復モードに対する備えもある。優先モードにおい
ては、マスタブートレコードは固定デイスクからのロー
ドを試みる前にデイスケツトから直接ロードされる。優
先モードの目的はデイスクBIOSロードプロセスのエラー
検査手順をバイパスすることである。デイスケツトBIOS
ロードプロセスは、固定デイスクBIOSロードプロセスで
使用される妥当性検査を含まない。これはデイスケツト
からのシステム更新を可能にする。例えば、もし新しい
プロセツサがシステムに付加されると、新しいBIOSイメ
ージが必要になる。固定デイスクからのローデイングで
は、プロセツサが変わると妥当性エラーが生じるので、
IBLルーチンは、BIOSイメージをデイスケツトからロー
ドすることによつて、これらの検査をバイパスできるよ
うにする。このように、固定デイスク上のBIOSを更新す
るために、デイスケツトに記憶された新しいBIOSがユー
ザに提供される。
回復モードは、NVRAMに記憶されているパスワードの検
査をバイパスできるようにする。パスワードの目的はデ
イスケツトからの無許可のローデイングを防止すること
にあるが、回復モードを設けたのは、診断テストのため
に保守員等がデイスケツトからロードできるようにする
ためである。優先モードおよび回復モードを1つのスイ
ツチで活動化しても同じ結果が得られる。この構成にお
いては、優先モードでデイスケツト媒体が使用可能でな
ければ、ユーザは、デイスケツトを挿入してそこからBI
OSをロードするための(回復モード検査までの)余分の
時間が与えられる。これはユーザにとつては優先モード
でのロードのようにみえるが、実際は回復モードの動作
である。IBLルーチンが固定デイスクおよびデイスケツ
トのいずれからもマスタブートレコードをロードできな
ければ、エラーメツセージが発生されてシステムが停止
する。
第6A図において、優先モードの活動化を検出するため、
切替手段がステツプ151でテストされる。優先モードが
活動化されていると、デイスケツトサブシステムがステ
ツプ153で初期設定される。ここで、PCSのドライブCが
固定デイスクに割り当てられ、ドライブAがデイスケツ
ト駆動機構に割り当てられているものとする。IBLルー
チンはステツプ155でドライブAを検査し、それがIBL媒
体を含んでいるかどうかを調べる。このプロセスの詳細
は第6C図に示されている。ドライブAがIBL媒体を含ん
でいなければ、システムはステツプ150でIBL媒体を固定
デイスクからロードしようとする。ステツプ155に戻つ
て、ドライブAがIBL媒体を含んでいると、マスタブー
トレコードがステツプ160でRAMにロードされる。
ステツプ151に戻つて、もし優先モードが活動化されて
いなければ、ステツプ152に進んで固定デイスクサブシ
ステムが初期設定され、IBLルーチンはドライブCを検
査して、それがIBL媒体を含んでいるかどうかを調べ
る。このプロセスの詳細は第6B図に示されている。ドラ
イブCがIBL媒体を含んでいなければ、ステツプ154でエ
ラーが報告される。
ステツプ152に戻つて、ドライブCがIBL媒体を含んでい
れば、IBLルーチンは固定デイスクの最後の3セクタの
ところから読取を開始し、媒体ポインタを減分させなが
ら、99セクタの間又は有効マスタブートレコードが見つ
かるまで読取を続ける。マスタブートレコードが見つか
ると、ステツプ156でシステムプレーナおよびシステム
プロセツサとの適合性を検査される。固定デイスクの最
後の99セクタでマスタブートレコードが見つからない
か、またはマスタブートレコードがプレーナおよびプロ
セツサに適合していなければ、ステツプ158でエラーが
報告される。
ステツプ156でマスタブートレコードがあれば一連の有
効性チエツクが行われ、マスタブートレコードがコンピ
ユータシステムに適合しているかどうかを決定する。更
に、このシステムの構成がチエツクされる。このプロセ
スの詳細を第6D図に示す。ブートレコードがプレーナI
D、モデルおよびサブモデルに適合し、そして更にシス
テム構成が変更されていなければ、ステツプ160でマス
タブートレコードがロードされ、そしてそのコードセグ
メントが実行される。
ステツプ154および158に戻つて、固定デイスクからマス
タブートレコードをロードする際にエラーが生じている
か、または固定デイスクが使用可能でなければ、システ
ムはステツプ157で回復モードが活動化されているかど
うかを調べる。回復モードが活動化されていると、NVRA
Mの有効パスワードに対するテストはバイパスされ、ス
テツプ166でデイスケツトサブシステムが初期設定され
る。回復モードが活動化されていなければ、ステツプ16
2で有効パスワードがNVRAMに含まれているかどうかを調
べる。このパスワードは、許可されていないユーザがBI
OSイメージをデイスケツトからロードできるかどうかを
決定するものであるが、ユーザが意図的に設定した場合
にのみNVRAMに存在する。パスワードがNVRAMに導入され
ると、(保守員以外の)すべてのユーザはデイスケツト
からBIOSイメージをロードすることを阻止される。これ
により、システムのオペレーシヨンの保全性が確保され
る。パスワードが存在していると、デイスケツトサブシ
ステムをアクセスすることはできず、ステツプ172でシ
ステムは停止される。このパスワードは、例えばセツト
アツププログラムの実行によるシステム構成中にNVRAM
にロードすることができる。NVRAMに記憶されるパスワ
ードは文字列の形をとることが出来る。
ステツプ162において、NVRAM内に有効パスワードがな
く、BIOSイメージがデイスケツトからロードしうる場合
には、IBLルーチンがステツプ166においてデイスケツト
サブシステムを初期設定する。このIBLルーチンはステ
ツプ168においてドライブAがデイスケツト上にIBL媒体
を含むかどうかを決定するドライブAがIBL媒体を含ん
でいなければステツプ170において無効デイスケツトが
ドライブに挿入されていることをユーザに知らせるため
のエラーが発生する。ステツプ168の詳細を第6C図に示
す。
ステツプ168において、ドライブAがIBL媒体についてチ
エツクされた後に、ステツプ160でマスタブートレコー
ドがRAMにロードされ、そしてそのコードセグメントが
実行される。デイスケツトについては、IBLルーチンは
固定デイスクシステムに用いた妥当性チエツクを含まな
い。例えばシステムに新しいプロセツサが加えられる場
合には、新しいBIOSイメージがデイスケツトに含まれる
ことになる。新しいプロセツサは固定デイスクからのロ
ーデイングについて妥当性エラーを生じさせるから、IB
LルーチンはBIOSイメージをデイスケツトからロードす
ることによりこれらテストをバイパスする能力を与え
る。
要点を繰り返すと、まず優先モードがテストされる。優
先モードにおいては、デイスケツト駆動機構がIBL媒体
を含んでいなければ、システムは固定デイスクをテスト
する。固定デイスクがIBL媒体を含んでいると、マスタ
ブートレコードはブートレコード値に対するシステムプ
レーナIDとプロセツサモデル/サブモデル値の整合によ
り、システムとの適合性についてチエツクされる。デイ
スクについてはこのチエツクはまずIBLルーチン72で行
われ、次にIBLブートレコードにおいて再び行われる。
最初のチエツク(IBLルーチンにおける)はブートレコ
ードがシステムに適合することを確認するために行わ
れ、2番目のチエツク(ブートレコードにおける)は適
合ROMが制御をブートレコードに移したことを確認する
ために行われる。デイスケツトブートレコードで行われ
るチエツクは、IBLルーチンが適合性をすでにチエツク
しているから、適合ROMについては誤りはない。
これに対して、適合性検査はデイスケツトについては行
われない。プレーナ/プロセツサ適合性はデイスケツト
ブートレコード実行中にのみ検査される。この方法は、
将来新しいBIOSをデイスケツトからロードすることを可
能にする。デイスクがIBL媒体を含んでいなければ、回
復モード又はパスワードがテストされる。回復モードが
活動化されるかまたはパスワードがなければ、IBL媒体
がデイスケツトからロードされる。回復モードが活動化
されておらず、パスワードがあると、エラーが発生さ
れ、システムは停止する。
第6A図のIBLルーチンにおける妥当性テストを更に詳細
に説明する。第6B図は第6A図における有効マスタブート
レコードがドライブCにあるかどうかの決定のためのス
テツプ152の詳細なフローチヤートである。このプロセ
スはステツプ200でIBLルーチンがドライブCにアクセス
しうるようにするドライブパラメータを得ることにより
開始する。IBLロード位置がステツプ202においてデイス
クから最後の3セクタ(これらセクタは通常マスタブー
トレコードを含む)にセットされる。デイスクからマス
タブートレコードを読取る試行回数を示すロードカウン
トがステツプ204において1にセツトされる。IBLロード
位置の3個のセクタがステツプ206においてデイスクか
ら読取られる。ステツプ208〜210において、何らかのデ
イスクドライブエラーが検出され、デイスク読取エラー
が生じればそれが報告される。プロセスはエラー標識を
伴つてリターンすることになる(ステツプ212〜214)。
ステツプ208でドライブエラーが生じていなければ、そ
のデイスクレコードがステツプ216においてマスタブー
トレコード識別子について走査される。文字「ABC」の
ようなこのブートレコード識別子はデイスクレコードの
はじめの3バイトと比較される。デイスクレコードが有
効ブートレコード識別子(文字「ABC」)を有し、そし
てメモリにロードされたデイスクレコードから計算され
た検査合計がブートレコードの検査合計に等しければ、
このデイスクレコードはステツプ218においてエラーを
有さない有効ブートレコードとして示される。ステツプ
214においてこのプロセスは第6A図に戻る。
ステツプ216においてブートレコード識別子または検査
合計が無効であれば、ロードカウントがステツプ220に
おいて1だけ増加される。このロードカウントはステツ
プ222において99のような予定の定数と比較される。ブ
ートレコードの読取を99回試み、不成功である場合には
ステツプ224、212および214においてエラーが示されリ
ターンする。ブートレコードの読取りが99回より少いと
きはIBLロード位置がステツプ226で1だけ減分され、そ
して3個の新しいセクタがステツプ206で新しいロード
位置から読取られる。かくして最後の99個のセクタ(33
コピーに等価)から有効IBLブートレコードがロードさ
れえないときにはエラー条件がセツトされて、制御がIB
Lルーチンに戻される。
マスタブートレコードをドライブAのデイスケツトから
ロードすることについての詳細を示す第6C図において、
まずドライブAのアクセスのための、デイスケツトドラ
イブパラメーターがステツプ230でとり出される。IBLロ
ード位置がステツプ232においてデイスケツトの最後の
3個のセクタ(シリング、ヘッドおよびセクタ形式)セ
ツトされる。これら3個のセクタがステツプ234で読取
られる。ステツプ236〜238において、デイスケツトドラ
イブエラーが検出されるとエラーが示される。ステツプ
240〜242において、エラー条件がセツトされ、制御がIB
Lルーチンに戻される。
ステツプ236においてドライブエラーが検出されない
と、デイスケツトレコードはステツプ244においてブー
トレコード識別子をチエツクされ、そして検査合計が計
算される。ブートレコード識別子がなくあるいは検査合
計が無効であれば、エラーが示されて制御がIBLルーチ
ンにもどされる。有効ブートレコード識別子と有効検査
合計が検出されると標識がセツトされ(ステツプ24
8)、そして制御がIBLルーチンに戻される。デイスケツ
トロードの場合、IBLルーチンは固定デイスクロードに
おけるようなセクタの探索を行わない。それ故デイスケ
ツトロードでは、IBL媒体はデイスケツトの特定の位置
に記憶されねばならない。
最後に、第6D図はシステムプレーナとプロセツサの適合
性および適正なシステム構成についてのIBLルーチンに
おけるテスト方法を示す。ステツプ260においてマスタ
ブートレコードが、そのプレーナID値をシステムプロセ
ツサにより読取られたシステムプレーナIDと比較するこ
とにより、システムプレーナとの適合性をチエツクされ
る。システムプレーナIDがブートレコードプレーナID値
と一致しないときは、このマスタブートレコードがこの
プレーナに適合しないことを示す。ステツプ262、264、
266において、エラーが示され制御はIBLルーチンに戻
る。
マスタブートレコードがプレーナと適合するのであれ
ば、ステツプ268においてプロセツサとの適合性につい
てマスタブートレコードがチエツクされる。ブートレコ
ードのモデル値およびサブモデル値がROMに記憶された
モデル値およびサブモデル値と夫々比較される。一致し
ないときは、新しいプロセツサが多分導入されており、
このブートレコードがその新しいプロセツサに適合しな
いことを示す。ステツプ270、264、266において、エラ
ーが示されそして制御はIBLルーチンに戻る。マスタブ
ートレコードがプレーナおよびプロセツサに適合するの
であれば、ステツプ272でNVRAMが信頼出来る情報を含ん
でいるかどうかについてのチエツクを行う。NVRAMが信
頼出来なければ、ステツプ274、266において、エラーが
示されそして制御がIBLルーチンに戻る。NVRAMが信頼出
来れば、ステツプ276においてシステム構成がチエツク
される。NVRAMに記憶されたモデル値およびサブモデル
値がROMに記憶されたモデル値およびサブモデル値と一
致しない場合は、システム構成が変更したことを示す。
この最後の比較は構成エラーのみを示す。構成エラーが
生じると、ユーザに対しエラーが知らされる。このエラ
ーは、構成設定を最後にランさせた後にシステム構成が
変更されたことをユーザに示すものである。ステツプ27
8、264、266において、ユーザは変更された構成につい
ての情報を受け、そして制御がIBLルーチンに戻され
る。このエラーは致命的なものではなく、構成設定(構
成プログラム)を実行すべきことをユーザに知らせるも
のである。ステツプ276でシステムモデル/サブモデル
値が一致すると、ステツプ274で適合性標識がセツトさ
れ、IBLルーチンに戻る。このように、マスタブートレ
コードとシステムの適合性は、システム構成が変化した
かどうかの決定と並行してテストされる。
IBLルーチンがマスタブートレコードをRAMにロードした
後に、制御がMBRコード開始アドレスに移される。第7
図において、マスタブートレコードの実行可能コードセ
グメントがまずステツプ300においてROMおよびブートレ
コードのパターンを検査する。マスタブートレコード内
のパターンがROM内のパターンと一致しない場合にはス
テツプ302においてエラーが発生され、ステツプ305でシ
ステムは停止する。ROMとブートレコードのパターンの
一致についてのチエツクは、デイスクまたはデイスケツ
トからロードされたマスタブートレコードがプレーナボ
ード上のROMに適合しているかどうかを確認する。ステ
ツプ300でROMのパターンがブートレコードのそれと一致
すれば、MBRコードがステツプ304でシステムプレーナID
値、モデル値およびサブモデル値を対応するマスタブー
トレコード値と比較する。このプロセスは第6D図におい
て述べた。これら値が一致しない場合には、マスタブー
トレコードがシステムプレーナおよびプロセツサと適合
しないこと、あるいはシステム構成が変わっていること
を示し、ステツプ306でエラーが発生される。そのとき
ステツプ305でシステムは停止する。
ステツプ304においてシステムプレーナID値、モデル値
およびサブモデル値が対応するマスタブートレコード値
と一致すると、ステツプ308でMBRコードが選ばれた媒体
からシステムRAMにBIOSイメージをロードする。ステツ
プ310でデータ読取において媒体ロードエラーが生じる
と、ステツプ312においてエラーが発生されてシステム
が停止する。ステツプ310で媒体ロードエラーが発生し
ないと、ステツプ314で検査合計がメモリ内のBIOSイメ
ージについて計算される。この合計が無効であれば、ス
テツプ318でエラーが発生されてシステムが停止する。
ステツプ316での検査合計が有効であれば、ステツプ320
でシステム区画ポインタが記憶され、そしてステツプ32
2でシステムプロセツサがPOSTステージIIで移されてシ
ステムのローデイングを開始する。
以上、普通固定デイスク駆動機構を有しているパーソナ
ルコンピユータシステムにおいて、BIOSをデイスケツト
駆動機構からロードするための方法および装置について
説明した。BIOSはスイツチの位置に応じてロードされ
る。優先位置(モード)の場合、BIOSは、固定デイスク
駆動機構をテストする前にデイスケツトからロードされ
る。回復モードでは、BIOSは、固定デイスク駆動機構を
テストした後でデイスケツトからロードされる。デフオ
ルトモードでは、BIOSは、固定デイスク駆動機構をテス
トした後で、意図的に設定されたパスワードがなければ
ロードされる。F.発明の効果 本発明によれば、パーソナルコンピユータシステムの基
本プログラムであるBIOSを固定デイスクないしハードフ
アイルの代りにデイスケツトからロードすることができ
る。
【図面の簡単な説明】
第1図は、本発明に従うPCSの構成を示すブロツク図。 第2図は、PCS本体の破断斜視図。 第3図は、ROM-BIOSのメモリマツプを示す図。 第4図は、BIOSイメージをロードするための全体的なプ
ロセスを示すフローチヤート。 第5図は、マスタブートレコードの形式を示す図。 第6A図は、IBLルーチンのオペレーシヨンを示すフロー
チヤート。 第6B図は、BIOSイメージを固定デイスクからロードする
ためのステツプを示すフローチヤート。 第6C図は、BIOSイメージをデイスケツトからロードする
ためのステツプを示すフローチヤート。 第6D図は、マスタブートレコードとプレーナ/プロセツ
サの適合性をチエツクする詳細なステツプを示すフロー
チヤート。 第7図は、実行可能コードセグメントのオペレーシヨン
を示すフローチヤート。
フロントページの続き (72)発明者 ドイル・スタンフイール・クロンク アメリカ合衆国フロリダ州ボカ・ラトン、 タウン・ハーバー・ボールヴアード6830番 地 (72)発明者 リチヤード・アレン・ダイアン アメリカ合衆国フロリダ州ボカ・ラトン、 ノース・イースト・73ストリート830番地 (72)発明者 スコツト・ジエラルド・キニアー アメリカ合衆国フロリダ州ボカ・ラトン、 サドルクリーク・ドライブ9005番地 (72)発明者 ジヨージ・デイー・コバツク アメリカ合衆国フロリダ州ボカ・ラトン、 ウエストブロツク・ドライブ19090番地 (72)発明者 マシユー・ステイブン・ポルカ、ジユニア アメリカ合衆国ノース・カロライナ州ラレ イ、ブラス・ケトル・ロード10800番地 (72)発明者 ロバート・ザツクセンマイアー アメリカ合衆国フロリダ州ボカ・ラトン、 ノース・イースト8番コート7329番地 (72)発明者 ケビン・マーシヤル・ジイボロスキイ アメリカ合衆国ノース・カロライナ州ラレ イ、ウツドマナー・ドライブ1313番地 (56)参考文献 特開 平2−23427(JP,A)

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】システムプロセッサと、 ランダムアクセスメモリ(RAM)と、 ハードファイルと、 第1と第2の部分に分けられたBIOSの前記第1BIOS部分
    を記憶する読取専用メモリ(ROM)と、 実行可能コードセグメントを有するマスタブートレコー
    ド及び前記第2BIOS部分を記憶するディスケットを含む
    ディスケット駆動機構と、 前記ハードファイルへのアクセスを試みる前に、前記デ
    ィスケットから前記マスタブートレコード及び前記第2B
    IOS部分を前記RAMにロードされるモードを表す優先信号
    を生成する信号生成手段と、 前記優先信号に応答して前記第2BIOS部分を前記ディス
    ケットからロードするかどうかを決定し、前記ディスケ
    ットからロードする場合には、前記マスタブートレコー
    ドを前記RAMにロードするために前記第1BIOS部分に前記
    ディスケット駆動機構を初期設定させる手段とを備え、 前記第1BIOS部分が前記マスタブートレコードの前記実
    行可能コードセグメントに制御を移すと、該実行可能可
    能コードセグメントにより前記第2BIOS部分を前記RAMに
    ロードすることを特徴とするパーソナルコンピュータシ
    ステム。
  2. 【請求項2】前記信号生成手段は、前記ハードファイル
    からの前記第2BIOS部分のロードを試みた後で前記マス
    タブートレコード及び前記第2BIOS部分が前記RAMにロー
    ドされるモードを表す回復信号を生成する、請求項1に
    記載のシステム。
  3. 【請求項3】前記システムプロセッサは、不揮発性メモ
    リが接続されており、前記優先信号及び前記回復信号が
    ない場合には、前記ハードファイルからの第2BIOS部分
    のロードを試み、前記不揮発性メモリにパスワードが記
    憶されていないことを検出した後、前記マスタブートレ
    コード及び前記第2BIOS部分を前記RAMにロードする、請
    求項2に記載のシステム。
  4. 【請求項4】前記信号生成手段は、前記システムプロセ
    ッサと電気的に接続されたスイッチを含む、請求項1に
    記載のシステム。
  5. 【請求項5】前記スイッチは、前記システムプロセッサ
    と電気的に接続されたシステムプレーナ上の配線ジャン
    パである、請求項4に記載のシステム。
  6. 【請求項6】システムプロセッサと、 ランダムアクセスメモリ(RAM)と、 ハードファイルと、 第1と第2の部分に分けられたBIOSの前記第1BIOS部分
    を記憶する読取専用メモリ(ROM)と、 実行可能コードセグメントを有するマスタブートレコー
    ド及び前記第2BIOS部分を記憶するディスケットを含む
    ディスケット駆動機構と、 パスワードを記憶する不揮発性メモリとを備え、 前記第1BIOS部分は、前記ハードファイルが動作可能で
    なく、かつ、前記パスワードが検出されなければ、前記
    ディスケット駆動機構を初期設定して、前記ディスケッ
    トから前記マスタブートレコードを読み込ませた後に、
    制御を該マスタブートレコードの実行可能コードセグメ
    ントに移し、前記RAMへの前記第2BIOS部分のロードを行
    わせる、 ことを特徴とするパーソナルコンピュータシステム。
  7. 【請求項7】前記マスタブートレコードは、自身に適合
    するパーソナルコンピュータシステムのハードウェア構
    成を表すデータセグメントを含み、 前記ROMは、前記システムのハードウェア構成を表すデ
    ータを含み、 前記実行可能コードセグメントは、前記第2BIOS部分が
    前記RAMにロードされる前に、前記マスタブートレコー
    ド及び前記ROMのハードウェア構成データを比較し、前
    記マスタブートレコードが前記システムに適合している
    かどうかを確かめる、請求項1または6に記載のシステ
    ム。
  8. 【請求項8】前記データセグメントは、前記マスタブー
    トレコードに適合するシステムプレーナを表す値を含
    み、 該システムプレーナは、前記マスタブートレコードが該
    システムプレーナに適合するかどうかを確かめるために
    システムプレーナを一意的に識別するための手段を含
    む、請求項7に記載のシステム。
  9. 【請求項9】前記データセグメントは、該マスタブート
    レコードに適合するシステムプロセッサを識別するモデ
    ル値、及び該マスタブートレコードに適合するシステム
    プレーナのI/O構成を表すサブモデル値を含み、 前記ROMは、前記システムプロセッサを識別する対応す
    るモデル値及び前記システムプレーナのI/O構成を表す
    対応するサブモデル値を含み、 前記マスタブートレコードの前記モデル値及び前記サブ
    モデル値と前記ROMの対応する前記モデル値及び前記サ
    ブモデル値を比較することにより、前記マスタブートレ
    コードが前記システムプロセッサ及び前記システムプレ
    ーナのI/O構成に適合しているかどうかを確かめる、請
    求項7に記載のシステム。
  10. 【請求項10】前記マスタブートレコードは、前記ディ
    スケットに記憶されたいる他のレコードから自身を区別
    するための所定の文字コードを含む、請求項1又は6に
    記載のシステム。
  11. 【請求項11】前記不揮発性メモリは、前記ハードウェ
    ア構成を表すデータを含み、 該データは、前記システムの構成が変わると更新され、 前記実行可能コードセグメントは、該データを前記ROM
    の中の対応するデータを比較することにより、前記シス
    テムの構成が変わったかどうかを確かめる、請求項6に
    記載のシステム。
  12. 【請求項12】前記マスタブートレコードは、前記RAM
    にロードされるときに、自身の完全性を検査するための
    チェックサムを含み、請求項10に記載のシステム。
  13. 【請求項13】前記第2BIOS部分は、前記RAMにロードさ
    れるときに、自身の完全性を検査するためのチェックサ
    ムを含み、請求項6に記載のシステム。
  14. 【請求項14】前記第1BIOS部分が所定の前記ROMに記憶
    されているかどうかを確かめるため、前記マスタブート
    レコードに所定のパターンを含ませ、かつ、前記ROMに
    対応する所定のパターンを記憶しておく、請求項6に記
    載のシステム。
  15. 【請求項15】システムプロセッサ、ディスケット駆動
    機構、システムプレーナ、読取専用メモリ(ROM)、ラ
    ンダムアクセスメモリ(RAM)及び不揮発性メモリを備
    えたパーソナルコンピュータシステムにおいて、BIOSを
    ディスケットからロードするための方法であって、 前記BIOSを第1BIOS部分と第2BIOS部分の二つの部分に分
    け、前記第1BIOS部分は、前記ROMに記憶され、前記ディ
    スケット駆動機構は、マスタブートレコード及び第2BIO
    S部分を記憶しているディスケットを含み、前記マスタ
    ブートレコードは、データセグメント及び実行可能コー
    ドセグメントを含み、該データセグメントは、前記第2B
    IOS部分に適合するシステムのハードウェア構成を表す
    データを有し、 前記方法は、 (a)前記第1BIOS部分により前記システムを初期設定
    するステップと、 (b)ハードファイルがあるかどうかを調べ、ハードフ
    ァイルがなければ、前記不揮発性メモリ中のパスワード
    を探し、前記パスワードがなければ、前記ディスケット
    駆動機構を、前記第1BIOS部分により初期設定するステ
    ップと、 (c)前記第1BIOS部分により前記マスタブートレコー
    ドを前記RAMにロードするステップと、 (d)前記データを前記ROMに記憶されている対応する
    データを比較することにより、前記マスタブートレコー
    ドと前記システムハードウェアの適合性を検査するステ
    ップと、 (e)前記実行可能コードセグメントにより前記第2BIO
    S部分を前記RAMにロードするステップと、 (f)前記RAMにロードされた前記第2BIOS部分に制御を
    移すステップと、を有することを特徴とする方法。
  16. 【請求項16】前記適合性を検査するステップが、前記
    システムプロセッサがアクセスできるプレーナIDと、前
    記データセグメントに含まれる対応するプレーナIDを比
    較することにより、前記マスタブートレコードが該シス
    テムプレーナに適合しているかどうかを確かめる、請求
    項15に記載の方法。
  17. 【請求項17】前記不揮発性メモリは、システム構成を
    表すデータを含み、前記適合性を検査するステップが、
    該データを前記ROM中の対応するデータと比較すること
    により、システム構成が変わったかどうかを調べるステ
    ップを含む、請求項15に記載の方法。
JP2220130A 1989-08-25 1990-08-23 デイスケツトからbiosをロードするパーソナルコンピユータシステム Expired - Lifetime JPH0754462B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US39963189A 1989-08-25 1989-08-25
US399631 1989-08-25

Publications (2)

Publication Number Publication Date
JPH0391034A JPH0391034A (ja) 1991-04-16
JPH0754462B2 true JPH0754462B2 (ja) 1995-06-07

Family

ID=23580310

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2220130A Expired - Lifetime JPH0754462B2 (ja) 1989-08-25 1990-08-23 デイスケツトからbiosをロードするパーソナルコンピユータシステム

Country Status (10)

Country Link
US (1) US5410699A (ja)
EP (1) EP0419004B1 (ja)
JP (1) JPH0754462B2 (ja)
KR (1) KR930007680B1 (ja)
CN (1) CN1018392B (ja)
AT (1) ATE138749T1 (ja)
CA (1) CA2020522C (ja)
DE (1) DE69027167T2 (ja)
GB (1) GB9012949D0 (ja)
PT (1) PT95081A (ja)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5634079A (en) * 1992-05-15 1997-05-27 Zenith Data Systems Corporation System for providing for a parallel port with standard signals and a flash recovery mode with second predetermined signals redefining parallel port with alternate functions
EP0576126A3 (en) * 1992-06-22 1994-01-12 International Business Machines Corporation A method and apparatus for providing a modular ABIOS device support layer in a computer system
DE4229266A1 (de) * 1992-09-02 1994-03-03 Roland Man Druckmasch Rechner für den Leitstand einer Maschine, insbesondere einer Druckmaschine
US6357000B1 (en) 1993-01-29 2002-03-12 Microsoft Corporation Method and system for specified loading of an operating system
CA2126950A1 (en) * 1993-07-30 1995-01-31 Bryan M. Willman Booting a computer system using a last known good set of configuration data
US6453363B1 (en) 1993-10-21 2002-09-17 Microsoft Corporation Method and computer system for integrating a compression system with an operating system
US5754852A (en) * 1993-12-29 1998-05-19 International Business Machines Corporation Apparatus for combining cellular telephone ring signals and PSTN ring signals
GB2290890B (en) * 1994-06-29 1999-03-24 Mitsubishi Electric Corp Information processing system
US5864698A (en) * 1994-08-24 1999-01-26 Packard Bell Nec Disk based bios
US5564054A (en) * 1994-08-25 1996-10-08 International Business Machines Corporation Fail-safe computer boot apparatus and method
US5586327A (en) * 1994-09-27 1996-12-17 International Business Machines Corporation Extended initialization for personal data processing systems
US5701477A (en) * 1995-03-30 1997-12-23 Cirrus Logic, Inc. Method and apparatus for master boot record shadowing
US5734900A (en) * 1995-09-29 1998-03-31 International Business Machines Corporation Information handling system including efficient power on initialization
US5835760A (en) * 1995-10-13 1998-11-10 Texas Instruments Incorporated Method and arrangement for providing BIOS to a host computer
US5822614A (en) * 1996-05-31 1998-10-13 Unisys Corporation Self-identifying peripheral device
US5892906A (en) * 1996-07-19 1999-04-06 Chou; Wayne W. Apparatus and method for preventing theft of computer devices
US5938764A (en) * 1996-10-23 1999-08-17 Micron Electronics, Inc. Apparatus for improved storage of computer system configuration information
KR100242416B1 (ko) * 1996-12-30 2000-02-01 윤종용 교환시스템의 디스크 포맷 방법
US6009518A (en) * 1997-01-15 1999-12-28 Shiakallis; Peter Paul Computer system for providing improved security for stored information
US6073232A (en) * 1997-02-25 2000-06-06 International Business Machines Corporation Method for minimizing a computer's initial program load time after a system reset or a power-on using non-volatile storage
US5978912A (en) 1997-03-20 1999-11-02 Phoenix Technologies Limited Network enhanced BIOS enabling remote management of a computer without a functioning operating system
US6748524B1 (en) 1997-04-30 2004-06-08 Gateway, Inc. Display and recordation of non-volatile memory changes
JP3104646B2 (ja) * 1997-06-04 2000-10-30 ソニー株式会社 外部記憶装置
US5991841A (en) * 1997-09-24 1999-11-23 Intel Corporation Memory transactions on a low pin count bus
US6185678B1 (en) * 1997-10-02 2001-02-06 Trustees Of The University Of Pennsylvania Secure and reliable bootstrap architecture
US6438687B2 (en) 1997-10-30 2002-08-20 Micron Technology, Inc. Method and apparatus for improved storage of computer system configuration information
KR100248757B1 (ko) * 1997-12-20 2000-03-15 윤종용 손상된 롬 바이오스 복구 방법
US6549963B1 (en) * 1999-02-11 2003-04-15 Micron Technology, Inc. Method of configuring devices on a communications channel
US6507879B1 (en) 1999-02-11 2003-01-14 Micron Technology, Inc. Apparatus for configuration devices on a communications channel
US6880107B1 (en) * 1999-07-29 2005-04-12 International Business Machines Corporation Software configuration monitor
TW452733B (en) * 1999-11-26 2001-09-01 Inventec Corp Method for preventing BIOS from viruses infection
US6931522B1 (en) * 1999-11-30 2005-08-16 Microsoft Corporation Method for a computer using the system image on one of the partitions to boot itself to a known state in the event of a failure
US8612553B2 (en) * 2000-01-14 2013-12-17 Microsoft Corporation Method and system for dynamically purposing a computing device
US7668938B1 (en) 2000-01-14 2010-02-23 Microsoft Corporation Method and system for dynamically purposing a computing device
DE10113256A1 (de) * 2001-03-19 2002-10-02 Siemens Ag Verfahren und Vorrichtung zur Wiederherstellung von Daten in einem Datenverarbeitungssystem
US7103641B2 (en) * 2001-06-18 2006-09-05 Intel Corporation Method and apparatus for distributing computer platform firmware across a network
US7069431B2 (en) * 2001-07-31 2006-06-27 Lenovo ( Singapore) Pte Ltd. Recovery of a BIOS image
US7165137B2 (en) 2001-08-06 2007-01-16 Sandisk Corporation System and method for booting from a non-volatile application and file storage device
US7500238B2 (en) * 2001-08-22 2009-03-03 International Business Machines Corporation Method and system for installing a software platform onto a computer system
US7013384B2 (en) * 2002-01-15 2006-03-14 Lenovo (Singapore) Pte. Ltd. Computer system with selectively available immutable boot block code
US7299346B1 (en) 2002-06-27 2007-11-20 William K. Hollis Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing
US6889341B2 (en) * 2002-06-28 2005-05-03 Hewlett-Packard Development Company, L.P. Method and apparatus for maintaining data integrity using a system management processor
US7082525B2 (en) * 2002-10-02 2006-07-25 Sandisk Corporation Booting from non-linear memory
US20040123093A1 (en) * 2002-12-20 2004-06-24 Rothman Michael A. Method and apparatus for loading BIOS and option ROM's from alternate locations
US7487345B2 (en) * 2003-10-10 2009-02-03 Dell Products L.P. Method of comparing build capability flags of replacement BIOS with boot capability flags of current BIOS to determine compatibility between BIOS revisions and installed hardware during flash update
CN1317650C (zh) * 2003-10-27 2007-05-23 联想(北京)有限公司 基于硬盘保护空间自动恢复bios的方法
US20060041738A1 (en) * 2004-08-17 2006-02-23 Yu-Chen Lai Recovery method for master boot record of hard disk drive
US7493627B2 (en) * 2004-08-19 2009-02-17 Lenovo (Singapore) Pte. Ltd. System and method for configuring computer for operation
US7725929B2 (en) * 2005-02-22 2010-05-25 Microsoft Corporation Systems and methods for free demonstration of online premium content prior to purchase
WO2006137073A2 (en) * 2005-06-22 2006-12-28 Discretix Technologies Ltd. System, device, and method of selectively allowing a host processor to access host-executable code
US7827376B2 (en) * 2005-06-27 2010-11-02 Lenovo (Singapore) Pte. Ltd. System and method for protecting hidden protected area of HDD during operation
CN102193804B (zh) * 2010-03-03 2013-11-06 华为技术有限公司 一种单板驱动的加载方法和通信设备
JP5459270B2 (ja) * 2011-06-22 2014-04-02 コニカミノルタ株式会社 情報処理装置、情報処理装置の起動方法および起動プログラム
CN112698782B (zh) * 2019-10-22 2024-12-27 中电智能科技有限公司 基于存储器数据加载的实现装置及方法
MA53534B1 (fr) * 2021-06-16 2024-09-30 Université Sidi Mohammed Ben Abdellah Dispositif de génération d'énergie éolienne domestique à axe vertical

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3427593A (en) * 1966-03-24 1969-02-11 Burroughs Corp Data processor with improved program loading operation
US3931504A (en) * 1972-02-07 1976-01-06 Basic Computing Arts, Inc. Electronic data processing security system and method
US3996449A (en) * 1975-08-25 1976-12-07 International Business Machines Corporation Operating system authenticator
US4446519A (en) * 1981-05-26 1984-05-01 Corban International, Ltd. Method and apparatus for providing security for computer software
US4593353A (en) * 1981-10-26 1986-06-03 Telecommunications Associates, Inc. Software protection method and apparatus
JPS5897724A (ja) * 1981-12-04 1983-06-10 Mitsubishi Electric Corp 初期プログラムロ−ド方法
US4525599A (en) * 1982-05-21 1985-06-25 General Computer Corporation Software protection methods and apparatus
US4785361A (en) * 1982-11-08 1988-11-15 Vault Corporation Method and apparatus for frustrating the unauthorized copying of recorded data
US4478094A (en) * 1983-01-21 1984-10-23 Cetus Corporation Liquid sample handling system
US4562306A (en) * 1983-09-14 1985-12-31 Chou Wayne W Method and apparatus for protecting computer software utilizing an active coded hardware device
US4577289A (en) * 1983-12-30 1986-03-18 International Business Machines Corporation Hardware key-on-disk system for copy-protecting magnetic storage media
US4748561A (en) * 1984-05-14 1988-05-31 Mark Brown Method of protecting computer software
CA1252173A (en) * 1984-07-19 1989-04-04 Thomas C. Jessop Apparatus and method for detecting liquid penetration by a container used for aspirating and dispensing the liquid
US4794085A (en) * 1984-07-19 1988-12-27 Eastman Kodak Company Apparatus and method for detecting liquid penetration by a container used for aspirating and dispensing the liquid
US4747139A (en) * 1984-08-27 1988-05-24 Taaffe James L Software security method and systems
CA1238427A (en) * 1984-12-18 1988-06-21 Jonathan Oseas Code protection using cryptography
US4688169A (en) * 1985-05-30 1987-08-18 Joshi Bhagirath S Computer software security system
US4685056A (en) * 1985-06-11 1987-08-04 Pueblo Technologies, Inc. Computer security device
US4685055A (en) * 1985-07-01 1987-08-04 Thomas Richard B Method and system for controlling use of protected software
JPS6264912A (ja) * 1985-09-17 1987-03-24 Minoru Atake 分注方式
US4817140A (en) * 1986-11-05 1989-03-28 International Business Machines Corp. Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor
US4796220A (en) * 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software
EP0341438A3 (en) * 1988-05-13 1990-11-28 Abbott Laboratories Pneumatic sensing system
JPH0223427A (ja) * 1988-07-13 1990-01-25 Toshiba Corp パーソナルコンピュータ
US5022077A (en) * 1989-08-25 1991-06-04 International Business Machines Corp. Apparatus and method for preventing unauthorized access to BIOS in a personal computer system
WO1991016675A1 (en) * 1990-04-06 1991-10-31 Applied Biosystems, Inc. Automated molecular biology laboratory

Also Published As

Publication number Publication date
JPH0391034A (ja) 1991-04-16
KR910005171A (ko) 1991-03-30
EP0419004B1 (en) 1996-05-29
ATE138749T1 (de) 1996-06-15
DE69027167D1 (de) 1996-07-04
DE69027167T2 (de) 1996-12-12
PT95081A (pt) 1992-05-29
CA2020522A1 (en) 1991-02-26
CA2020522C (en) 1993-11-09
US5410699A (en) 1995-04-25
CN1018392B (zh) 1992-09-23
KR930007680B1 (ko) 1993-08-18
EP0419004A3 (en) 1992-01-29
EP0419004A2 (en) 1991-03-27
CN1049730A (zh) 1991-03-06
GB9012949D0 (en) 1990-08-01

Similar Documents

Publication Publication Date Title
JPH0754462B2 (ja) デイスケツトからbiosをロードするパーソナルコンピユータシステム
JPH0756631B2 (ja) パーソナルコンピユータシステム
KR930007679B1 (ko) 개인용 컴퓨터 시스템과, 이 시스템에 bios를 적재하기 위한장치 및 방법
JPH0754463B2 (ja) Bios保護装置及び方法、システム在中プログラム保護装置、並びにアクセス防止装置
KR950002945B1 (ko) 퍼스널 컴퓨터 시스템내의 시스템 유틸리티 보호 장치
US5214695A (en) Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
US5509120A (en) Method and system for detecting computer viruses during power on self test