JP2004334486A - ブートコードを用いた起動システム、及び起動方法 - Google Patents

ブートコードを用いた起動システム、及び起動方法 Download PDF

Info

Publication number
JP2004334486A
JP2004334486A JP2003128957A JP2003128957A JP2004334486A JP 2004334486 A JP2004334486 A JP 2004334486A JP 2003128957 A JP2003128957 A JP 2003128957A JP 2003128957 A JP2003128957 A JP 2003128957A JP 2004334486 A JP2004334486 A JP 2004334486A
Authority
JP
Japan
Prior art keywords
boot code
buffer
external memory
boot
stored
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
JP2003128957A
Other languages
English (en)
Inventor
Norio Fujita
藤田 典生
Masahiro Murakami
昌弘 村上
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2003128957A priority Critical patent/JP2004334486A/ja
Priority to US10/841,902 priority patent/US7237105B2/en
Publication of JP2004334486A publication Critical patent/JP2004334486A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】本発明は、ブートコードが格納されるROMを削除することを第1の目的とし、更に、ROMを削除することによるコスト削減効果を最大限に引き出すことにある。
【解決手段】本発明に係るブートコードを用いた起動システム10は、ブートコードが格納された外部メモリ12と、外部メモリ12に接続され、外部メモリ12から転送されたブートコードを蓄積するバッファ14と、外部メモリ12からバッファ14にブートコードの転送を指示するDMAコントローラ18と、バッファ14に接続され、バッファ14に蓄積されたブートコードをCPU20にマッピングするマッピング回路22とを含んで構成される。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、ブートコードが格納されるべきROMを設けずに、ブート作業を行うブートコードを用いたPC等のシステムの起動システム、及び起動方法に関する。
【0002】
【従来の技術】
コンピュータやゲーム機等のシステムにおいては、電源投入時に実行されるソフトウエア(以下ブートコードという)が格納されているROM(Read Only Memory)が実装されている。このROMはバス幅が中央演算装置(以下、CPU:Central Processing Unitと略す)が本来持っているバス幅より狭く、アクセス速度も遅い。よって、多くのシステムにおいては、ブートコードを高速アクセスが可能なRAM(Random Access Memory)上に転送してから実行している。
【0003】
詳しくは、図3で示すように、電源投入直後にCPU20は、マザーボードに実装されているフラッシュROM26のアドレスにジャンプしてフラッシュROM26の内容を実行する。そして、ブートコードをフラッシュROM26からメインメモリ24に転送し、メインメモリ24上のブートコードをCPU20が実行する。このブートコードを実行することで、各種のコントローラ、二次記憶装置(フロッピー(登録商標)ディスクドライブ、HDD、CD−ROMドライブ等)等の初期化作業、及びオペレーティングシステム(Operating System)のメインメモリへの転送が行われる。このように、電源を切断しても内部データを保存する機能を有するフラッシュROM26は、システムを起動させるための必須の構成要素である。
【0004】
ところで、製品のコストダウンを図るためには、部品点数を減らす手法を用いることが知られている。コンピュータやゲーム機等のシステムにおいても、この手法が用いられているが、ROM26は上述のとおり必須の構成要素であるため、ROM26を削除することは検討されていなかった。そこでこのことに着目し、ブートコードが格納されるROM26を削除することにより、製品の低コスト化を図ることを目的とした発明が出願されている(特許文献1、特許文献2参照)。
【0005】
【特許文献1】特開平11−143718号公報
【特許文献2】特開2000−112762号公報
【0006】
【発明が解決しようとする課題】
特許文献1の発明においては、BIOS(本発明におけるブートコードと同義)の格納専用フラッシュROMを使用せず、小型コンピュータの装置構成を簡単化し、コストの削減を図っている。BIOSは、HDD(Hard Disk Drive)固定記憶装置の所定の領域に格納され、HDDコントローラが、HDDに格納されているBIOSをメモリコントローラの制御下でメモリ上にマッピングしている。
【0007】
この特許文献1の発明においては、HDDに格納されたBIOSをメモリコントローラの制御の下でRAMに転送した後に、RAM上でBIOSを実行している。つまり、メモリコントローラにはBIOSの転送のためのプログラムが格納されたメモリと演算装置が設けられている。これはメモリコントローラに通常の処理以外の処理を行わせることになる。よって、高い処理能力のメモリコントローラが必要となることから、ROMを削除することによりコストの削減を図ったとしても、メモリコントローラのコストが増すことになる。ゆえに、ROMを削除する効果が薄れてしまう。
【0008】
特許文献2の発明においては、磁気ディスク装置内の専用の記憶領域にシステムBIOSを格納するとともに、このシステムBIOSをシステム起動時に読み出して起動する機構を設けることにより、システムBIOSを格納するためのフラッシュROMを削除している。
【0009】
この特許文献2の発明においては、ハードディスク装置の内部に、システム起動時にBIOSを読み出して起動する機構であるマイコンを設けている。これも上述の特許文献1の発明と同様に、ROMを削除することによりコストの削減を図ったとしても、マイコンを設けることによるコストが増すことになる。ゆえに、ROMを削除する効果が薄れてしまう。
【0010】
本発明の目的は、ブートコードが格納されるROMを削除することを第1の目的とし、更に、ROMを削除することによるコスト削減効果を最大限に引き出すことにある。
【0011】
【課題を解決するための手段】
本発明に係るブートコードを用いた起動システムは、ブートコードが格納された外部メモリと、前記外部メモリに接続され、該外部メモリから転送される前記ブートコードを蓄積するバッファと、前記外部メモリから前記バッファに前記ブートコードの転送を指示するDMAコントローラと、前記バッファに接続され、該バッファに蓄積された前記ブートコードを中央演算装置にマッピングするマッピング回路とを備える。
【0012】
更に、本発明に係るブートコードを用いた起動方法は、電源が投入され、又はリセット命令が発せられて、電源電圧及びシステムクロックが安定した段階で、システムの初期化を開始するステップと、DMAコントローラが、外部メモリからバッファにブートコードの転送を指示するステップと、外部メモリ制御装置が、前記DMAコントローラの指示を受けて、外部メモリに格納されている前記ブートコードを転送し、前記バッファに蓄積するステップと、中央演算装置が前記ブートコードを読みに来たならば、マッピング回路が前記バッファに蓄積されている前記ブートコードの有無を判断するステップと、前記バッファに前記ブートコードが存在する場合には、該ブートコードを前記中央演算装置が実行するステップと、前記バッファに前記ブートコードが存在しない場合には、前記外部メモリ制御装置が、前記DMAコントローラの指示を受けて、前記外部メモリから前記バッファに該ブートコードを転送し、該ブートコードを前記中央演算装置が実行するステップとを備えるものである。
【0013】
【発明の実施の形態】
本発明の実施の形態に係るブートコードを用いた起動システム10を図面に基づき説明する。以下で、従来例と重複する構成要素については、同符号を付してその詳細な図示又は説明を省略する。
【0014】
本発明に係るブートコードを用いた起動システム10は、ブートコードが格納された外部メモリ12と、外部メモリ12に接続され、外部メモリ12から転送されるブートコードを蓄積するバッファ14と、外部メモリ12からバッファ14にブートコードの転送を指示するDMAコントローラ18と、外部メモリ12とバッファ14との間に設けられ、外部メモリ12を制御する外部メモリ制御装置16と、バッファ14に接続され、バッファ14に蓄積されたブートコードをCPU20にマッピングするマッピング回路22と、CPU20によるランダムアクセスが可能であり、バッファ14を介してオペレーティングシステムが転送されるメインメモリ24とを含んで構成される。
【0015】
本発明は、ブートコートが格納されるべきROMを削除するという目的を達成するために、ブートコードを外部メモリ12に格納するという構成を採用している。更に、ROMを削除することによるコスト削減効果を最大限に引き出すという目的を達成するために、マッピング回路22をバッファ14に接続し、DMAコントローラ18が外部メモリ制御装置16に発するコマンドを追加し、外部メモリ制御装置16がブートコードの転送を行う構成を採用している。
【0016】
外部メモリ12は、例えばマザーボードに設けられたI/Oポートを介して接続されたハードディスクが用いられる。この外部メモリ12の所定領域に、システムを起動させるためのブートコードが格納されている。この外部メモリ12は、フロッピー(登録商標)ディスク、半導体ディスク(NAND型FLASHに代表される不揮発性のメモリ等)を用いることも可能である。
【0017】
バッファ14とは、DMA(Direct Memory Access)転送を行うデバイスを構成するメモリのことを示す。DMA転送とは、I/Oポートに接続された外部メモリ12からデータを、CPU20を介さずに後述するメインメモリ24に直接転送する機能を示す。このバッファ14は、通常ならば、CPU20を介さずにFIFO(First In First Out)でデータをメインメモリ24に転送している。本発明は、このバッファ14を、CPU20がランダムアクセス可能なメモリとして使用するところに特徴がある。
【0018】
DMAコントローラ18は、通常であるならばDMA転送を制御する機能を果たす。本発明においては、この通常の機能に加え、外部メモリ12の所定領域に格納されているブートコードを、バッファ14に転送するコマンドを外部メモリ制御装置16に発する機能を有する。
【0019】
また、DMAコントローラ18は、CPU20がバッファ14でブートコードを実行している間は、通常のDMAの動作を行わないよう制御する機能を有する。これにより、CPU20がバッファ14においてブートコードを実行している間は、バッファ14はCPU20によるランダムアクセス可能なメモリとして機能する。
【0020】
外部メモリ制御装置16は、DMAコントローラ18の指示を受けて、外部メモリ12に格納されているブートコードをバッファ14に転送するシーケンス回路により構成されている。このシーケンス回路により、外部メモリ12に格納されているブートコードが、決められた順番で次々とバッファ14に蓄積される。このシーケンス回路は論理回路の組み合わせで構成されている。
【0021】
CPU20はシステム全体を制御する機能を有する。本発明においては、バッファ14に転送されたブートコードをCPU20が実行することにより、各種のコントローラを初期化し、ハードウエアコンポーネント(例えば、メモリ、キーボード、ビデオボード、ディスクドライブ等)を認識して初期化する作業等が行われる。
【0022】
マッピング回路22は、バッファ14に蓄積されたブートコードをCPU20にマッピングする役割を果たす。バッファ14は、本来であるならDMA転送におけるFIFOに用いられるメモリ領域である。FIFO時に使用されるカウンターを用いないことにより、FIFOに用いられるメモリ領域をCPU20がランダムアクセス可能なメモリとして使用することができる。このマッピング回路22は論理回路の組み合わせで構成されている。このマッピング回路22は、バッファ14と同じチップ内に設けることもできる。このマッピング回路22により、CPU20はバッファ14に蓄積されているブートコードをランダムアクセスにより実行することができる。
【0023】
このマッピング回路22を設けることにより、CPU20がブートコードを実行している間のみ、CPU20がバッファ14をランダムアクセス可能なメモリとして使用することができる。ブートコードの実行が終了した後には、CPU20の実行プログラムがオペレーティングシステムに移行することにより、バッファ14は、DMA転送用のメモリとして使用されることになる。
【0024】
マッピング回路22は、論理回路の組み合わせで構成されることによりキャッシュコントロール機能を呈することができる。このキャッシュコントロール機能は、ソフトウエアにより行われるものではなく、組み合わされた論理回路であるハードウエアにより実現されている。バッファ14にCPU20が実行すべきブートコードが存在したならば、CPU20がそのブートコードをバッファ14で実行している。もし、バッファ14にCPU20が実行すべきブートコードが存在しない場合には、DMAコントローラ18が外部メモリ12にブートコードを読みに行き、外部メモリ制御装置16が外部メモリ12に格納されているブートコードをバッファ14に転送し、CPU20がブートコードを実行している。このブートコードの有無の確認をマッピング回路22のハードウエアにて行っている。
【0025】
このマッピング回路22がキャッシュコントロール機能を呈することにより、バッファ14の記憶容量がブートコード全体のデータ量よりも少ない場合であっても、バッファ14においてブートコードを実行することができる。以下で理由を説明する。ブートコードは複数のコードにより構成されている。例えば、各種のコントローラを初期化するコードやオペレーティングシステムを転送するためのコード等である。本発明では、バッファ14の記憶容量は、ブートコードを構成する複数のコードにおける各々のデータ量に応じて設定されている。これは、バッファ14の記憶容量が、すべてのコードの実行を確保できる程度の記憶容量に設定されていることを示す。
【0026】
バッファ14にCPU20が読むべきブートコードが存在していれば、CPU20はそのブートコードを実行することができる。CPU20が読むべきブートコードが存在しない場合には、DMAコントローラ18が外部メモリ制御装置16にブートコードの転送を指示し、CPU20がブートコードを実行している。バッファ14の記憶容量が、ブートコードを実行することができる適度な大きさの記憶容量であるので、CPU20がバッファ14ですべてのブートコードを実行することができる。
【0027】
また、本発明におけるブートコードを用いた起動システム10では、マッピング回路22をバッファ14とCPU20との間に設けており、マッピング回路22をメインメモリ24とCPU20との間に設けていない。その理由は、取り替え、増設が可能なメインメモリ24に、論理回路の組み合わせで形成されたマッピング回路22を接続するためには、メインメモリ14の設定が複雑になり、マッピング回路22が大きくなる。マッピング回路22が複雑で大きなものとなると、ROMを削除することによるコスト削減効果が薄れてしまうからである。
【0028】
メインメモリ24は、ランダムアクセスが可能なメモリで構成されている。このメインメモリ24はバスに接続されることで、CPU20、バッファ14等と接続されている。このメインメモリ24には、外部メモリ12に格納されているオペレーティングシステムが、バッファ14を介して格納される。
【0029】
本発明におけるブートコードを用いた起動システム10では、外部メモリ制御装置16に設けられたシーケンス回路によって、外部メモリ12に格納されているブートコードをバッファ14に転送している。このシーケンス回路は論理回路の組み合わせで形成されており、特別なソフトウエアにより転送を行うものではない。また、マッピング回路22も論理回路の組み合わせで形成されており、特別なソフトウエアにより転送を行うものではない。よって、ソフトウエアを格納するメモリ等が必要ないことから、ROMを削除することによる効果を最大限に引き出すことができる。
【0030】
本発明に係るブートコードを用いた起動方法は、電源が投入され、又はリセット命令が発せられて、電源電圧及びシステムクロックが安定した段階で、システムの初期化を開始するステップ(ステップ1)と、DMAコントローラ18が、外部メモリ12からバッファ14にブートコードの転送を指示するステップ(ステップ2)と、外部メモリ制御装置16が、外部メモリ12に格納されているブートコードを転送し、バッファ14に蓄積するステップ(ステップ3)と、CPU20がブートコードを読みに来たならば、マッピング回路22がバッファ14に蓄積されているブートコードの有無を判断するステップ(ステップ4)と、バッファ14にブートコードが存在する場合には、ブートコードをCPU20が実行するステップ(ステップ5)と、バッファ14にブートコードが存在しない場合には、外部メモリ制御装置16が、DMAコントローラ18の指示を受けて、外部メモリ12からバッファ14にブートコードを転送し、ブートコードをCPU20が実行するステップ(ステップ6)と、オペレーティングシステムを外部メモリ12から、バッファ14を介してメインメモリ24に転送するステップ(ステップ7)とを含んで構成される。
【0031】
ステップ1においては、コンピュータ等のシステムにおいて、電源が投入されるか、又はリセットボタンを押すことによりリセット命令が発せられたならば、マザーボードに供給される電源電圧、及びシステムクロック信号が安定した後に、システムの初期化を開始している。これにより、マザーボードに搭載された各種コントローラの初期化や、ハードウエアコンポーネントの認識、初期化等が開始される。
【0032】
ステップ2においては、システムの初期化が開始されたならば、DMAコントローラ18が外部メモリ12に格納されているブートコードを、バッファ14に転送するコマンドを外部メモリ制御装置16に発している。例えばブートコードは、IPL(Initial Program Loader)コードとPOST(Power On Self Test)コードにより構成されている。IPLコードは、主に転送を目的としたコードであり、オペレーティングシステムを転送するコードにより構成されている。POSTコードはマザーボードに接続されたハードウエアコンポーネント(例えば、メモリ、キーボード、ビデオボード、ディスクドライブ等)を検出して、認識し、各種コントローラの初期化等を実行するコードである。POSTコードが実行された後に、IPLコードが実行されるように、外部メモリ12にブートコードが格納されている。DMAコントローラ18が外部メモリ制御装置16にコマンドを発行することにより、外部メモリ12に格納されているブートコードが順番にバッファ14に転送される。
【0033】
ステップ3においては、外部メモリ12に格納されているブートコードを、外部メモリ制御回路16を用いてバッファ14に蓄積している。言い換えると、外部メモリ12に格納されているブートコードの内、POSTコードとIPLコードがシーケンス回路を用いた転送によりバッファ14に順番に転送され、蓄積される。ここでいう、シーケンス回路を用いた転送とは、ソフトウエアを用いず、組み合わされた論理回路によって外部メモリ12からバッファ14に転送することをいう。
【0034】
ステップ4においては、ブートコードがバッファ14に蓄積され始めたならば、CPU20がブートコードを実行するため、マッピング回路22を介してバッファ14を読みに行く。論理回路の組み合わせで構成されているマッピング回路22は、CPU20が読むべきブートコードがバッファ14に存在しているかの有無を判断する。
【0035】
ステップ5においては、ステップ4における判断で、CPU20が読むべきブートコードがバッファ14に存在したならば、CPU20は、そのブートコードをバッファ14上で実行する。そのブートコードがPOSTコードであれば、何らかのデバイスの初期化等が行われる。
【0036】
ステップ6においては、ステップ4における判断で、CPU20が読むべきブートコードがバッファ14に存在しない場合には、DMAコントローラ18は、外部メモリ12に読むべきブートコードを読みに行く。そして、外部メモリ制御装置16が、その読むべきブートコードを外部メモリ12からバッファ14に転送し、CPU20は読むべきブートコードをバッファ14において実行する。読むべきブートコードがPOSTコードであれば、何らかのデバイスの初期化等が行われる。
【0037】
ステップ7においては、ステップ5、又はステップ6においてハードウエアコンポーネントの初期化が終了後に、バッファ14に蓄積されたIPLコードが、オペレーティングシステムをメインメモリ24に転送している。つまり、CPU20がバッファ14に転送されたブートコードのIPLコードを実行することにより、外部メモリ12に格納されているオペレーティングシステムが、メインメモリ24に転送されることになる。
【0038】
メインメモリ24にオペレーティングシステムが転送されると、CPU20は、オペレーティングシステムの実行を開始する。これにより、バッファ14が初期の機能にセットされ、バッファ14は、FIFOによるDMA転送に用いられることになる。
【0039】
ステップ1からステップ7を実行することにより、外部メモリ12に格納されているブートコードがバッファ14で実行され、CPU20がオペレーティングシステムを実行するまでのブート作業が行われる。よって、ブートコードが格納されているROMを削除したとしても、若干の回路追加を行うだけで、ブートコードを実行し、システムを起動することができる。
【0040】
本発明においては、ブートコードをバッファ14に転送して、CPU20がバッファ14でブートコードを実行している。これは、本来、システムが起動するまで使用されないDMA転送用のバッファ14を、システムが起動する前にCPU20の実行領域として使用することを意味する。これにより、ROM26を削除したとしても、追加する回路を少なくすることができる。
【0041】
ブートコードが格納されているROMを削除したとしても、外部メモリ12にブートコードを格納し、DMA転送用のバッファ14をランダムアクセス可能なメモリとして使用することにより、CPU20がバッファ14を実行領域として使用してブート作業を行うことができる。
【0042】
尚、本発明はその趣旨を逸脱しない範囲で当業者の知識に基づき種々なる改良、修正、変形を加えた態様で実施できるものである。
【0043】
【発明の効果】
本発明に係るブートコードを用いた起動システムによれば、システムを起動させるためのブートコードを外部メモリに格納することにより、ブートコードを格納すべきROMを削除することができる。
【0044】
更に、ブートコードを格納すべきROMを削除することに加え、マッピング回路をバッファに接続し、DMAコントローラが発するコマンドを追加し、外部メモリ制御装置によりブートコードを転送する構成を採用することで、ROMを削除することによるコスト削減効果を最大限に引き出すことができる。
【図面の簡単な説明】
【図1】本発明におけるブートコードを用いた起動システムの構成図である。
【図2】本発明におけるブートコードを用いた起動方法のフロー図である。
【図3】従来のブートコードを用いた起動システムの構成図である。
【符号の説明】
10:起動システム
12:外部メモリ
14:バッファ
16:外部メモリ制御装置
18:DMAコントローラ
20:CPU
22:マッピング回路
24:メインメモリ
26:ROM

