(57)【要約】【課題】車載機の電源が投入されてから初期画面が表示されるまでのシステム起動時間を短くできる「情報処理装置およびシステム起動方法」を提供する。【解決手段】メインＣＰＵ１が自身の初期化処理およびＯＳ起動処理を行っている間に、これと並行してサブマイコン２が自身の初期化処理、ＯＳ起動処理を行うとともに、ハードディスク３が自身の初期化処理を行い、サブマイコン２のＯＳ起動処理およびハードディスク３の初期化処理が完了した後に、サブマイコン２がハードディスク３からデータを取得して内蔵メモリに保持しておき、その後メインＣＰＵ１のＯＳ起動処理が完了した後に、メインＣＰＵ１がサブマイコン２のメモリにアクセスしてデータを取得することにより、メインＣＰＵ１がハードディスク３にアクセスすることなく、サブマイコン２のメモリから、先読みされているデータを高速に取得することができるようにする。【選択図】        図２
2008287317.tif 000002
【特許請求の範囲】
【請求項１】
ハードディスクと、第１の演算処理装置と、上記ハードディスクおよび上記第１の演算処理装置の間に接続された第２の演算処理装置とを備え、
上記第１の演算処理装置が自身の初期化処理およびＯＳ起動処理を行っている間に、これと並行して上記第２の演算処理装置が自身の初期化処理、ＯＳ起動処理および上記ハードディスクの初期化処理の指示を行い、
上記ハードディスクの初期化処理および上記第２の演算処理装置のＯＳ起動処理が完了した後に、上記第２の演算処理装置が上記ハードディスクにアクセスしてデータを取得し、当該取得したデータをメモリに保持しておき、その後上記第１の演算処理装置のＯＳ起動処理が完了した後に、上記第１の演算処理装置が上記メモリにアクセスしてデータを取得するようにしたことを特徴とする情報処理装置。
【請求項２】
上記第２の演算処理装置は、上記ハードディスクに対するアクセスの履歴情報を取得して不揮発性メモリに保存する履歴取得手段を備え、上記ハードディスクの初期化処理および上記第２の演算処理装置のＯＳ起動処理が完了したときに、上記不揮発性メモリに上記履歴情報が記憶されているか否かを判定し、上記履歴情報が記憶されている場合には当該履歴情報に従って上記ハードディスクにアクセスしてデータを取得することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
上記履歴情報は、データの読み出し開始位置を表す開始セクタ番号およびデータの読み出し数を表すセクタ数を含み、
上記第２の演算処理装置は、上記開始セクタ番号および上記セクタ数を読み出し要求信号として上記ハードディスクに通知し、上記セクタ数で表される１以上のセクタのデータを１回の読み出し要求信号の通知によって取得することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
ハードディスクと、第１の演算処理装置と、上記ハードディスクおよび上記第１の演算処理装置の間に接続された第２の演算処理装置とを備えたシステムの起動方法であって、
上記第１の演算処理装置において自身の初期化処理およびＯＳ起動処理を行う第１のステップと、
上記第１のステップと並行して上記第２の演算処理装置が自身の初期化処理、ＯＳ起動処理および上記ハードディスクの初期化処理の指示を行う第２のステップと、
上記第２の演算処理装置からの指示に従い上記ハードディスクが自身の初期化処理を行う第３のステップと、
上記ハードディスクの初期化処理および上記第２の演算処理装置のＯＳ起動処理が完了した後に、上記第２の演算処理装置が上記ハードディスクにアクセスしてデータを取得し、当該取得したデータをメモリに保持する第４のステップと、
上記第２の演算処理装置による上記ハードディスクへのアクセス開始後に、上記第１の演算処理装置のＯＳ起動処理が完了したときに、上記第１の演算処理装置が上記メモリにアクセスしてデータを取得する第５のステップと、
上記第５のステップで取得したデータを用いて上記第１の演算処理装置がディスプレイに起動時初期画面を表示する第６のステップとを有することを特徴とするシステム起動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびシステム起動方法に関し、特に、電源が投入されたときに内蔵のハードディスクから必要なプログラムやデータを読み出して処理する情報処理装置および、同装置に用いられるシステム起動方法に関するものである。
【背景技術】
【０００２】
近年の車載機は、比較的大容量のハードディスクを搭載し、オーディオ機能やナビゲーション機能など複数の機能を一体化したシステムにより構成するなど、マルチメディア化が進んでいる。この種の車載機では、オーディオ機能やナビゲーション機能などの各機能の実行に必要な各種プログラムおよび各種データがハードディスクに記録されている。また、車載機には、ハードディスクに記録されている各種プログラムや各種データを処理するためのＣＰＵが搭載されている。
【０００３】
図４は、車載機が備える従来の情報処理装置の構成を示す図である。図４に示すように、従来の情報処理装置では、ＣＰＵ１０１とハードディスク（ＨＤＤ）１０２とがＡＴＡＰＩ（AT Attachment Packet Interface）規格などのバスによって接続されている。ＣＰＵ１０１は、ハードディスク１０２から各種プログラムを読み出して実行し、当該プログラムの指示に従ってハードディスク１０２から各種データを読み出して処理することにより、オーディオ機能やナビゲーション機能に関する所要の処理を行う。
【０００４】
システム（車載機）の電源が投入されたときには、ＣＰＵ１０１は最初にハードディスク１０２を起動して動作可能な状態とし、その後ハードディスク１０２から各種プログラムや各種データを読み出して処理することにより、オーディオ機能やナビゲーション機能の初期画面をディスプレイに表示する。ところが、従来のシステムでは、様々な機能を搭載するがゆえにプログラム規模が大容量となり、それによるシステムの起動時間（電源を投入してから初期画面が表示されるまでの時間）の遅延が課題となってきている。
【０００５】
図５は、従来のシステム起動の流れを示す図である。図５において、システムの電源が投入されると、最初にＣＰＵ１０１の初期化処理が行われ、その後にＯＳ（オペレーションシステム）が起動される。このＯＳは、ハードディスク１０２とは異なるフラッシュメモリなどに格納されている。ＯＳの起動処理は、ＣＰＵ１０１がフラッシュメモリからＯＳを読み出すことによって行われる。
【０００６】
ＯＳの起動処理が行われている間、別のタスクにてハードディスク１０２の処理化処理が開始される。このハードディスク１０２の初期化処理は、ＣＰＵ１０１の処理とは別に、ハードディスク１０２自身によって行われる。すなわち、ＣＰＵ１０１からハードディスク１０２に対してリセットの指示が出されると、ハードディスク１０２は、ＣＰＵ１０１にて行われているＯＳの起動処理と並行して、ハードディスク１０２の初期化処理を実行する。
【０００７】
ハードディスク１０２の機種にもよるが、リセットがかけられてから初期化が完了するまでに、２〜３秒の時間を要する。ハードディスク１０２の処理化処理が完了し、その後ＣＰＵ１０１によるＯＳの起動処理も完了すると、次にＣＰＵ１０１は、ハードディスク１０２からアプリケーションプログラムおよび必要なデータの読み出しを開始する。そして、ハードディスク１０２から読み出したプログラムやデータを処理することにより、オーディオ機能やナビゲーション機能の初期画面をディスプレイに表示する。以上でシステムの起動処理が完了する。
【０００８】
以上のようなシステム起動の流れにおいて、ＣＰＵ１０１は様々な機能の実行を担当するために、最初に行われるＣＰＵ１０１自身の処理化処理に長い時間がかかる。また、ＯＳのプログラム規模も大きなものとなるので、ＯＳの起動処理にも長い時間がかかってしまう。そのため、ハードディスク１０２へのアクセスが可能となるまでに多くの時間を要していた。さらに、ハードディスク１０２へのアクセスが可能となった後も、ハードディスク１０２からアプリケーションプログラムやデータを読み出すのに長い時間がかかってしまう。これにより、システム起動が完了して初期画面が表示されるまでの時間が非常に長くなってしまうという問題があった。
【０００９】
なお、車載機のような組み込みシステムでは、動作するアプリケーションが固定であるという特徴を有している。この場合、システム起動におけるＣＰＵ１０１やハードディスク１０２の初期化処理は、殆どの場合同じ手順で行われる。この特徴を利用して、ＣＰＵ１０１からハードディスク１０２へのアクセスログを取り、次回以降の起動時には、この取得したログをもとにハードディスク１０２にアクセスすることにより、ハードディスク１０２へのアクセス時間を短縮することができる。
【００１０】
従来、これに類似の技術が提案されている（例えば、特許文献１参照）。この特許文献１に記載の発明では、起動時にハードディスクからの読み込み履歴をブート用のフラッシュメモリに保存し、次回以降の起動時には、ファイルシステムを経由せず、保存された履歴から直接プログラムを読み込むことで高速起動を行うようにしている。
【特許文献１】特開２００６−１５５３９１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記特許文献１に記載の従来技術では、ハードディスクへのアクセスログを利用することでハードディスクへアクセスするまでの時間を短縮することはできるものの、ハードディスクからアプリケーションプログラムやデータを読み出すこと自体に長い時間がかかってしまう問題は解消できない。
【００１２】
本発明は、このような問題を解決するために成されたものであり、車載機の電源が投入されてからＣＰＵやハードディスクの初期化処理等を経て初期画面がディスプレイに表示されるまでのシステム起動時間をできるだけ短くできるようにすることを目的とする。
【課題を解決するための手段】
【００１３】
上記した課題を解決するために、本発明では、第１の演算処理装置が自身の初期化処理およびＯＳ起動処理を行っている間に、これと並行して第２の演算処理装置が自身の初期化処理、ＯＳ起動処理およびハードディスクの初期化処理の指示を行い、ハードディスクの初期化処理および第２の演算処理装置のＯＳ起動処理が完了した後に、第２の演算処理装置がハードディスクにアクセスしてデータを取得し、当該取得したデータを第２の演算処理装置内のメモリに保持しておき、その後第１の演算処理装置のＯＳ起動処理が完了した後に、第１の演算処理装置が第２の演算処理装置のメモリにアクセスしてデータを取得するようにした。
【発明の効果】
【００１４】
上記のように構成した本発明によれば、第１の演算処理装置のＯＳ起動処理が完了してハードディスクへのアクセスが可能となるよりも前に、第２の演算処理装置がハードディスクにアクセスしてデータをメモリに読み出している。このため、第１の演算処理装置はそのＯＳ起動処理の完了後に、ハードディスクにアクセスすることなく、メモリにアクセスしてデータを取得することができる。ハードディスクに比べてメモリはデータの読み出しを高速に行うことができるので、第１の演算処理装置がハードディスクへのアクセス可能となった後にアプリケーションプログラムやデータを読み出すのに要する時間を短縮することができ、システム起動時間をできるだけ短くすることができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の一実施形態を図面に基づいて説明する。図１は、本実施形態による情報処理装置のハードウェア構成例を示すブロック図である。本実施形態の情報処理装置は、例えばオーディオ機能やナビゲーション機能などの複数の機能を一体化したシステムを搭載する車載機に適用される。
【００１６】
図１に示すように、本実施形態の情報処理装置は、メインＣＰＵ１（本発明の第１の演算処理装置に相当）、サブマイコン２（本発明の第２の演算処理装置に相当）、ハードディスク３、フラッシュメモリ４，５およびＬＣＤ（Liquid Crystal Display）等のディスプレイ６を備えて構成されている。
【００１７】
サブマイコン２は、メインＣＰＵ１とハードディスク３との間に接続されている。例えば、メインＣＰＵ１とサブマイコン２との間はＵＳＢ（Universal Serial Bus）により接続され、サブマイコン２とハードディスク３との間はＡＴＡＰＩ規格のバスによって接続されている。さらに、メインＣＰＵ１にはフラッシュメモリ４とディスプレイ６とが接続され、サブマイコン２にフラッシュメモリ５が接続されている。
【００１８】
第１のフラッシュメモリ４は、メインＣＰＵ１が実行する各種機能のアプリケーションプログラムの動作ベースとなるＯＳをあらかじめ記憶している。第２のフラッシュメモリ５は、サブマイコン２が実行する各種機能のアプリケーションプログラムの動作ベースとなるＯＳをあらかじめ記憶している。また、第２のフラッシュメモリ５は、本発明の不揮発性メモリに相当するものであり、サブマイコン２からハードディスク３へのアクセスに関する履歴情報を記憶する。
【００１９】
メインＣＰＵ１は本実施形態の情報処理装置が搭載される車載機の全体を制御するものであり、実行するアプリケーションプログラムのサイズも大きなものである。したがって、そのベースとなるＯＳもサイズが大きく、起動には比較的長い時間を要する。
【００２０】
これに対して、サブマイコン２は車載機にて実行される機能の一部を担当するものであり、これに必要なアプリケーションプログラムのサイズもＯＳのサイズも、メインＣＰＵ１のそれと比べて小さい。よって、サブマイコン２用のＯＳを起動するのに要する時間は、メインＣＰＵ１用のＯＳを起動するのに要する時間よりも短い。
【００２１】
ディスプレイ６は、メインＣＰＵ１がサブマイコン２を通じてハードディスク３から読み出したアプリケーションプログラムやデータの処理結果として、車載機が有するオーディオ機能やナビゲーション機能などの初期画面を表示する。例えばナビゲーション機能の初期画面は、自車位置周辺の地図やＵＩ（user interface）の画像を含む。
【００２２】
車載機の電源が投入されたときに、システム起動処理の一環として、メインＣＰＵ１は、自身の初期化処理およびメインＣＰＵ１用のＯＳ起動処理を行う。そのＯＳ起動処理が完了した後に、メインＣＰＵ１は、サブマイコン２によってハードディスク３から先読みされてサブマイコン２の内部メモリに保持されているアプリケーションプログラムやデータ（以下、特に分けて示さない限り、アプリケーションプログラムとデータをまとめて「データ」と称する）をメモリから取得する。そして、その取得したデータを用いて、オーディオ機能やナビゲーション機能などの初期画面をディスプレイ６に表示する。
【００２３】
サブマイコン２は、メインＣＰＵ１が自身の初期化処理およびＯＳ起動処理を行っている間に、これと並行してサブマイコン２自身の初期化処理、サブマイコン２用のＯＳ起動処理およびハードディスク３の初期化処理の指示を行う。この指示を受けたハードディスク３は、メインＣＰＵ１がＯＳ起動処理を行っている間に、これと並行してハードディスク３自身の初期化処理を行う。
【００２４】
サブマイコン２は、ハードディスク３の初期化処理およびサブマイコン２用のＯＳ起動処理が完了した後に、ハードディスク３にアクセスしてデータを取得する。そして、当該取得したデータをサブマイコン２の内蔵メモリに保持する。その後メインＣＰＵ１は、自身のＯＳ起動処理が完了した後に、サブマイコン２のメモリにアクセスしてデータを取得する。
【００２５】
サブマイコン２は、ハードディスク３にアクセスしてデータの読み出しを行った際に、ハードディスク３に対するアクセスの履歴情報を取得して第２のフラッシュメモリ５に保存する履歴取得手段を備えている。サブマイコン２は、ハードディスク３の初期化処理およびサブマイコン２自身のＯＳ起動処理が完了したときに、第２のフラッシュメモリ５に履歴情報が記憶されているか否かを判定し、履歴情報が記憶されている場合には、当該履歴情報に従ってハードディスク３にアクセスしてデータを取得する。
【００２６】
履歴取得手段は、例えば、車載機の電源がオンとなっている期間中に行われるアクセスの履歴を随時取得して保存する。この場合、サブマイコン２は、次回の起動時に、最後に記録された履歴情報（車載機の電源がオフとされる前の最後のアクセス履歴）を参照してハードディスク３へのアクセスを行う。また、履歴取得手段は、アクセスの履歴を随時取得するのではなく、車載機の電源をオフとすることが指示されたときに、サブマイコン２からハードディスク３への最後のアクセスに関する履歴情報を取得して保存するようにしてもよい。車載機の電源がオフとされる前の最後のアクセス履歴を保存し、次回の起動時にこれを参照してハードディスク３からデータを読み出すことにより、電源オフ時にディスプレイ６に表示されていた状態を、次回の起動時に再現することができる。
【００２７】
本実施形態において、履歴情報は、ハードディスク３上におけるデータの読み出し開始位置を表す開始セクタ番号、およびデータの読み出し数を表すセクタ数を含んでいる。サブマイコン２は、開始セクタ番号およびセクタ数を読み出し要求信号としてハードディスク３に通知し、当該セクタ数で表される１以上のセクタのデータを１回の読み出し要求信号の通知によって取得する。
【００２８】
以下に、上記のように構成した本実施形態による情報処理装置の動作、すなわち、システム起動方法の処理手順を説明する。図２は、本実施形態による情報処理装置の動作例を示すタイミングチャートである。図２において、車載機の電源が投入されると、メインＣＰＵ１は、自身の初期化処理を行い（ステップＳ１）、その処理化処理の完了後に、メインＣＰＵ１用のＯＳ起動処理を行う（ステップＳ２）。
【００２９】
また、車載機の電源が投入されたときに、サブマイコン２は、メインＣＰＵ１によるステップＳ１の初期化処理およびステップＳ２のＯＳ起動処理と並行して、サブマイコン２自身の初期化処理（ステップＳ１１）、サブマイコン２用のＯＳ起動処理（ステップＳ１２）およびハードディスクの初期化処理の指示（ステップＳ１３）を行う。
【００３０】
上述したように、メインＣＰＵ１が実行するアプリケーションプログラムやそのベースとなるＯＳはサイズが大きいのに対して、サブマイコン２が実行するアプリケーションプログラムやそのベースとなるＯＳはサイズが小さい。よって、ステップＳ１２におけるサブマイコン２用のＯＳ起動処理は、ステップＳ２におけるメインＣＰＵ１用のＯＳ起動処理よりも早く完了する。
【００３１】
ハードディスク３は、ステップＳ１３でサブマイコン２から通知された指示に従って、自身の初期化処理を行う（ステップＳ２１）。ハードディスク３の初期化処理には２〜３秒の時間を要するが、この初期化処理が完了したときも、メインＣＰＵ１におけるＯＳ起動処理は完了していない。サブマイコン２は、ハードディスク３から初期化処理完了の通知を受け（ステップＳ１４）、その後サブマイコン２用のＯＳ起動処理が完了すると、第２のフラッシュメモリ５に保持されている履歴情報を参照して（ステップＳ１５）、ハードディスク３のデータの読み出しを開始する（ステップＳ１６）。すなわち、サブマイコン２は、ハードディスク３にアクセスしてデータを取得し、当該取得したデータを内蔵メモリに保持する。
【００３２】
ステップＳ１６でサブマイコン２によるハードディスク３へのアクセスを開始した後に、メインＣＰＵ１のＯＳ起動処理が完了したときに、メインＣＰＵ１は、サブマイコン２の内蔵メモリにアクセスしてデータを取得する（ステップＳ３）。そして、メインＣＰＵ１は、このステップＳ３で取得したデータを処理することにより、ディスプレイ６に起動時初期画面を表示する（ステップＳ４）。以上で、システム起動処理が完了する。
【００３３】
図３は、ステップＳ１６におけるデータの読み出し処理、およびステップＳ３におけるデータの読み出し処理の詳細を示すタイミングチャートである。ステップＳ１６においてサブマイコン２がハードディスク３からデータを読み出すときには、第２のフラッシュメモリ５を参照して得た履歴情報（開始セクタ番号およびセクタ数）を読み出し要求信号としてハードディスク３に通知し、その要求に該当するデータをハードディスク３から取得する。
【００３４】
すなわち、サブマイコン２は、１セクタ毎に読み出し要求信号をハードディスク３に通知するのではなく、複数セクタ分をまとめた１つの読み出し要求信号をハードディスク３に通知することにより、当該セクタ数で表される１以上のセクタのデータを１回の読み出し要求信号の通知によって取得する。これにより、サブマイコン２とハードディスク３との間で１セクタ毎に通信を繰り返す必要がなく、アクセス効率を向上させることができる。
【００３５】
また、ステップＳ３においてメインＣＰＵ１がサブマイコン２からデータを読み出すときには、メインＣＰＵ１は、１セクタ毎に読み出し要求信号をサブマイコン２に通知し、その要求に該当するデータをサブマイコン２から１つずつ順次に取得する。この場合、メインＣＰＵ１とサブマイコン２との間で１セクタ毎に通信を繰り返す必要があるが、アクセス先はハードディスク３ではなくサブマイコン２の内蔵メモリである。内蔵メモリはハードディスク３に比べてデータの読み出しを高速に行えるので、メインＣＰＵ１がハードディスク３にアクセスしてデータを読み出す場合に比べてリード効率が良い。
【００３６】
以上詳しく説明したように、本実施形態によれば、メインＣＰＵ１のＯＳ起動処理が完了してハードディスク３へのアクセスが可能となるよりも前に、サブマイコン２がハードディスク３にアクセスしてデータをメモリに先読みしている。このため、メインＣＰＵ１はそのＯＳ起動処理の完了後に、ハードディスク３にアクセスすることなく、サブマイコン２のメモリにアクセスしてデータを取得することができる。ハードディスク３に比べてメモリはデータの読み出しを高速に行うことができるので、メインＣＰＵ１がハードディスク３へのアクセス可能となった後にデータを読み出すのに要する時間を短縮することができ、システム起動時間を短くすることができる。
【００３７】
なお、上記実施形態では、メインＣＰＵ１の他にサブマイコン２を利用する例について説明しているが、これに限定されない。例えば、メインＣＰＵ１と同程度の性能を有するＣＰＵをサブマイコン２の代わりに用いても良い。
【００３８】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその精神、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００３９】
【図１】本実施形態による情報処理装置のハードウェア構成例を示すブロック図である。
【図２】本実施形態による情報処理装置の動作例を示すタイミングチャートである。
【図３】図２のステップＳ１６におけるデータの読み出し処理、および図２のステップＳ３におけるデータの読み出し処理の詳細を示すタイミングチャートである。
【図４】車載機が備える従来の情報処理装置の構成を示す図である。
【図５】従来のシステム起動の流れを示す図である。
【符号の説明】
【００４０】
１  メインＣＰＵ
２  サブマイコン
３  ハードディスク
４，５  フラッシュメモリ
６  ディスプレイ
【図１】
2008287317.tif 000003
【図２】
2008287317.tif 000004
【図３】
2008287317.tif 000005
【図４】
2008287317.tif 000006
【図５】
2008287317.tif 000007