[go: up one dir, main page]

JP2006331380A - パーソナルコンピュータの起動装置及び方法 - Google Patents

パーソナルコンピュータの起動装置及び方法 Download PDF

Info

Publication number
JP2006331380A
JP2006331380A JP2005238906A JP2005238906A JP2006331380A JP 2006331380 A JP2006331380 A JP 2006331380A JP 2005238906 A JP2005238906 A JP 2005238906A JP 2005238906 A JP2005238906 A JP 2005238906A JP 2006331380 A JP2006331380 A JP 2006331380A
Authority
JP
Japan
Prior art keywords
personal computer
storage device
original
boot code
external storage
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.)
Pending
Application number
JP2005238906A
Other languages
English (en)
Inventor
Kazuyuki Nishimura
和之 西村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ROMWIN KK
Original Assignee
ROMWIN KK
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 ROMWIN KK filed Critical ROMWIN KK
Priority to JP2005238906A priority Critical patent/JP2006331380A/ja
Publication of JP2006331380A publication Critical patent/JP2006331380A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】
汎用のパーソナルコンピュータの起動速度を高速化する。
【解決手段】
汎用のパーソナルコンピュータのBIOS・INT13によって、外付記憶装置又は内部記憶装置の第2のブートコート及び第2のブートストラップローダを本来の第1の処理モードで実行することにより、当該第2のブートストラップローダによって、パーソナルコンピュータを、その本来の第1の処理モードより処理速度が高速の第2の処理モードで起動できるように初期化するようにし、これにより外付記憶装置によって汎用のパーソナルコンピュータをその本来の起動速度より高速度で起動できる。
【選択図】 図7

Description