Claims (7)

  1. ブートコードが格納された外部メモリと、
    前記外部メモリに接続され、該外部メモリから転送される前記ブートコードを蓄積するバッファと、
    前記外部メモリから前記バッファに、前記ブートコードの転送を指示するDMAコントローラと、
    前記バッファに接続され、該バッファに蓄積された前記ブートコードを中央演算装置にマッピングするマッピング回路と、
    を含む、ブートコードを用いた起動システム。
  2. ブートコードが格納された外部メモリと、
    前記外部メモリに接続され、該外部メモリから転送される前記ブートコードを蓄積するバッファと、
    前記外部メモリから前記バッファに、前記ブートコードの転送を指示するDMAコントローラと、
    前記外部メモリと前記バッファとの間に設けられ、前記DMAコントローラからの指示を受けて、該外部メモリから該バッファに前記ブートコードを転送する外部メモリ制御装置と、
    前記バッファに接続され、該バッファに蓄積された前記ブートコードを中央演算装置にマッピングするマッピング回路と、
    前記中央演算装置によるランダムアクセスが可能であり、前記外部メモリから前記バッファを介して、オペレーティングシステムが転送されるメインメモリと、
    を含む、ブートコードを用いた起動システム。
  3. 前記バッファのデータ蓄積容量が、前記ブートコードのデータ量に応じて設定されることを含む、請求項1又は請求項2に記載のブートコードを用いた起動システム。
  4. 前記マッピング回路が、論理回路の組み合わせで形成される構成を含む、請求項1又は請求項2に記載のブートコードを用いた起動システム。
  5. 前記バッファ、前記DMAコントローラ、前記マッピング回路が1個のチップに搭載される構成を含む、請求項4に記載のブートコードを用いた起動システム。
  6. 電源が投入され、又はリセット命令が発せられて、電源電圧及びシステムクロックが安定した段階で、システムの初期化を開始するステップと、
    DMAコントローラが、外部メモリからバッファにブートコードの転送を指示するステップと、
    外部メモリ制御装置が、前記DMAコントローラの指示を受けて、前記外部メモリに格納されている前記ブートコードを転送し、前記バッファに蓄積するステップと、
    中央演算装置が前記ブートコードを読みに来たならば、マッピング回路が前記バッファに蓄積されている前記ブートコードの有無を判断するステップと、
    前記バッファに前記ブートコードが存在する場合には、該ブートコードを前記中央演算装置が実行するステップと、
    前記バッファに前記ブートコードが存在しない場合には、前記外部メモリ制御装置が、前記DMAコントローラの指示を受けて、前記外部メモリから前記バッファに該ブートコードを転送し、該ブートコードを前記中央演算装置が実行するステップと、
    を含む、ブートコードを用いた起動方法。
  7. 電源が投入され、又はリセット命令が発せられて、電源電圧及びシステムクロックが安定した段階で、システムの初期化を開始するステップと、
    DMAコントローラが、外部メモリからバッファにブートコードの転送を指示するステップと、
    外部メモリ制御装置が、前記DMAコントローラの指示を受けて、前記外部メモリに格納されている前記ブートコードを転送し、前記バッファに蓄積するステップと、
    中央演算装置が前記ブートコードを読みに来たならば、マッピング回路が前記バッファに蓄積されている前記ブートコードの有無を判断するステップと、
    前記バッファに前記ブートコードが存在する場合には、該ブートコードを前記中央演算装置が実行するステップと、
    前記バッファに前記ブートコードが存在しない場合には、前記外部メモリ制御装置が、前記DMAコントローラの指示を受けて、前記外部メモリから前記バッファに該ブートコードを転送し、該ブートコードを前記中央演算装置が実行するステップと、
    オペレーティングシステムを前記外部メモリから、前記バッファを介してメインメモリに転送するステップと、
    を含む、ブートコードを用いた起動方法。
