(57)【要約】【課題】  システムの起動時間を削減しつつ、ユーザに適した機能をシステム起動時に自動的に起動することができるシステム起動方法を提供することを課題とする。【解決手段】  システム起動時にシステム内のどのプログラムコンポーネントを起動するかを記載した起動リストを用意し、システム起動時にはその起動リストに従ってプログラムコンポーネントを起動する。システム稼動中に、起動リストを管理する起動リスト管理コンポーネントがプログラムコンポーネントの実行時間、実行回数などにより、該プログラムコンポーネントを起動リストから削除したり起動リストへ追加したりすることで、ユーザに適した起動リストを作成して前記課題を解決する。【選択図】  図１
2006323549.tif 000002
【特許請求の範囲】
【請求項１】
複数のプログラムコンポーネントからなるシステムの起動方法であって、
システム起動時に起動するプログラムコンポーネントを記述した起動リストを有し、
プログラムコンポーネントが実行されると実行時刻を保持するステップと、
前記実行時刻と現時刻を比較し、一定時間以上経っている場合に前記起動リストから該プログラムコンポーネントを削除する起動リスト削除ステップと、
前記起動リスト削除ステップを周期的に行うステップと、
システム起動時に前記起動リストに記載したプログラムコンポーネントを起動するステップと、を有することを特徴としたシステムの起動方法。
【請求項２】
初期の前記起動リストには、システム内の全てのプログラムコンポーネントを記載することを特徴とした請求項１に記載のシステムの起動方法。
【請求項３】
前記起動リストには、システム起動に必要なプログラムコンポーネントの記載を省いたことを特徴とした請求項１に記載のシステムの起動方法。
【請求項４】
前記起動リスト削除ステップに、該プログラムコンポーネントの実行回数が一定数以下である場合に前記起動リストから該プログラムコンポーネントを削除する処理を追加することを特徴とした請求項１に記載のシステムの起動方法。
【請求項５】
複数のプログラムコンポーネントからなるシステムの起動方法であって、
システム起動時に起動するプログラムコンポーネントを記述した起動リストを有し、
プログラムコンポーネントが実行されると実行時刻及び実行回数を保持するステップと、
前記実行時刻と現時刻との差が一定時間以内であり、かつ前記実行回数が一定数以上である場合に前記起動リストに該プログラムコンポーネントを追加する起動リスト追加ステップと、
前記起動リスト追加ステップを周期的に行うステップと、
システム起動時に前記起動リストに記載したプログラムコンポーネントを起動するステップと、を有することを特徴としたシステムの起動方法。
【請求項６】
初期の前記起動リストには、システム起動に必要なプログラムコンポーネントのみを記載することを特徴とした請求項５に記載のシステムの起動方法。
【請求項７】
前記起動リストには、システム起動に必要なプログラムコンポーネントの記載を省いたことを特徴とした請求項５に記載のシステムの起動方法。
【請求項８】
前記起動リスト追加ステップに、該プログラムコンポーネントの実行時間が一定時間以上である場合に前記起動リストに該プログラムコンポーネントを追加する処理を追加することを特徴とした請求項５に記載のシステムの起動方法。
【請求項９】
複数のプログラムコンポーネントからなるシステムの起動方法であって、
システム起動時に起動するプログラムコンポーネントを記述した起動リストを有し、
プログラムコンポーネントが実行されると実行時刻及び実行回数を保持するステップと、
前記実行時刻と現時刻との差が一定時間以内であり、かつ前記実行回数が一定数以上である場合に前記起動リストに該プログラムコンポーネントを追加する起動リスト追加ステップと、
前記実行時刻と現時刻を比較し、一定時間以上経っている場合に前記起動リストから該プログラムコンポーネントを削除する起動リスト削除ステップと、
前記起動リスト追加ステップ及び前記起動リスト削除ステップを周期的に行うステップと、
システム起動時に前記起動リストに記載したプログラムコンポーネントを起動するステップと、を有することを特徴としたシステムの起動方法。
【請求項１０】
初期の前記起動リストには、システム起動に必要なプログラムコンポーネントのみを記載することを特徴とした請求項９に記載のシステムの起動方法。
【請求項１１】
前記起動リストには、システム起動に必要なプログラムコンポーネントの記載を省いたことを特徴とした請求項９に記載のシステムの起動方法。
【請求項１２】
前記起動リスト追加ステップに、該プログラムコンポーネントの実行時間が一定時間以上である場合に前記起動リストに該プログラムコンポーネントを追加する処理を追加することを特徴とした請求項９に記載のシステムの起動方法。
【請求項１３】
前記起動リスト削除ステップに、該プログラムコンポーネントの実行回数が一定数以下である場合に前記起動リストから該プログラムコンポーネントを削除する処理を追加することを特徴とした請求項９に記載のシステムの起動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置におけるソフトウェアシステムの起動技術に関し、特に起動する複数のプログラムコンポーネントを自動的に決定するシステムの起動技術に関する。
【背景技術】
【０００２】
従来のパーソナルコンピュータだけでなく、家電製品なども情報処理能力が年々向上し、システムが高度化、複雑化している。それに伴い、システムの起動にかかる時間も増加している。これは、システム内における一機能が増大していることにも起因するが、システム内の機能が増加していることにも起因している。ところが、ユーザにとっては全く使わない不必要な機能まで追加されていることもあり、ユーザは起動時に不必要な機能が起動する時間も待たされるといった問題があった。
【０００３】
この問題に対し、システム構築時には必要最低限の機能だけを搭載し、ユーザが必要になった機能だけ後から追加するといった方法がある。
また、特許文献１にはユーザが使用する用途を設定し、起動時にその用途に関する機能のみ起動することが記載されている。
【０００４】
【特許文献１】特開平１１−００３１２９号公報（要約、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
図１３を用いて特許文献１を説明すると、起動用途・機能設定部１３０１でシステムの起動時にユーザが使用する用途を設定し、用途別機能指定プログラム実行部１３０２で設定された用途から機能を選択し、起動プログラム実行部１３０３で用途別に指定された機能を実行する。これにより、ユーザは機能レベルでの仕様を意識することなく、用途を設定するだけで、起動時の機能が設定でき、使用しない機能に対する処理時間を短縮することができる。
【０００６】
しかしながら、特許文献１に記載された従来の方法では、起動時に必要な機能或いはその用途をユーザが直接指定する必要があり、ユーザはそのシステムにどういった機能が搭載されているのか、またはどういった用途に使えるのか熟知しておかなければならない。
本発明は、ユーザに適した機能をシステム起動時に自動的に起動することができるシステム起動方法を提供することを課題とする。
【課題を解決するための手段】
【０００７】
ここで、ある一つの機能を実装したプログラムをプログラムコンポーネントと呼ぶことにする。すなわち、プログラムコンポーネントは機能単位で実装されたプログラムであり、他のプログラムコンポーネントとは独立している。パーソナルコンピュータ上におけるアプリケーションのようなものであるが、ここではアプリケーションだけでなく、ドライバやミドルウェアであっても良い。
【０００８】
上記の課題を解決するために本発明では、システムの起動方法に対して、システム起動時に起動するプログラムコンポーネントの一覧を記載した起動リストと、各プログラムコンポーネントを管理する管理プログラムコンポーネントを設け、プログラムコンポーネントが実行されるとタイムスタンプを押して保持するステップと、周期的に前記タイムスタンプと現時刻を比較して、前記起動リストから該プログラムコンポーネントを削除或いは追加して前記起動リストを管理するステップと、システム起動時に前記起動リストに記載されたプログラムコンポーネントを起動するステップを行う。
【０００９】
任意のプログラムコンポーネントに対して、長期間実行されていない場合は、該プログラムコンポーネントはユーザにとって不必要なプログラムコンポーネントであると判断できるので前記起動リストから該プログラムコンポーネントを削除する。また、前記起動リストにないプログラムコンポーネントがシステム起動後にユーザの指示で頻繁に起動される場合、該プログラムコンポーネントはユーザにとって必要なプログラムコンポーネントであると判断できるので前記起動リストに該プログラムコンポーネントを追加する。
【００１０】
これにより、ユーザは自ら特別な指示をすることなく、システムを使用していくうちにユーザに適した機能のみが自動的に起動されるようになり、ユーザの使用しない機能が起動される時間を短縮することができる。また、不必要な機能を起動しないことによりシステム全体の使用メモリ量を節約することができる。
【発明の効果】
【００１１】
本発明によれば、システムの起動時間を削減しつつ、ユーザに適した機能をシステム起動時に自動的に起動することができる
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態について図面を用いて説明する。
【実施例１】
【００１３】
本実施例１は本発明のシステム起動方法の１実施例である。以下に本実施例を図１から図７を用いて説明する。
図１は本発明におけるシステム起動方法の概略を示す図であり、図２はシステム起動時にどのプログラムコンポーネントを起動するかの一覧と各プログラムコンポーネントの情報を記載した起動リストを示す図であり、図３は図１における起動リスト管理コンポーネントに搭載する手段及び前記起動リストとのやり取りを示すブロック図であり、図４はプログラムコンポーネントに搭載する手段及び前記起動リストとのやり取りを示すブロック図であり、図５はシステム起動時における処理手順を示すフロー図であり、図６はプログラムコンポーネント実行時における処理手順を示すフロー図であり、図７は前記起動リスト管理コンポーネントが周期的に起動リストを管理する処理手順を示すフロー図である。
【００１４】
図１は本発明におけるシステム起動方法の概略を示す図であり、１００は起動時にどのプログラムコンポーネントを起動するかの一覧と各プログラムコンポーネントの情報を記載した起動リストであり、１１０は前記起動リスト１００を管理するプログラムコンポーネントである起動リスト管理コンポーネントであり、１２０、１３０、１４０はそれぞれある機能を実現するプログラムコンポーネントであるコンポーネントＡ、コンポーネントＢ、コンポーネントＣである。なお図１では前記起動リスト管理コンポーネント１１０以外のプログラムコンポーネントを３つしか示していないが、何個であってもよい。システム起動時に、前記起動リスト１００に起動するように記載されたプログラムコンポーネントのみ起動する。前記起動リスト１００には初めはシステム内にある全てのプログラムコンポーネントが起動するように記載する。よって、システム導入時は全プログラムコンポーネントが起動される。
【００１５】
システム稼動中に、ユーザの指示によりプログラムコンポーネントが実行されると該プログラムコンポーネントは前記起動リスト１００に実行開始した時刻のタイムスタンプを押印する。前記起動リスト管理コンポーネント１１０は一定の周期で前記起動リスト１００を見に行き、現在の時刻と前記起動リスト１００に記載された各プログラムコンポーネントの実行時間を比較し、一定の時間が経っている場合は、ユーザは不必要なプログラムコンポーネントであると判断できるので、該プログラムコンポーネントを前記起動リスト１００から削除する。これにより、一定時間実行されないプログラムコンポーネントは次回システム起動時には起動されないようになり、起動時間が短縮される。
【００１６】
図２は、図１における起動リスト１００の一形態を示した図である。２０１はシステム起動時に該プログラムコンポーネントを起動するかどうかをチェックする起動チェック欄であり、２０２は各プログラムコンポーネント名或いはＩＤなどプログラムコンポーネントを識別できるプログラムコンポーネント名欄であり、２０３は該プログラムコンポーネントが起動リストから削除できるか、すなわち前記起動チェック欄２０１のチェックを外せるかどうかを記載した削除可否欄であり、２０４は該プログラムコンポーネントが起動・実行された時間を示すタイムスタンプが押された前回起動時間欄である。なお、削除可否欄２０１に「不可」と記載されているプログラムコンポーネントはシステム起動に必要不可欠なものである。
【００１７】
図３は前記起動リスト管理コンポーネント１１０に搭載する手段及び前記起動リスト１００とのやり取りを示すブロック図である。３０１は前記起動リスト１００の管理をする起動リスト管理手段であり、３０２は現在の時刻を取得する現時刻取得手段であり、３０３は前記起動リスト１００から指定したプログラムコンポーネントの前回起動時間２０４に記載されたタイムスタンプを取得するプログラムコンポーネントタイムスタンプ取得手段である。起動リスト管理コンポーネント１１０は、前記起動リスト管理手段３０１、前記現時刻取得手段３０２、前記プログラムコンポーネントタイムスタンプ取得手段３０３を搭載する。起動リスト管理コンポーネント１１０は、システム稼動中に周期的に、プログラムコンポーネントタイムスタンプ取得手段３０３によって起動リスト１００からプログラムコンポーネントの前回実行時刻を取得する。そして現時刻取得手段３０２によって現在の時刻を取得して、前記前回実行時刻と比較し、一定時間経っていれば、起動リスト管理手段３０１によって起動リスト１００における該プログラムコンポーネントの起動チェック欄２０１からチェックを外す。
【００１８】
図４は図１におけるプログラムコンポーネントＡ１２０に搭載する手段及び前記起動リスト１００とのやり取りを示すブロック図である。なお、他のプログラムコンポーネントＢ１３０、プログラムコンポーネントＣ１４０についても同様である。４０１はプログラムコンポーネントが提供する機能を実行するプログラムコンポーネント機能実行手段であり、４０２は前記プログラムコンポーネント機能実行手段４０１が実行開始された時刻を取得し、起動リスト１００の該プログラムコンポーネントにおける前回起動時間欄２０４に前記時刻を記載するタイムスタンプ記録手段である。
次に、図５、図６、図７を用いて本実施例の動作の詳細を説明する。
【００１９】
図５はシステム起動時における処理手順である。システムが起動すると、起動リスト１００の起動チェックリスト２０１にシステム起動時に起動するようにチェックされているが、まだ起動されていないプログラムコンポーネントがあるか判断する（ステップＳ５０１）。まだ起動されていないプログラムコンポーネントがある場合、前記起動リスト１００から該プログラムコンポーネントを指定し（ステップＳ５０２）、該プログラムコンポーネントを起動する（ステップＳ５０３）。ステップＳ５０３の後、ステップＳ５０１に戻り、システム起動時に起動するようにチェックされているがまだ起動されていないプログラムコンポーネントを全て起動する。全て起動するとステップＳ５０１によりシステム起動処理を終了する。なお、プログラムコンポーネントの起動順については、起動リスト１００に記載された順でも良いし、任意の順番でも良い。
【００２０】
図６はプログラムコンポーネント実行時における処理手順である。システム稼動中に、ユーザの指示などにより該プログラムコンポーネントが実行指示されると、該プログラムコンポーネントは前記タイムスタンプ記録手段４０２により、現在の時刻を取得し、起動リスト１００における自身のプログラムコンポーネントに対する前回起動時間欄２０４にその時刻を記載する（ステップＳ６０１）。その後、前記プログラムコンポーネント機能実行手段４０１により本来の機能を実行する（ステップＳ６０２）。本来の機能を実行し終えると処理を終了する。なお、システムに必要なプログラムコンポーネント、すなわち起動リスト１００の削除可否欄２０３に「不可」と記載されたプログラムコンポーネントについては、ステップＳ６０１における処理は行わず、本来の機能のみ実行する。これにより、システム起動リストから削除できないプログラムコンポーネント実行時における無駄な処理を省くことができる。
【００２１】
図７は起動リスト管理コンポーネント１１０が周期的に起動リスト１００を管理する処理手順である。起動リスト管理コンポーネント１１０は、システム稼動中に、周期的に起動リスト１００の前回起動時間欄２０４に記載されたプログラムコンポーネントの前回起動時のタイムスタンプを前記プログラムコンポーネントタイムスタンプ取得手段３０３により取得する（ステップＳ７０１）。その後、現在の時刻を取得し（ステップＳ７０２）、ステップＳ７０１で取得した該プログラムコンポーネントの前回起動時間と現在の時間を比較し、一定の時間以上経っているかを判断する（ステップＳ７０３）。一定の時間以上経っている場合、起動リスト１００における該プログラムコンポーネントの削除可否欄２０３により該プログラムコンポーネントが起動リスト１００から削除できるか、すなわち起動リスト１００における該プログラムコンポーネントの起動チェック欄２０１のチェックを外せるかを判断する（ステップＳ７０４）。
【００２２】
起動リスト１００から削除できる場合、起動リスト１００から該プログラムコンポーネントを削除する。すなわち、起動リスト１００における該プログラムコンポーネントの起動チェック欄２０１のチェックを外す（ステップＳ７０５）。ステップＳ７０３にて一定時間以内である場合、及びステップＳ７０４において該プログラムコンポーネントが起動リスト１００から削除できない場合、及びステップＳ７０５の後、起動リスト１００に記載された全プログラムコンポーネントについてステップＳ７０１からステップＳ７０５の処理をしたか判断する（ステップＳ７０６）。全プログラムコンポーネントについて処理が終わった場合、一連の処理を終了する。全プログラムコンポーネントについて処理が終わっていない場合は、ステップＳ７０１に戻って、まだ処理を行っていないプログラムコンポーネントについて処理を行う。
【００２３】
なお、本実施例における起動リスト１００にはシステム内の全てのプログラムコンポーネントについて記載しているが、システム起動に必要不可欠なプログラムコンポーネントは起動リスト１００から省いても良い。その場合、図５で示したシステム起動時の処理において、ステップＳ５０１の前にシステム起動に必要不可欠な該プログラムコンポーネントを起動する必要があるが、図２における起動リスト１００の削除可否欄２０３が不要になり、また図７におけるステップＳ７０４の判定処理を省くことができる。
【００２４】
また、本実施例では、ユーザがあまり使わないプログラムコンポーネントは起動リスト１００から削除され、システム起動時に起動されなくなるが、該プログラムコンポーネントを起動リスト１００から削除せずにシステム起動時における該プログラムコンポーネントの起動順序を後にしても良い。これにより、ユーザは頻繁に使うプログラムコンポーネントがすぐに使えるようになる。
【００２５】
本実施例により、初めは全てのプログラムコンポーネントが起動されるが、ユーザがシステムを使用していくうちに、自動的に、ユーザがよく使うプログラムコンポーネント、すなわちよく使う機能のみがシステム起動時に起動されることになり、システム起動時における起動時間を短縮することができる。また、起動されないプログラムコンポーネントが用いるメモリサイズ分だけメモリを節約することができる。
【実施例２】
【００２６】
本実施例２は、第１の実施例に対して、システム起動時には必要なプログラムコンポーネントのみ起動し、システム稼動中にユーザが頻繁に使うプログラムコンポーネントを起動リストに追加していくものである。なお、本実施例におけるシステム起動方法の概略は図１と同じであり、本実施例におけるシステム起動時の処理手順は図５に示したフロー図と同じである。
【００２７】
以下に本発明の実施例２を、図８から図１２を用いて説明する。
図８はシステム起動時にどのプログラムコンポーネントを起動するかの一覧と各プログラムコンポーネントの情報を記載した起動リストを示す図であり、図９は起動リスト管理コンポーネント１１０に搭載する手段及び前記起動リストとのやり取りを示すブロック図であり、図１０はプログラムコンポーネントに搭載する手段及び前記起動リストとのやり取りを示すブロック図であり、図１１はプログラムコンポーネント実行時における処理手順を示すフロー図であり、図１２は前記起動リスト管理コンポーネントが周期的に起動リストを管理する処理手順を示すフロー図である。
【００２８】
図８は本実施例における起動リスト１００の一形態を示した図である。本実施例では、第１の実施例における図２の起動リストに対して、プログラムコンポーネントが実行された回数を保持する実行回数欄８０５を追加する。
図９は本実施例における起動リスト管理コンポーネント１１０に搭載する手段及び前記起動リスト１００とのやり取りを示すブロック図である。本実施例では、第１の実施例における図３のブロック図に対して、起動リスト１００から指定したプログラムコンポーネントの実施回数欄８０５に記載された実行回数を取得するプログラムコンポーネント実行回数取得手段９０４を追加する。前記プログラムコンポーネント実行回数取得手段９０４で取得した該プログラムコンポーネントの実行回数は、起動リスト管理手段３０１に渡して、起動リスト１００の管理に用いる。
【００２９】
図１０は本実施例におけるプログラムコンポーネントに搭載する手段及び前記起動リスト１００とのやり取りを示すブロック図である。本実施例では、第１の実施例における図４のブロック図に対して、前記プログラムコンポーネント機能実行手段４０１が実行開始された時に、起動リスト１００の該プログラムコンポーネントにおける実行回数欄８０５の値をインクリメントする実行回数記録手段１００３を追加する。
【００３０】
図１１は本実施例におけるプログラムコンポーネント実行時における処理手順である。システム稼動中に、ユーザの指示などにより該プログラムコンポーネントが実行指示されると、該プログラムコンポーネントはタイムスタンプ記録手段４０２により、現在の時刻を取得し、起動リスト１００における自身のプログラムコンポーネントに対する前回起動時間欄２０４にその時刻を記載する（ステップＳ１１０１）。続いて、前記実行回数記録手段１００３により、起動リスト１００における自身のプログラムコンポーネントに対する実行回数欄８０５に記載された値をインクリメントする（ステップＳ１１０２）。その後、プログラムコンポーネント機能実行手段４０１により本来の機能を実行する（ステップＳ１１０３）。本来の機能を実行し終えると処理を終了する。なお、システムに必要なプログラムコンポーネント、すなわち起動リスト１００の削除可否欄２０３に「不可」と記載されたプログラムコンポーネントについては、ステップＳ１１０１及びステップＳ１１０２における処理は行わず、本来の機能のみ実行する。これにより、システム起動リストから削除できないプログラムコンポーネント実行時における無駄な処理を省くことができる。
【００３１】
図１２は本実施例における起動リスト管理コンポーネント１１０が周期的に起動リスト１００を管理する処理手順である。起動リスト管理コンポーネント１１０は、システム稼動中に、一定の周期で図１２における処理を行う。システム起動時に起動されないプログラムコンポーネント、すなわち図８における起動リスト１００の起動チェック欄２０１にチェックがついていないプログラムコンポーネントについて、起動リスト１００の前回起動時間欄２０４に記載された該プログラムコンポーネントの前回起動時のタイムスタンプを前記プログラムコンポーネントタイムスタンプ取得手段３０３により取得する（ステップＳ１２０１）。その後、現在の時刻を取得し（ステップＳ１２０２）、ステップＳ１２０１で取得した該プログラムコンポーネントの前回起動時間と現在の時間を比較し、一定の時間以下であるかを判断する（ステップＳ１２０３）。一定の時間以内である場合、起動リスト１００の実行回数欄８０５に記載された該プログラムコンポーネントの実行回数を前記プログラムコンポーネント実行回数取得手段９０４により取得する（ステップＳ１２０４）。ステップＳ１２０４で取得した該プログラムコンポーネントの実行回数が一定数以上であるか判断する（ステップＳ１２０５）。一定数以上である場合、該プログラムコンポーネントはユーザに頻繁に実行されると判断して、起動リスト１００に該プログラムコンポーネントを追加する。
【００３２】
すなわち、起動リスト１００における該プログラムコンポーネントの起動チェック欄２０１のチェックをつける（ステップＳ１２０６）。ステップＳ１２０３にて一定時間以上である場合、及びステップＳ１２０５にて一定数以下である場合、及びステップＳ１２０６の後、起動リスト１００に記載された全プログラムコンポーネントについてステップＳ１２０１からステップＳ１２０６の処理をしたか判断する（ステップＳ１２０７）。全プログラムコンポーネントについて処理が終わった場合、一連の処理を終了する。全プログラムコンポーネントについて処理が終わっていない場合は、ステップＳ１２０１に戻って、まだ処理を行っていないプログラムコンポーネントについて処理を行う。
【００３３】
なお、本実施例における起動リスト１００にはシステム内の全てのプログラムコンポーネントについて記載しているが、第１の実施例と同様にシステム起動に必要不可欠なプログラムコンポーネントは起動リスト１００から省いても良い。これにより起動リスト１００に必要なメモリサイズを削減することができ、起動リスト管理にかかる処理を省くことができる。また、本実施例における起動リスト１００へのプログラムコンポーネント追加手段は、該プログラムコンポーネントの前回実行時刻と実行回数で判断しているが、実行している時間も判断の材料にしても良い。これにより実行回数は少ないが、長い間使い続けているプログラムコンポーネントを起動リストに追加することができ、ユーザに対する利便性が向上する。
【００３４】
本実施例により、初めはシステム起動に必要なプログラムコンポーネントしか起動されないが、ユーザがシステムを使用していくうちに、自動的に、ユーザがよく使うプログラムコンポーネント、すなわちよく使う機能がシステム起動時に起動されることになり、ユーザが該機能を使うまでの時間を短縮することができる。
【実施例３】
【００３５】
本実施例３は、第１の実施例と第２の実施例を組み合わせた実施例である。なお、本実施例におけるシステム起動方法の概略は図１と同じであり、本実施例におけるシステム起動時の処理手順は図５に示したフロー図と同じであり、本実施例における起動リストは図８と同じであり、本実施例における起動リスト管理コンポーネント１１０に搭載する手段及び前記起動リストとのやり取りを示すブロック図は図９に示したブロック図と同じであり、本実施例におけるプログラムコンポーネントに搭載する手段及び前記起動リストとのやり取りを示すブロック図は図１０と同じであり、本実施例におけるプログラムコンポーネント実行時における処理手順を示すフロー図は図１１と同じであり、起動リスト管理コンポーネントが周期的にプログラムコンポーネントを起動リストへ追加する処理手順は図１２に示したフロー図と同じであり、起動リスト管理コンポーネントが周期的にプログラムコンポーネントを起動リストから削除する処理手順は図７に示したフロー図と同じである。
【００３６】
第２の実施例と同様に、起動リストには初めはシステム起動に必要なプログラムコンポーネントのみが記載されている。すなわち、初めはシステム起動時に必要なプログラムコンポーネントしか起動しない。ユーザの指示などによりプログラムコンポーネントが実行された場合、図１１に示した処理を行い起動リストに該プログラムコンポーネント実行に関する情報を記載する。システム稼動中に、起動リスト管理コンポーネントが周期的に図１２に示した処理を行い、起動リストにユーザがよく使うプログラムコンポーネントを追加していく。しかし、ユーザの嗜好が変わったなど、今までよく使っていたプログラムコンポーネントが使われなくなった場合、システム起動時に該プログラムコンポーネントを起動するのは無駄なことになるので、システム稼動中に、起動リスト管理コンポーネントが周期的に図７に示した処理を行い、あまり使わないプログラムコンポーネントを削除していく。この起動リストへの追加・削除を繰り返すことで、いつでもユーザに適したプログラムコンポーネントをシステム起動時に起動することができる。
【００３７】
なお、起動リストから削除する判断は、図７に示したように該プログラムコンポーネントの前回実行時刻でのみ判断しているが、該プログラムコンポーネントの実行回数により判断しても良い。すなわち、図７のステップＳ７０３の後、該実行回数が一定数以内であるか判断して、一定数以内であればステップＳ７０４の処理を行い、一定数以上である場合は、ステップＳ７０６の処理を行う。なお、この一定数はシステムの起動回数に一定数を加えた数である。これにより、起動リストからの削除する精度が上がり、ユーザの利便性が向上する。
本実施例により、ユーザの嗜好性が変わっても、ユーザに適した起動リストを提供することができる。すなわち、いつでもユーザに適した起動時間でシステムを起動することができる。
【図面の簡単な説明】
【００３８】
【図１】本発明の一実施例におけるシステム起動方法の概略を示す図である。
【図２】本発明の実施例１における起動リストを示す図である。
【図３】本発明の実施来１における起動リスト管理コンポーネントのブロック図である。
【図４】本発明の実施例１におけるプログラムコンポーネントのブロック図である。
【図５】本発明の実施例1におけるシステム起動時における処理手順を示すフロー図である。
【図６】本発明の実施例１におけるプログラムコンポーネント実行時における処理手順を示すフロー図である。
【図７】本発明の実施例１における起動リストを管理する処理手順を示すフロー図である。
【図８】本発明の実施例２における起動リストを示す図である。
【図９】本発明の実施例２における起動リスト管理コンポーネントのブロック図である。
【図１０】本発明の実施例２におけるプログラムコンポーネントのブロック図である。
【図１１】本発明の実施例２におけるプログラムコンポーネント実行時における処理手順を示すフロー図である。
【図１２】本発明の実施例２における起動リストを管理する処理手順を示すフロー図である。
【図１３】従来技術を示す図である。
【符号の説明】
【００３９】
１００…起動リスト
１１０…起動リスト管理コンポーネント
１２０…コンポーネントＡ
１３０…コンポーネントＢ
１４０…コンポーネントＣ
【図１】
2006323549.tif 000003
【図２】
2006323549.tif 000004
【図３】
2006323549.tif 000005
【図４】
2006323549.tif 000006
【図５】
2006323549.tif 000007
【図６】
2006323549.tif 000008
【図７】
2006323549.tif 000009
【図８】
2006323549.tif 000010
【図９】
2006323549.tif 000011
【図１０】
2006323549.tif 000012
【図１１】
2006323549.tif 000013
【図１２】
2006323549.tif 000014
【図１３】
2006323549.tif 000015