本発明はパーソナルコンピュータの起動装置及び方法に関し、特に汎用のパーソナルコンピュータを外付記憶装置から高速起動しようとするものである。
一般に、汎用のパーソナルコンピュータの起動は、内蔵記憶装置(通常HDD(Hard Disc Drive)記憶装置でなる)のROMメモリ領域に記憶されている起動コードBIOS−ROM(BASIC INPUT OUTPUT SYSTEM-ROM))によってオペレーティングシステムを立ち上がることにより起動するようになされている。
この汎用のパーソナルコンピュータを外付記憶装置によって外部から起動するようにした起動手法が特許文献1によって提案されている。
この起動装置は、図30に示すように、パーソナルコンピュータ1の外部接続ポート2に接続された外付記憶装置3に、パーソナルコンピュータ1の内蔵記憶装置4に記憶されているブートストラップローダ(BOOTSTRAP LOADER)BSLとオペレーティングシステムデータA〜Fとを、予めコピーしておく。
パーソナルコンピュータ1の起動時、CPU5は内蔵記憶装置4のディスク起動プログラムBIOS−ROMを用いて外付記憶装置3のブートストラップローダBSLを主メモリ6に読み出し、実行することにより、外付記憶装置3に格納されているオペレーティングシステムA〜Fのうち必要とするオペレーティングシステムA,C,Dを主メモリ6に読み込んで実行する。
かくしてCPU5は外付記憶装置3に予め格納しているブートストラップローダBSLによってオペレーティングシステムを立ち上げることができる。
特開2004−30184公報
ところが、図30の構成によると、ディスク起動プログラムBIOS−ROMによって外付記憶装置3から読み取られるブートストラップローダBSLは、汎用のパーソナルコンピュータ1において採用されているデータ処理方式USB1.1(USB Standard1.1)に基づいて構築されたコード形式で構成されているので、外付記憶装置3に予め格納されているブートストラップローダBSLを外部接続ポート2を介してパーソナルコンピュータ1の主メモリ6に読み込んで実行する際に、USB1.1によって規格化された転送速度(約1〔Mbyte/s〕)で転送することになる。
ところが、近来の汎用のパーソナルコンピュータ1は、外部接続ポート2として、USB1.1規格より高速度のUSB2.0Standard規格に適合させたものが採用されて来ており、当該転送速度の速いデータ処理形式を利用してオペレーティングシステムを立ち上げることができれば、汎用のパーソナルコンピュータ1の起動を一段と高速化できると考えられる。
本発明は以上の点を考慮してなされたもので、本来転送速度が遅いコード形式のブートストラップローダを有する汎用のパーソナルコンピュータであっても、高速度なコード形式の規格を利用してオペレーティングシステムを高速度で立ち上げることができるようにしたパーソナルコンピュータの起動装置及び方法を提案しようとするものである。
かかる課題を解決するため本発明においては、本来の第1のデータ転送速度に対応する第1の処理モードで、本来の第1のブートコードにより第1のブートストラップローダを実行することによって起動すると共に、外部接続ポート13を介して本来の第1のデータ転送速度より高速度な第2のデータ転送速度で外付記憶装置15との間にデータの転送ができるパーソナルコンピュータ12において、外部接続ポート13に接続された外付記憶装置15、41、内蔵起動データメモリ42に第2のブートコードにより実行する第2のブートストラップローダを予め記憶し(RT1)、パーソナルコンピュータ12の起動時、上記パーソナルコンピュータのディスクドライブ起動プログラムによって外付記憶装置15から第2のブートコード及び第2のブートストラップローダを実行することによりパーソナルコンピュータ12を第2のデータ転送速度に対応する第2の処理モードで起動動作するように初期化し(RT4)、その後第1のブートストラップローダを実行することによって第2の処理モードでパーソナルコンピュータ12を起動する(RT5)。
本発明によれば、汎用のパーソナルコンピュータのディスクドライブ起動プログラムによって、外付記憶装置の第2のブートコート及び第2のブートストラップローダを本来の第1の処理モードで実行することにより、当該第2のブートストラップローダによって、パーソナルコンピュータを、その本来の第1の処理モードより処理速度が高速の第2の処理モードで起動できるように初期化し、これにより外付記憶装置によって汎用のパーソナルコンピュータをその本来の起動速度より高速度で起動できる。
以下図面について、本発明の一実施の形態を詳述する。
(1)第1の実施の形態
図1において、11は全体としてパーソナルコンピュータの起動装置を示し、パーソナルコンピュータ12の外部接続ポート13にUSBケーブル14を介して外付記憶装置15(Windows(登録商標)2000のオペレーティングシステムを有するハードディスクでなる)が接続されている。
パーソナルコンピュータ12は、図2に示すように、中央処理ユニット(CPU)21がバス22を介してプログラムメモリ23のプログラムをRAM構成の動作メモリ24を用いながら実行することにより、ユーザがディスプレイ25を見ながら入力装置26によって入力された命令を実行し、その処理結果を内部記憶装置27に蓄積するように構成されている。
パーソナルコンピュータ12は、HDD構成の内蔵記憶装置を有する汎用のパーソナルコンピュータでなり、そのROM領域にプログラムメモリ23が形成されると共に、RAM領域に動作メモリ24及び内部記憶装置27が形成されている。
起動データに関して、内部記憶装置27には、図3に示すように、パーソナルコンピュータ12を起動するために用いられるブートコード(これを「本来のブートコード」と呼ぶ)がセクタ0に格納されていると共に、当該本来のブートコードにより実行されるブートストラップローダBSL(これを「本来のブートストラップローダBSL」と呼ぶ)がセクタXに格納されており、これによりパーソナルコンピュータ12が単独で起動する際には、CPU21は、セクタ0の「本来のブートコード」によってセクタXの「本来のブートストラップローダBSL」を実行することにより、USB1.1の規格に従ってオペレーティングシステムを立ち上げるようになされている。
これに対して、外付記憶装置15には、図4に示すように、パーソナルコンピュータ12をSUB2.0規格で起動するため起動データとして、セクタ0にUSB2.0規格のUSB2.0ブートコードが格納されていると共に、セクタYに当該USB2.0ブートコードにより実行されるディスクドライブ起動プログラムUSB2.0BIOSが格納されている。
これに加えて、外付記憶装置15は、セクタZに汎用のパーソナルコンピュータにおいて用いられているブートコード(このブートコードはパーソナルコンピュータ12の「本来のブートコード」と同一のコードでなる)が格納されていると共に、セクタXに当該「本来のブートコード」によって実行される「ブートストラップローダBSL」(このブートストラップローダBSLはパーソナルコンピュータ12において用いられる「本来のブートストラップローダBSL」と同一のコードでなる)が格納されている。
この外付記憶装置15の起動データは、パーソナルコンピュータ12を外付記憶装置15によってUSB2.0規格で起動動作させる前に、パーソナルコンピュータ12が図5に示す「外付記憶装置への起動データの設定処理手順」RT1を実行することにより、外付記憶装置15内に設定される。
この「外付記憶装置への起動データの設定処理手順」RT1を実行する際には、外部接続ポート13に、「空の」(起動データを設定する前の)外付記憶装置15を接続すると共に、他の外部接続ポート13Xに、USBケーブル14Xを介して、「USB2.0ブートコード」及び「USB2.0BIOS」を記憶する補助記憶装置16を接続する。
かくしてこの実施の形態の場合の設定処理手順RT1の処理は、USB2.0の起動設定がされる前のパーソナルコンピュータ12を用いてそのCPU21の処理動作(USB1.0規格で動作する)により実行される。
パーソナルコンピュータ12のCPU21は、ステップSP1においてパーソナルコンピュータ12のプログラムメモリ23に格納されている本来のディスクドライブ起動プログラムBIOS・INT13によって、図6(A)に示すように、空の外付記憶装置15のセクタ0及びセクタXに、それぞれパーソナルコンピュータ12の内部記憶装置27のセクタ0及びセクタXに格納されている「本来のブートコード」及び「本来のブートストラップローダBSL」をそのままコピーする。
続いてCPU21はステップSP2において外付記憶装置15のセクタ0にコピーした「本来のブートコード」を図6(B)に示すようにセクタZにコピーし直した後、ステップSP3において外付記憶装置15のセクタYに補助記憶装置16に記憶されているUSB2.0規格のBIOS、すなわち「USB2.0BIOS」を書き込む。
続いてCPUはステップSP4において、セクタ0にコピーされている「本来のブートコード」(図6(A))を、補助記憶装置16に記憶されているUSB2.0規格のブートコード、すなわち「USB2.0ブートコード」に入れ換え、これによりステップSP5において当該「外付記憶装置への起動データの設定処理手順」RT1を終了する。
このような処理手順によって外付記憶装置15には、パーソナルコンピュータ12をSUB2.0規格で起動するための起動データ(図4)が配置される。
以上の構成において、パーソナルコンピュータ12のCPU21は、図7に示す「起動処理手順」RT2に従ってパーソナルコンピュータ12をその本来のコード規格であるUSB1.1の起動動作ではなく、外部記憶装置15に格納されているUSB2.0のコード規格を有する起動データの起動動作によって、パーソナルコンピュータ12の本来の起動速度より格段的に高速度でパーソナルコンピュータ12を起動させる。
CPU21は、ユーザが入力装置26から入力した起動命令に応じて、「起動処理手順」RT2に入ると、ステップSP11においてプログラムメモリ23に格納されているディスクドライブ起動プログラムBIOS・INT13を実行することにより、次のステップSP12において外付記憶装置15に格納されているUSB2.0ブートコードによってUSB2.0BIOSを動作メモリ24の主メモリに書き込んでパーソナルコンピュータ12を初期化する。
CPU21は、ステップSP12においてUSB2.0BIOSを書き込む際には、図8に示す「USB2.0BIOSの読込み処理手順」RT3のルーチンに入り、先ずステップSP21においてUSB2.0ブートコードを外付記憶装置15のセクタ0から動作メモリ24の主メモリに読み込んでこれを実行する。
続いてCPU21は、次のステップSP22において、外付記憶装置15から読み込んだUSB2.0ブートコードによって、外付記憶装置15のセクタYに格納されているUSB2.0BIOSを動作メモリ24の主メモリに読み込む。
これに続いてCPU21は、ステップSP23において、USB2.0BIOSの先頭アドレスにジャンプしてこれを実行し、その後ステップSP24において当該「USB2.0BIOSの読込み処理手順」RT3を終了する。
このとき動作メモリ24の主メモリには、図9に示すように、USB2.0BIOSが書き込まれると共に、これが、初期化処理部分のプログラムの先頭アドレスから、図10に示す「USB2.0BIOSの初期化処理手順」RT4に従って、実行される。
CPU21は、「USB2.0BIOSの初期化処理手順」RT4に入ると、先ずステップSP31においてINT13のベクタを主メモリ(図9)の記憶エリアC2に保存する。
かくしてCPU21は、パーソナルコンピュータ12のINT13のコードを実行するとき、本来のブートコードに対して当該初期化処理を割り込ませた後、保存したベクタに戻って本来のブートコードを実行できるようにする。
続いてCPU21はステップSP32において、現在のINT13のベクタをINT13エントリ処理プログラム(図11)に変更し、これにより主メモリ(図9)の記憶エリアC3に書き込んだINT13エントリ処理部分のプログラムを実行できる状態にする。
続いてCPU21はステップSP33に移って、パーソナルコンピュータ12が外部接続ポート13を介してUSB2.0BIOS規格で処理を実行できるように、パーソナルコンピュータ12のハード構成部分を初期化する。
かくしてその後、CPU21が本来のブートコードを実行しようとするとき、パーソナルコンピュータ12がこれに応じてUSB2.0の規格でブートコードを実行し得る状態になる。
続いてCPU21は、ステップSP34に移って、外付記憶装置15のセクタZに格納されている「本来のブートコード」を動作メモリ24の主メモリに読み込むと共に、続くステップSP35において当該本来のブートコードにジャンプしてこれを実行する。
この結果CPU21は外付記憶装置15に予め格納しておいた本来のブートコード(このブートコードはパーソナルコンピュータ12の本来のブートコードと同一である)を用いてパーソナルコンピュータ12を起動動作できる状態に初期化する。
かくしてCPU21は、ステップSP36において、当該「USB2.0BIOSの初期化処理手順」RT4の処理を終了する。
CPU21は、USB2.0BIOSの「初期化処理手順」RT4の処理が済むと、「起動処理手順」RT2(図7)に戻って、ステップSP13において内部記憶装置27に格納されている本来のブートストラップローダBSLを実行する。
このときパーソナルコンピュータ12は、ステップSP12においてUSB2.0BIOSを実行できる状態に初期化されているので、本来のブートストラップローダBSLをUSB2.0規格によって処理できる。
続いてCPU21は、ステップSP14においてBIOS・INT13のエントリ処理を実行して、ステップSP15において当該「起動処理手順」RT2の処理を終了する。
このとき、ステップSP14において、CPU21は、INT13の処理命令が来るごとに図11に示す「INT13エントリ処理手順」RT5を実行し、先ずステップSP41においてUSB2.0の装置が接続されているか否かの判断をする。
ここで否定結果が得られると、このことは外部接続ポート13にUSB2.0規格の装置が接続されていないことを意味し、このときCPU21はステップSP42に移って本来のINT13にジャンプしてこれを実行することによりパーソナルコンピュータ12をその本来の起動方式(すなわちUSB1.0規格の起動方式)で起動し、ステップSP43において当該「INT13エントリ処理手順」RT5の処理を終了してメインルーチンに戻る。
このときの起動時間は、USB1.1が1〔Mbyte/s〕の転送速度に規定されていることにより、起動時間はほぼ100秒程度になる。
これに対して、ステップSP41において肯定結果が得られると、このことは外部接続ポート13にUSB2.0規格の装置、すなわち外部記憶装置15が接続されていることを意味し、このときCPU21はステップSP44に移ってUSB2.0モードで外付記憶装置15のアクセス処理をする。
実際上、この処理は、上述のステップSP12(図7)において初期化されたパーソナルコンピュータ12の外部接続ポート13の構成部分を用いてINT13の命令の内容(例えばリード命令、ライト命令など)を実行する。
これによりパーソナルコンピュータ12の起動速度は、USB2.0規格に適応する処理速度(すなわち60〔Mbyte/s〕の転送速度に見合った処理速度)で処理されることにより、これに応じてパーソナルコンピュータ12は約1秒の立上げ時間で立ち上がることになる。
かくしてステップSP44の処理を終了すると、CPU21はステップSP43からメインルーチンに戻ることにより、次のINT13の処理を待ち受ける。
以上の構成によれば、ユーザが入力装置26を用いて汎用のパーソナルコンピュータ12を起動する際に、外部接続ポート13に外付記憶装置15を接続しておくことにより、CPU21が、当該汎用のパーソナルコンピュータ12の本来のブートコードにより本来のブートストラップローダBSLを実行する際に(図7のステップSP11、SP13)、外付記憶装置15に予め格納したUSBブートコードによりUSB2.0規格の起動プログラムUSB2.0BIOSを本来の起動動作に割り込ませるように起動処理をすることにより(ステップSP12、SP14)、本来、USB1.1規格によって構成されているパーソナルコンピュータ12を、USB2.0規格のUSBブートコード及びUSB2.0BIOSによってパーソナルコンピュータ12を高速度で立ち上げることができる。
なお、上述の第1の実施の形態の場合には、高速起動させようとするパーソナルコンピュータ12を用いて、外付記憶装置15に対する、「本来のブートコード」及び「本来のBSL」の設定(内部記憶装置27からの)並びに「USB2.0ブートコード」及び「USB2.0BIOS」の設定(図5、図6)を行うようにしたが、これに代え、高速起動させようとするパーソナルコンピュータ12以外の標準的な汎用パーソナルコンピュータを用いて当該設定処理を行うようにしても良い。
(2)第2の実施の形態
図12は第2の実施の形態における起動システムを示すもので、図2との対応部分に同一符号を付して示すように、パーソナルコンピュータ12の外部接続ポート13に接続される外部記憶装置31が、図13に示すように、CDROM記憶部31Aと、HDD記憶部31Bとを有する点において、図2の外付記憶装置15と相違している。
外付記憶装置31は、NANOフラッシュメモリで構成され、そのうちCDROM記憶部31Aは、CDROM規格の動作条件によってパーソナルコンピュータ12のBIOS・INT13によって起動動作できる規格でデータを固定記憶するのに対して、HDD記憶部31Bは、パーソナルコンピュータ12のBIOS・INT13では起動できないハードディスク規格の動作条件によってデータを書き込み記憶できるように構成されている。
外付記憶装置31のCDROM記憶部31Aの記憶領域セクタ0には、USB2.0規格を有するUSB2.0ブートコードが格納されていると共に、セクタXに当該USB2.0ブートコードによって実行される初期起動コードUSB2.0BIOSが格納されている。
これに対して、HDD記憶部31Bのセクタ0には、本来のブートコード(パーソナルコンピュータ12の本来のブートコードと同一のもの)が書き込まれていると共に、セクタZに本来のブートストラップローダBSL(これもパーソナルコンピュータ12の本来のBSLと同一のもの)が書き込まれている。
CPU21はユーザが入力装置26によって起動命令を入力したとき、図14に示す「起動処理手順」RT6を実行することにより、パーソナルコンピュータ12のオペレーティングシステムを起動する。
CPU21は、「駆動処理手順」RT6に入ると、ステップSP51においてパーソナルコンピュータ12のプログラムメモリ23に格納されているBIOS・INT13を実行すると共に、次のステップSP52において当該BIOSによって外部記憶装置31のCDROM記憶部31Aのセクタ0の「USB2.0ブートコード」を動作メモリ24の主メモリに読み込んで実行する。
これによりCPU21は、次のステップSP53において「USB2.0ブートコード」によって「USB2.0BIOS」を外付記憶装置31のセクタXから動作メモリ24の主メモリに読み込んでこれを実行する。
続いてCPU21は、次のステップSP54においてパーソナルコンピュータ12の外部接続ポート13に関するハード的な起動構成部分を「USB2.0BIOS」により初期化する。
これによりパーソナルコンピュータ12はUSB2.0モードで起動動作ができる状態になり、続いてCPU21は次のステップSP55において外付記憶装置31のHDD記憶部31Bのセクタ0の「本来のブートコード」によりセクタZの「本来のブートストラップローダBSL」を実行する。
このとき当該「本来のブートストラップローダBSL」からINT13の実行命令が出るごとにCPU21はステップSP56において当該INT13のエントリ処理を実行する。
かくして全てのエントリ処理が終了したとき、CPU21はステップSP57において当該起動処理手順RT6を終了する。
起動処理手順RT6のステップSP54における「USB2.0BIOS」による初期化処理は、CPU21が図15に示す「UBS2.0BIOSの初期化処理手順」RT7を実行することにより行う。
当該初期化処理手順RT7に入ると、CPU21は、ステップSP61においてINT13の命令のベクタを保存した後、ステップSP62において当該INT13のベクタをINT13エントリプログラムに変更し、これによりINT13の命令が与えられるごとにINT13エントリプログラム(図16)を実行するように設定する。
続いてCPU21はステップSP63において「USB2.0BIOS」を実行できるように、パーソナルコンピュータ12の起動に用いられるハード構成部分を初期化する。
かかる初期化が行われると、パーソナルコンピュータ12は、外付記憶装置31から供給される「USB2.0のブートストラップローダ」に応動できるような状態になる。
続いてCPU21はステップSP64において、外付記憶装置31のHDD記憶部31Bのセクタ0の「本来のブートコード」を動作メモリ24の主メモリ上に書き込むと共に、ステップSP65において当該「本来のブートコード」にジャンプしてこれを実行する。
かくしてCPU21は当該「USB2.0BIOSの初期化処理手順」RT7の処理をステップSP66において終了する。
ステップSP56におけるエントリ処理は、CPU21が図16に示す「INT13エントリ処理手順」RT8を実行することにより行なわれる。
「INT13エントリ処理手順」RT8に入ると、CPU21はステップSP71においてUSB2.0の装置が接続されているか否かを確認する。
ここで否定結果が得られると、このことはパーソナルコンピュータ12の外部接続ポート13にUSB規格の外付記憶装置31が接続されていないことを意味し、このときCPU21はステップSP72に移ってパーソナルコンピュータ12の内部記憶装置27に格納されている「本来のブートコード」及び「本来のBSL」を実行するような処理をした後、ステップSP73において当該「INT13エントリ処理手順」RT8を終了する。
これによりCPU21は外部接続ポート13に外付記憶装置31が接続されていない場合には、パーソナルコンピュータ12においてもともと設定されているUSB1.1処理モードに対応する「本来のブートコード」及び「本来のブートストラップローダBSL」を用いて起動処理をする。
このときの起動時間は、USB1.1が1〔Mbyte/s〕の転送速度に規定されていることにより、起動時間はほぼ100秒程度になる。
これに対して、ステップSP71において肯定結果が得られると、このことは外部接続ポート13に外付記憶装置31が接続されていることを意味し、このときCPU21は、ステップSP74においてUSB2.0モードで外付記憶装置31のHDD記憶部31Bをアクセス処理した後、ステップSP73においてメインルーチンに戻るような処理をする。
この処理はパーソナルコンピュータ12をUSB2.0モードに初期化したハード構成部分を利用して起動処理することになる。
従ってこのときの起動処理は、USB2.0において規定されている転送速度が60〔Mbyte/s〕であるので、これに応じてパーソナルコンピュータ12の起動速度は約1秒の高速度で立ち上がることになる。
以上の構成によれば、外付記憶装置31として、パーソナルコンピュータ12のBIOS・INT13には直接応動できないHDD記憶部31Bをもっているとしても、当該パーソナルコンピュータ12のBIOS・INTに応動できるCDROM記憶部31Aをもっていることにより、この一部のCDROM記憶部31Aの応動動作を利用してパーソナルコンピュータ12を起動することにより、その後の処理を、起動は応動できないが、大容量の記憶領域によって書込み・読出し動作ができるHDD記憶部31Bを利用して、できるようにし得る。
かくして、パーソナルコンピュータ12を外部接続ポート13に接続して起動できる外付記憶装置の範囲を一段と拡大できる。
(3)第3の実施の形態
図17は第3の実施の形態における起動システムを示すもので、図2との対応部分に同一符号を付して示すように、パーソナルコンピュータ12の外部接続ポート13に接続される外付記憶装置41が、図18に示すように、セクタ0に本来のブートコードを格納すると共に、セクタXに当該本来のブートコードによって実行される本来のブートストラップローダBSLを格納した構成を有する。
これに対して、パーソナルコンピュータ12の内部記憶装置27には、起動データとして、図19に示すように、セクタ0に、セクタYに格納されている初期起動コードUSB2.0BIOSを駆動するためのUSB2.0ブートコードが格納されていると共に、セクタZに、セクタXに格納されている本来のブートストラップローダBSLを駆動するための本来のブートコードが格納されている。
内部記憶装置27の起動データは、外付記憶装置41をパーソナルコンピュータ12の外部接続ポート13に接続して外付記憶装置41を用いてパーソナルコンピュータ12を起動動作させる前に、予め当該パーソナルコンピュータ12の起動データと、外部接続ポート13Xに接続した補助記憶装置16とを用いて、図20に示す「内部記憶装置への起動データの設定処理手順」RT10の手順に従って設定される。
先ずCPU21は、ステップSP81において、図21(A)及び(B)に示すように、内部記憶装置27のセクタ0の「本来のブートコード」をセクタZにコピーし、続くステップSP82において補助記憶装置16に記憶されている「USB2.0BIOS」を内部記憶装置27のセクタYに書き込むと共に、ステップSP83において内部記憶装置27のセクタ0の「本来のブートコード」を補助記憶装置16に記憶されている「USB2.0ブートコード」に入れ換える。
かくしてステップSP84において当該「内部記憶装置への起動データの設定処理手順」RT10を終了し、内部記憶装置27には、図21(B)に示すように、パーソナルコンピュータ12を起動するための起動データが揃うことになる。
以上の構成において、パーソナルコンピュータ12のCPU21は、図22に示す「起動処理手順」RT11に従ってパーソナルコンピュータ12をその本来のコード規格であるUSB1.1の起動動作ではなく外部記憶装置41及び内部記憶装置27に格納されているUSB2.0のコード規格を有する起動データの起動動作によって、パーソナルコンピュータ12の本来の起動速度より格段的に高速度でパーソナルコンピュータ12を起動させる。
すなわち、CPU21は、ユーザが入力装置26から入力した起動命令に応じて、「起動処理手順」RT11に入ると、ステップSP91においてプログラムメモリ23に格納されているディスクドライブ起動プログラムBIOS・INT13を実行することにより、次のステップSP92において、内部記憶装置27に格納されている「USB2.0ブートコード」によって「USB2.0BIOS」を動作メモリ24の主メモリに書き込んでパーソナルコンピュータ12を初期化する。
このステップSP92の初期化処理は、CPU21が図23の「USB2.0BIOSの読み込み処理手順」RT12を実行することにより行なう。
先ずCPU21は、ステップSP101において「USB2.0のブートコード」を内部記憶装置27のセクタ0から主メモリに読み込んで実行する。
かくしてCPU21はステップSP102において、主メモリに読み込んだ「USB2.0ブートコード」によって内部記憶装置27のセクタYから「USB2.0BIOS」を主メモリに読み込む。
これに続いてCPU21はステップSP103において、「USB2.0BIOS」の先頭アドレスにジャンプしてこれを実行し、その後ステップSP104において当該「USB2.0BIOSの読込み処理手順」RT12を終了する。
このとき動作メモリ24の主メモリには、図24に示すように、「USB2.0BIOS」が書き込まれると共に、これが初期化処理部分のプログラムの先頭アドレスから、図25に示す「USB2.0BIOSの初期化処理手順」RT13の初期化処理を実行する。
CPU21は先ずステップSP111においてINT13のベクタを主メモリの記憶エリアC2(図24)に保存する。
かくしてCPU21は、パーソナルコンピュータ12のINT13のコードを実行するとき、本来のブートコードに対して初期化処理を割り込ませた後、保存したベクタに戻って本来のブートコードを実行できるようにする。
続いてCPU21はステップSP112において、現在のINT13のベクタをINT13エントリ処理プログラム(図26)に変更し、これにより主メモリの記憶エリアC3に書き込んだINT13エントリ処理部分のプログラムを実行できる状態にする。
続いてCPU21はステップSP113に移って、パーソナルコンピュータ12が「USB2.0BIOS」規格で処理を実行できるように、パーソナルコンピュータ12のハード構成部分を初期化する。
かくして、その後、CPU21は「本来のブートコード」を実行しようとするとき、パーソナルコンピュータ12がこれに応じてUSB2.0の方式でブートコードの実行をなし得る状態になる。
続いてCPU21は、ステップSP114において外部接続ポート13にUSB2.0の装置が接続されているか否かを確認し、肯定結果が得られたとき、ステップSP115に移って、外付記憶装置41のセクタ0の「本来のブートコード」を主メモリ上に読み込むと共に、続くステップSP116において当該本来のブートコードにジャンプしてこれを実行する。
この結果CPU21は、外付記憶装置41に予め格納しておいた「本来のブートコード」(このブートコードはパーソナルコンピュータ12の本来のブートコードと同一である)を用いてパーソナルコンピュータ12を起動動作させ、これにより外付記憶装置41の「本来のブートコード」を用いてオペレーティングシステムの立上げをなし得るように、パーソナルコンピュータ12を初期化したことになる。
かくしてCPU21は、ステップSP117において、当該「USB2.0BIOSの初期化処理手順」RT13の処理を終了する。
これに対してステップSP114において否定結果が得られると、CPU21は、ステップSP118に移って内部記憶メモリ27のセクタZの「本来のブートコードを主メモリ上に読み込んでステップSP116に移ることにより、内部記憶メモリ27の「本来のブートコード」を用いてオペレーティングシステムを立ち上げるようにする。
CPU21は、この「USB2.0BIOSの初期化処理手順」RT13の処理が済むと、「起動処理手順」RT11(図22)に戻って、ステップSP93において内部記憶装置27(図17)に格納されている「本来のブートストラップローダBSL」を実行する。
このときパーソナルコンピュータ12は、ステップSP92において「USB2.0BIOS」を実行できる状態に初期化されているので、「本来のブートストラップローダBSL」をUSB2.0規格によって処理できる。
続いてCPU21は、ステップSP94においてBIOS・INT13のエントリ処理を実行して、ステップSP95において当該「起動処理手順」RT11の処理を終了する。
ここでCPU21は、ステップSP94においてINT13の処理命令が来るごとに図26に示す「INT13エントリ処理手順」RT14を実行し、先ずステップSP121においてUSB2.0の装置が外部接続ポート13に接続されているか否かの判断をする。
ここで否定結果が得られると、このことは外部接続ポート13にUSB2.0規格の装置が接続されていなことを意味し、このときCPU21はステップSP122に移って本来のINT13にジャンプしてこれを実行することによりパーソナルコンピュータ12を起動し(このときの立上げ時間は約100秒になる)、ステップSP123において当該INT13エントリ処理手順RT14の処理を終了してメインルーチンに戻る。
これに対して、ステップSP121において肯定結果が得られると、このことは外部接続ポート13にUSB2.0規格の装置、すなわち外付記憶装置41が接続されていることを意味し、このときCPU21はステップSP124に移ってUSB2.0のアクセス処理を実行する。
実際上、この処理は、上述のステップSP92(図22)において初期化されたパーソナルコンピュータ12の構成部分を用いてINT13の命令の内容(例えばリード命令、ライト命令)などを実行する。
これによりパーソナルコンピュータ12の起動速度がUSB2.0規格に適応する処理速度(すなわち60〔Mbyte/s〕の伝送速度に見合った処理速度)で処理されることにより、パーソナルコンピュータ12の立上げ時間を約1秒に短縮できることになる。
かくしてステップSP124の処理を終了すると、CPU21はステップSP123からメインルーチンに戻ることにより、次のINT13の処理を待ち受ける。
以上の構成によれば、ユーザが入力装置26を用いて汎用のパーソナルコンピュータ12を起動する際に、外部接続ポート13に外付記憶装置41を接続すると共に、汎用パーソナルコンピュータ12が有する内部記憶装置27内の起動データを予め設定し直しておくことにより、CPU21が当該汎用のパーソナルコンピュータ12の本来のブートコードにより本来のブートストラップローダを実行する際に(図22のステップSP91、SP93)、外付記憶装置41及び内部記憶装置27に予め用意したUSBブートコードにより、USB2.0規格の起動プログラムUSB2.0BIOSを本来の起動動作に割り込ませるように起動処理をし(ステップSP92、SP94)、これにより本来のUSB1.1規格によって構成されているパーソナルコンピュータ12を、USB2.0規格のUSBブートコード及びUSB2.0BIOSによって高速度で起動することができる。
(4)他の実施の形態
上述の実施の形態においては、図2について上述したように、汎用のパーソナルコンピュータ12に対して、Windows(登録商標)2000のオペレーティングシステムをもつ外付記憶装置15を接続した場合について述べたが、図2との対応部分に同一符号を付して図27、図28及び図29に示すように、オペレーティングシステムとしてWindows(登録商標)XP、Linux及びUnix(登録商標)のオペレーティングシステムを有する外付記憶装置15X、15Y及び15Zを接続しても、上述の場合と同様の効果を得ることができる。
本発明は汎用のパーソナルコンピュータに外付記憶装置を接続して起動する場合に利用できる。
本発明の一実施の形態によるパーソナルコンピュータの起動装置の全体構成を示す略線的斜視図である。 第1の実施の形態を示す略線的系統図である。 内部記憶装置の本来の起動データの配置を示す略線図である。 外付記憶装置の起動データの配置を示す略線図である。 外付記憶装置への起動データの設定処理手順を示すフローチャートである。 (A)及び(B)は外付記憶装置への起動データの設定の仕方の説明に供する略線図である。 起動処理手順を示すフローチャートである。 USB2.0BIOSの読込み処理手順を示すフローチャートである。 主メモリに書き込んだUSB2.0BIOSのデータ配置を示す略線図である。 USB2.0BIOSの初期化処理手順を示すフローチャートである。 INT13エントリ処理手順を示すフローチャートである。 第2の実施の形態を示す略線的系統図である。 外付記憶装置の起動データの配置を示す略線図である。 起動処理手順を示すフローチャートである。 USB2.0BIOSの初期化処理手順を示すフローチャートである。 INT13エントリ処理手順を示すフローチャートである。 第3の実施の形態を示す略線的系統図である。 外付記憶装置の起動データの配置を示す略線図である。 内部記憶装置の起動データの配置を示す略線図である。 内部記憶装置への起動データの設定処理手順を示すフローチャートである。 内部記憶装置への起動データの設定の仕方の説明に供する略線図である。 起動処理手順を示すフローチャートである。 USB2.0BIOSの読込み処理手順を示すフローチャートである。 主メモリに書き込んだUSB2.0BIOSのデータ配置を示す略線図である。 USB2.0BIOSの初期化処理手順を示すフローチャートである。 INT13エントリ処理手順を示すフローチャートである。 Windows(登録商標)XPのOSを有する外付記憶装置を接続した場合の実施の形態を示す略線的斜視図である。 LinuxのOSを有する外付記憶装置を接続した場合の実施の形態を示す略線的斜視図である。 Unix(登録商標)のOSを有する外付記憶装置を接続した場合の実施の形態を示す略線的斜視図である。 従来の構成を示す略線的系統図である。
符号の説明
1、12……パーソナルコンピュータ、2、13……外部接続ポート、3、15、31、41……外付記憶装置、4、27……内蔵記憶装置、5、21……CPU、6……主記憶装置、22……バス、23……プログラムメモリ、24……動作メモリ、25……ディスプレイ、26……入力装置。