JP2003128957A 2003-05-07 2003-05-07 ブートコードを用いた起動システム、及び起動方法 Pending JP2004334486A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003128957A JP2004334486A (ja) 2003-05-07 2003-05-07 ブートコードを用いた起動システム、及び起動方法
US10/841,902 US7237105B2 (en) 2003-05-07 2004-05-07 Startup system and method using boot code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003128957A JP2004334486A (ja) 2003-05-07 2003-05-07 ブートコードを用いた起動システム、及び起動方法

Publications (1)

Publication Number Publication Date
JP2004334486A true JP2004334486A (ja) 2004-11-25

Family

ID=33487071

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003128957A Pending JP2004334486A (ja) 2003-05-07 2003-05-07 ブートコードを用いた起動システム、及び起動方法

Country Status (2)

Country Link
US (1) US7237105B2 (ja)
JP (1) JP2004334486A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007148750A (ja) * 2005-11-28 2007-06-14 Megachips Lsi Solutions Inc コンピュータ装置
KR101211503B1 (ko) 2007-10-02 2012-12-12 삼성전자주식회사 부팅 시스템, 그 시스템을 구비한 화상형성장치 및 그제어방법

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060075395A1 (en) * 2004-10-01 2006-04-06 Lee Charles C Flash card system
US20080256352A1 (en) * 2000-01-06 2008-10-16 Super Talent Electronics, Inc. Methods and systems of booting of an intelligent non-volatile memory microcontroller from various sources
US7436954B2 (en) * 2001-02-28 2008-10-14 Cavium Networks, Inc. Security system with an intelligent DMA controller
KR100708128B1 (ko) * 2005-04-30 2007-04-17 삼성전자주식회사 낸드 플래시 메모리 제어 장치 및 방법
US7971050B2 (en) * 2007-12-13 2011-06-28 Dell Products, Lp Methods of using bios information when booting information handling systems and machine-executable code for carrying out the methods
CN102160035A (zh) 2008-09-18 2011-08-17 马维尔国际贸易有限公司 至少部分地在引导期间向存储器预加载应用
US8245024B2 (en) 2009-08-21 2012-08-14 Micron Technology, Inc. Booting in systems having devices coupled in a chained configuration
US8429391B2 (en) 2010-04-16 2013-04-23 Micron Technology, Inc. Boot partitions in memory devices and systems
JP5459270B2 (ja) * 2011-06-22 2014-04-02 コニカミノルタ株式会社 情報処理装置、情報処理装置の起動方法および起動プログラム
GB2493340A (en) * 2011-07-28 2013-02-06 St Microelectronics Res & Dev Address mapping of boot transactions between dies in a system in package
US9575768B1 (en) * 2013-01-08 2017-02-21 Marvell International Ltd. Loading boot code from multiple memories
KR20140099016A (ko) * 2013-02-01 2014-08-11 삼성전자주식회사 전자장치 및 그 부팅방법
KR20140100008A (ko) * 2013-02-05 2014-08-14 삼성전자주식회사 휘발성 메모리 장치의 구동 방법 및 휘발성 메모리 장치의 테스트 방법
US9558012B2 (en) * 2013-02-21 2017-01-31 Applied Micro Circuits Corporation System boot with external media
EP3028145A1 (en) 2013-07-31 2016-06-08 Marvell World Trade Ltd. Parallelizing boot operations
RU2579942C2 (ru) * 2014-09-01 2016-04-10 Открытое Акционерное Общество "Байкал Электроникс" Устройство прямого отображения адресов данных, располагающихся во внешнем последовательном пзу, в адресное пространство микропроцессорного ядра, компьютерная система и способ передачи данных
RU2579949C2 (ru) * 2014-09-30 2016-04-10 Открытое Акционерное Общество "Байкал Электроникс" Компьютерная система
JP6373888B2 (ja) * 2016-03-01 2018-08-15 株式会社東芝 情報処理装置及び制御方法
US10942749B2 (en) * 2018-05-04 2021-03-09 Dell Products L.P. Processor memory mapped boot system
US10884763B2 (en) * 2018-08-24 2021-01-05 International Business Machines Corporation Loading new code in the initial program load path to reduce system restarts
WO2022176358A1 (ja) * 2021-02-16 2022-08-25 パナソニックIpマネジメント株式会社 ホスト装置、スレーブ装置およびデータ転送システム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6367633A (ja) * 1986-09-09 1988-03-26 Fujitsu Ltd マイクロプログラムロ−デイング方式
JPH02128269A (ja) * 1988-11-08 1990-05-16 Ricoh Co Ltd プログラムイニシャルロード方式
US5379431A (en) * 1993-12-21 1995-01-03 Taligent, Inc. Boot framework architecture for dynamic staged initial program load
US5615392A (en) * 1995-05-05 1997-03-25 Apple Computer, Inc. Method and apparatus for consolidated buffer handling for computer device input/output
US6058474A (en) * 1997-01-24 2000-05-02 Texas Instruments Incorporated Method and apparatus for DMA boot loading a microprocessor without an internal ROM
JPH11143718A (ja) 1997-11-05 1999-05-28 Nec Corp Bios格納並びに制御方法
US6286097B1 (en) * 1998-08-06 2001-09-04 Via Technologies, Inc. Computer chipset for accessing a conventional read only memory (ROM)
JP2000112762A (ja) 1998-09-30 2000-04-21 Toshiba Corp コンピュータシステムおよびシステムの起動方法
JP3727485B2 (ja) * 1999-04-02 2005-12-14 シャープ株式会社 不揮発性メモリ内蔵マイクロコンピュータ
US6463530B1 (en) * 1999-06-10 2002-10-08 International Business Machines Corporation Method and apparatus for remotely booting a client computer from a network by emulating remote boot chips

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007148750A (ja) * 2005-11-28 2007-06-14 Megachips Lsi Solutions Inc コンピュータ装置
KR101211503B1 (ko) 2007-10-02 2012-12-12 삼성전자주식회사 부팅 시스템, 그 시스템을 구비한 화상형성장치 및 그제어방법

Also Published As

Publication number Publication date
US7237105B2 (en) 2007-06-26
US20040250057A1 (en) 2004-12-09

Similar Documents

Publication Publication Date Title
JP2004334486A (ja) ブートコードを用いた起動システム、及び起動方法
JP5268363B2 (ja) コンピュータマルチオペレーティングシステムの切換え方法
US5819087A (en) Flash ROM sharing between processor and microcontroller during booting and handling warm-booting events
US6158000A (en) Shared memory initialization method for system having multiple processor capability
US6112303A (en) Computer system with system ROM including serial-access PROM coupled to an auto-configuring memory controller and method of shadowing BIOS code from PROM
KR100469569B1 (ko) 비휘발성 메모리가 데이터 저장/처리 디바이스로서동작하면서 코드를 실행할 수 있게 하는 방법 및 시스템
TWI390410B (zh) 不須執行電力開啟自我測試之操作系統傳送及啟動
TW445416B (en) Upgrade card for a computer system and method of operating the same
JP2007206885A (ja) コンピュータシステム及びシステム起動方法
JP5860543B2 (ja) ブートデータのロード
EP1634168A1 (en) Booting from non-volatile memory
US20070005949A1 (en) Method for Booting a Computer System
US6775734B2 (en) Memory access using system management interrupt and associated computer system
JP2009080563A (ja) 仮想マシンモニタをモニタするコンピュータとその方法、および仮想マシンモニタモニタプログラム
JP2015156205A (ja) 情報処理装置およびその制御方法
JP5622429B2 (ja) マイクロコンピュータ
KR101620349B1 (ko) 부팅가능한 휘발성 메모리 장치와 그를 구비한 메모리 모듈 및 프로세싱 시스템, 및 그를 이용한 프로세싱 시스템 부팅 방법
JP5348813B2 (ja) ブートrom搭載ボード
CN112667544A (zh) 一种控制主板插槽使能的方法、装置、系统及介质
US20150317181A1 (en) Operating system switching method
JPH11282685A (ja) 情報処理装置
JP2004192051A (ja) 共用端子制御装置
WO2007049423A1 (ja) コンピュータシステム、及びそれにおける基本プログラムの起動方法
KR101022468B1 (ko) 비정상 종료된 시스템의 재부팅 시간을 단축할 수 있는임베디드 컴퓨터 시스템
JP2006127407A (ja) 半導体集積回路

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070927

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071113

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20071206