Claims (6)

  1. 本来の第1のデータ転送速度に対応する第1の処理モードで、本来の第1のブートコードにより第1のブートストラップローダを実行することによって起動すると共に、外部接続ポートを介して上記本来の第1のデータ転送速度より高速度な第2のデータ転送速度で外付記憶装置との間にデータの転送ができるパーソナルコンピュータにおいて、
    上記外部接続ポートに接続された上記外付記憶装置又は上記パーソナルコンピュータの内部記憶メモリに第2のブートコードにより実行する第2のブートストラップローダを予め記憶し、
    上記パーソナルコンピュータの起動時、上記パーソナルコンピュータのディスクドライブ起動プログラムによって上記外付記憶装置から上記第2のブートコード及び上記第2のブートストラップローダを実行することにより上記パーソナルコンピュータを上記第2のデータ転送速度に対応する第2の処理モードで起動動作するように初期化し、
    その後上記第1のブートストラップローダを実行することによって上記第2の処理モードで上記パーソナルコンピュータを起動する
    ことを特徴とするパーソナルコンピュータの起動方法。
  2. 本来の第1のデータ転送速度に対応する第1の処理モードで、本来の第1のブートコードにより第1のブートストラップローダを実行することによって起動すると共に、外部接続ポートを介して上記本来の第1のデータ転送速度より高速度な第2のデータ転送速度で外付記憶装置との間にデータの転送ができるパーソナルコンピュータにおいて、
    上記外部接続ポートに接続された上記外付記憶装置に第2のブートコードにより実行する第2のブートストラップローダを記憶する手段と、
    上記パーソナルコンピュータの起動時に、上記パーソナルコンピュータのディスクドライブ起動プログラムによって上記外付記憶装置から上記第2のブートコード及び上記第2のブートストラップローダを実行することにより上記パーソナルコンピュータを上記第2のデータ転送速度に対応する第2の処理モードで起動動作するように初期化する手段と、
    その後上記第1のブートストラップローダによって上記第2の処理モードで上記パーソナルコンピュータを起動する手段と
    を具えることを特徴とするパーソナルコンピュータの起動装置。
  3. 本来の第1のデータ転送速度に対応する第1の処理モードで、本来の第1のブートコードにより第1のブートストラップローダを実行することによって起動すると共に、外部接続ポートを介して上記本来の第1のデータ転送速度より高速度な第2のデータ転送速度で外付記憶装置との間にデータの転送ができるパーソナルコンピュータにおいて、
    上記外部接続ポートに接続された上記外付記憶装置のうち、上記外部接続ポートのデータ転送規格によって起動できる第1の記憶部に第2のブートコードにより実行される第2のブートストラップローダを予め記憶し、
    上記パーソナルコンピュータの起動時に、上記パーソナルコンピュータのディスクドライブ起動プログラムによって上記外付記憶装置の上記第1の記憶部の上記第2のブートストラップローダを実行することにより上記パーソナルコンピュータを上記第2のデータ転送速度に対応する第2の処理モードで起動動作するように初期化し、
    その後上記外付記憶装置のうち、上記外部接続ポートのデータ転送規格によっては起動できない第2の記憶部に格納されている上記第1のブートストラップローダによって上記第2の処理モードで上記パーソナルコンピュータを起動する
    ことを特徴とするパーソナルコンピュータの起動方法。
  4. 本来の第1のデータ転送速度に対応する第1の処理モードで、本来の第1のブートコードにより第1のブートストラップローダを実行することによって起動すると共に、外部接続ポートを介して上記本来の第1のデータ転送速度より高速度な第2のデータ転送速度で外付記憶装置との間にデータの転送ができるパーソナルコンピュータにおいて、
    上記外部接続ポートに接続された上記外付記憶装置のうち、上記外部接続ポートのデータ転送規格によって起動できる第1の記憶部に第2のブートコードにより実行する第2のブートストラップローダを予め記憶する手段と、
    上記パーソナルコンピュータの起動時に、上記パーソナルコンピュータのディスクドライブ起動プログラムによって上記外付記憶装置の上記第1の記憶部の上記第2のブートストラップローダを実行することにより上記パーソナルコンピュータを上記第2の転送速度に対応する第2の処理モードで起動動作するように初期化する手段と、
    その後上記外付記憶装置のうち、上記外部接続ポートのデータ転送規格のデータによっては起動できない第2の記憶部に格納されている上記第1のブートストラップローダによって上記第2の処理モードで上記パーソナルコンピュータを起動する手段と
    を具えることを特徴とするパーソナルコンピュータの起動装置。
  5. パーソナルコンピュータの外部接続ポートに接続される外付記憶装置であって、
    上記パーソナルコンピュータ本来の第1のデータ転送速度に対応する第1の処理モードで、上記パーソナルコンピュータのディスクドライブ起動プログラムによって上記外部接続ポートを介して読み出される第2のブートコード及び当該第2のブートコードにより実行される第2のブートストラップローダを記憶し、
    上記第2のブートコード及び上記第2のブートストラップローダは、上記第1のデータ転送速度より高速な第2のデータ転送速度に対応する第2の処理モードで、上記パーソナルコンピュータの起動部を起動できるように初期化する
    ことを特徴とする外付記憶装置。
  6. 本来の第1のデータ転送速度に対応する第1の処理モードで、本来の第1のブートコードにより第1のブートストラップローダを実行することによって起動すると共に、外部接続ポートを介して上記本来の第1のデータ転送速度より高速度な第2のデータ転送速度で外付記憶装置との間にデータの転送ができるパーソナルコンピュータにおいて、
    上記外部接続ポートに接続された上記外付記憶装置又は上記パーソナルコンピュータの内部記憶メモリに第2のブートコード及び当該第2のブートコードにより実行する第2のブートストラップローダを予め記憶し、
    上記パーソナルコンピュータの起動時、上記パーソナルコンピュータのディスクドライブ起動プログラムによって上記外付記憶装置から上記第2のブートコード及び上記第2のブートストラップローダを実行することにより上記パーソナルコンピュータを上記第2のデータ転送速度に対応する第2の処理モードで起動動作するように初期化し、
    その後上記第1のブートストラップローダを実行することによって上記第2の処理モードで上記パーソナルコンピュータを起動する
    ことを特徴とするパーソナルコンピュータの起動方法。
JP2005238906A 2005-04-25 2005-08-19 パーソナルコンピュータの起動装置及び方法 Pending JP2006331380A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005238906A JP2006331380A (ja) 2005-04-25 2005-08-19 パーソナルコンピュータの起動装置及び方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005126722 2005-04-25
JP2005238906A JP2006331380A (ja) 2005-04-25 2005-08-19 パーソナルコンピュータの起動装置及び方法

Publications (1)

Publication Number Publication Date
JP2006331380A true JP2006331380A (ja) 2006-12-07

Family

ID=37552976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005238906A Pending JP2006331380A (ja) 2005-04-25 2005-08-19 パーソナルコンピュータの起動装置及び方法

Country Status (1)

Country Link
JP (1) JP2006331380A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008186220A (ja) * 2007-01-30 2008-08-14 Oyo Denshi:Kk リムーバブルメモリユニット
WO2011145199A1 (ja) * 2010-05-20 2011-11-24 Suginaka Junko 外部ブートデバイス、外部ブート方法、情報処理装置及びネットワーク通信システム
WO2014097658A1 (ja) * 2012-12-21 2014-06-26 株式会社 東芝 設定方法、プログラム、および情報処理装置
US9727731B2 (en) 2012-12-21 2017-08-08 Kabushiki Kaisha Toshiba Setting method, program, and information processing apparatus

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008186220A (ja) * 2007-01-30 2008-08-14 Oyo Denshi:Kk リムーバブルメモリユニット
WO2011145199A1 (ja) * 2010-05-20 2011-11-24 Suginaka Junko 外部ブートデバイス、外部ブート方法、情報処理装置及びネットワーク通信システム
CN102906698A (zh) * 2010-05-20 2013-01-30 杉中顺子 外部启动设备、外部启动方法、信息处理装置及网络通信系统
WO2014097658A1 (ja) * 2012-12-21 2014-06-26 株式会社 東芝 設定方法、プログラム、および情報処理装置
JP2014123295A (ja) * 2012-12-21 2014-07-03 Toshiba Corp 設定方法、プログラム、および情報処理装置
US9727731B2 (en) 2012-12-21 2017-08-08 Kabushiki Kaisha Toshiba Setting method, program, and information processing apparatus

Similar Documents

Publication Publication Date Title
US9384094B2 (en) Method and system for instant restore of system volume from a backup image
US9329943B2 (en) Methods and systems for instant restore of system volume
JP2006526831A (ja) 不揮発性メモリからのブート
TW200805159A (en) Method and apparatus for fast boot of an operating system
US11275591B2 (en) Data storage device and method for maintaining normal boot operation of data storage device
JP2004145886A (ja) 大容量記憶デバイスから実行するファームウェアの信頼性およびセキュリティ性の高い更新および復旧
US20080098381A1 (en) Systems and methods for firmware update in a data processing device
US20090172467A1 (en) Information processing apparatus
US20080114923A1 (en) Apparatus and method for controlling operation processing in nonvolatile memory
US20030145191A1 (en) Computer system and method of controlling the same
CN105786545B (zh) 基于异构混合内存的断点恢复方法和系统
US20040181659A1 (en) Mechanism for intuitively invoking one or more auxiliary programs during a computer booting process
TW201102925A (en) Computer system and booting method
JP4810172B2 (ja) 制御装置及びバージョンアップ方法並びにプログラム
TW202223628A (zh) 資料儲存裝置及維持資料儲存裝置正常開機的方法
CN111522690A (zh) 数据储存装置及维持数据储存装置正常开机运作的方法
JP2006331380A (ja) パーソナルコンピュータの起動装置及び方法
JP2005258642A (ja) 組込型情報処理装置
JP2004062663A (ja) ディスク記憶装置において実行されるプログラムを書き換えるための方法及び装置
JP4937862B2 (ja) パーソナルコンピュータのデータ管理システム
JP4597032B2 (ja) コンピュータシステム、それにおける基本プログラムの起動方法、及びローダプログラム
JP3498028B2 (ja) ブートプログラム書き換えシステム
JP2002082808A (ja) プログラム制御方法
JP2006243810A (ja) マイクロコンピュータシステム
TW200945202A (en) Computer system and starting method thereof