(57)【特許請求の範囲】
【請求項１】
複数の記憶装置のそれぞれに記憶されたデータセットに対してデータ処理を実行する情報処理装置であって、
前記複数の記憶装置のそれぞれに対するアクセスの内容を示すアクセスデータを収集する収集部と、
新たなデータセットを記憶させるための記憶領域の確保要求を受けたことに応じて、前記複数の記憶装置のそれぞれに対するアクセスデータに基づき、記憶装置毎のアクセス頻度の予測推移を算出する算出部と、
記憶装置毎の前記予測推移に基づき、前記複数の記憶装置のうち前記新たなデータセットを記憶する記憶領域を確保する記憶装置を選択する選択部と、
前記新たなデータセットの使用を予定する期間である予定期間を入力する入力部と、
を備え、
前記算出部は、
各記憶装置における前記データセット毎に、アクセス頻度の推移データをフーリエ変換により複数の周波数成分の推移データに分離し、前記複数の周波数成分の推移データの波形の振幅及び位相に基づいて、各推移データの前記予定期間での波形を予測し、
各推移データの前記予定期間での波形を加算することにより、当該データセットに対する前記予定期間でのアクセス頻度の推移波形を生成し、
前記記憶装置毎に前記データセットの前記推移波形を加算することにより、当該記憶装置に対する前記予定期間でのアクセス頻度の推移波形を生成し、前記記憶装置毎のアクセス頻度の予測推移とする情報処理装置。
【請求項２】
前記入力部は、前記新たなデータセットの使用を予定する時間帯である利用時間帯を入力し、
前記算出部は、前記複数の記憶装置のそれぞれに対するアクセスデータのうち、前記利用時間帯に対応する時間帯のアクセスデータを抽出して、抽出したアクセスデータに基づき記憶装置毎のアクセス頻度の予測推移を算出する
請求項１に記載の情報処理装置。
【請求項３】
前記算出部は、
前記データセットのそれぞれ毎のアクセスデータを抽出し、
データセット毎に、前記データセットのアクセスデータに基づき、当該データセットの過去のアクセス頻度の推移を算出し、
前記データセット毎に、過去のアクセス頻度の推移に基づき、前記予定期間におけるアクセス頻度の推移を予測し、
前記データセット毎の前記予定期間におけるアクセス頻度の推移を記憶装置毎に加算して、前記記憶装置毎にアクセス頻度の予測推移を算出する
を有する請求項１または２に記載の情報処理装置。
【請求項４】
前記算出部は、
前記複数の記憶装置のうち、前記新たなデータセットを記憶する記憶領域を確保するために必要な空き容量を少なくとも有する複数の記憶装置を候補として検出し、
候補として検出された前記複数の記憶装置のそれぞれに対するアクセスデータに基づき、記憶装置毎のアクセス頻度の予測推移を算出する
請求項１から３の何れか１項に記載の情報処理装置。
【請求項５】
前記算出部は、空き容量が減少傾向ではない記憶装置を候補として検出する
請求項４に記載の情報処理装置。
【請求項６】
前記選択部は、前記予測推移の最大値に基づき、前記新たなデータセットを記憶する記憶領域を確保する記憶装置を選択する
請求項１から５の何れか１項に記載の情報処理装置。
【請求項７】
前記選択部は、前記予測推移の最大値が最も小さい記憶装置を、前記新たなデータセットを記憶する記憶領域を確保する記憶装置として選択する
請求項６に記載の情報処理装置。
【請求項８】
前記選択部は、前記予測推移の平均値に基づき、前記新たなデータセットを記憶する記憶領域を確保する記憶装置を選択する
請求項１から５の何れか１項に記載の情報処理装置。
【請求項９】
前記選択部は、前記予測推移の平均値が最も小さい記憶装置を、前記新たなデータセットを記憶する記憶領域を確保する記憶装置として選択する
請求項８に記載の情報処理装置。
【請求項１０】
複数の記憶装置のそれぞれに記憶されたデータセットに対してデータ処理を実行する情報処理装置における、新たなデータセットを記憶する記憶領域の確保をするための方法であって、
前記複数の記憶装置のそれぞれに対するアクセスの内容を示すアクセスデータを収集する収集ステップと、
前記新たなデータセットの使用を予定する期間である予定期間を入力する入力ステップと、
前記新たなデータセットを記憶させるための記憶領域の確保要求を受けたことに応じて、前記複数の記憶装置のそれぞれに対するアクセスデータに基づき、記憶装置毎のアクセス頻度の予測推移を算出する算出ステップと、
記憶装置毎の前記予測推移に基づき、前記複数の記憶装置のうち前記新たなデータセットを記憶する記憶領域を確保する記憶装置を選択する選択ステップと、
を備え、
前記算出ステップでは、
各記憶装置における前記データセット毎に、アクセス頻度の推移データをフーリエ変換により複数の周波数成分の推移データに分離し、前記複数の周波数成分の推移データの波形の振幅及び位相に基づいて、各推移データの前記予定期間での波形を予測し、
各推移データの前記予定期間での波形を加算することにより、当該データセットに対する前記予定期間でのアクセス頻度の推移波形を生成し、
前記記憶装置毎に前記データセットの前記推移波形を加算することにより、当該記憶装置に対する前記予定期間でのアクセス頻度の推移波形を生成し、前記記憶装置毎のアクセス頻度の予測推移とする方法。
【請求項１１】
コンピュータを請求項１から９の何れか１項に記載の情報処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理を実行する情報処理装置、方法およびプログラムに関する。
【背景技術】
【０００２】
ホスト機器（例えばメインフレームと呼ばれる汎用コンピュータ）は、新しいデータセットに対する処理を実行する場合、その新しいデータセットの記憶領域を何れかの記憶装置（ボリューム）に予め確保する。この場合、ホスト機器は、新しいデータセットの使用状況等に応じて、適切な記憶装置を割り当てなければならない。
【０００３】
特許文献１〜４には、コンピュータシステムの資源の使用状況の監視および性能診断等に関する技術が記載されている。特許文献５には、ストレージシステムが有する論理ボリュームに物理ディスクを割り当てる計算機システムが記載されている。特許文献６には、時間帯毎のアクセス頻度情報に基づいて、複数のスライスを再配置する論理ディスク管理方法が記載されている。
【０００４】
特許文献１  特開平１０−２８３２０９号公報
特許文献２  特開平５−１５１０１３号公報
特許文献３  特開平６−２２２９６３号公報
特許文献４  特開平７−６４９３１号公報
特許文献５  特開２００７−１２２２６８号公報
特許文献６  特開２００８−２６９３４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ホスト機器は、最初に確保した記憶領域（一次領域）が不足した場合においても、その記憶装置に記憶領域（二次領域）を追加できるように、十分な空き容量を有する記憶装置を割り当てなければならない。また、ホスト機器は、一部の記憶装置にアクセスが集中しないように、複数の記憶装置の中から適切な記憶装置を割り当てなければならない。また、ホスト機器は、データセット毎の固有の利用条件（例えばセキュリティ要件）に合致した記憶装置を確保しなければならない。
【０００６】
しかしながら、ホスト機器による記憶装置のアクセス状況は日々変化する。従って、新たなデータセットに対して、記憶装置の将来の使用状況を考慮しつつ最も適切な記憶装置を割り当てることは非常に困難であった。
【課題を解決するための手段】
【０００７】
本発明の第１の態様においては、複数の記憶装置のそれぞれに記憶されたデータセットに対してデータ処理を実行する情報処理装置であって、前記複数の記憶装置のそれぞれに対するアクセスの内容を示すアクセスデータを収集する収集部と、新たなデータセットを記憶させるための記憶領域の確保要求を受けたことに応じて、前記複数の記憶装置のそれぞれに対するアクセスデータに基づき、記憶装置毎のアクセス頻度の予測推移を算出する算出部と、記憶装置毎の前記予測推移に基づき、前記複数の記憶装置のうち前記新たなデータセットを記憶する記憶領域を確保する記憶装置を選択する選択部と、を備える情報処理装置、および、これに関連する方法及びプログラムを提供する。
【０００８】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態に係るコンピューティングシステム１０の構成を示す。
【図２】本実施形態に係る情報処理装置３０の機能構成を示す。
【図３】新たなデータセットを記憶するための記憶領域の確保要求がされた場合における、本実施形態に係る情報処理装置３０の処理フローを示す。
【図４】本実施形態に係るコンピュータ１９００のハードウェア構成の一例を示す。
【発明を実施するための形態】
【００１０】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１１】
図１は、本実施形態に係るコンピューティングシステム１０の構成を示す。コンピューティングシステム１０は、一例として、いわゆるメインフレームと呼ばれる汎用コンピュータであって、計算処理、制御処理、データ管理等の様々データ処理を実行する。
【００１２】
コンピューティングシステム１０は、複数の端末２２と、複数の記憶装置２４と、情報処理装置３０とを備える。複数の端末２２のそれぞれは、ネットワークを介して情報処理装置３０と接続される。複数の端末２２のそれぞれは、ユーザにより入力された情報を情報処理装置３０に送信し、情報処理装置３０からの情報をユーザに出力する。
【００１３】
複数の記憶装置２４のそれぞれは、情報処理装置３０によりアクセスされ、情報処理装置３０により取り扱われるデータを記憶する。複数の記憶装置２４のそれぞれは、一例として、ディスク状記録媒体に対してデータの記録再生を行うディスクドライブ装置、および、テープ状記録媒体にデータの記録再生を行うテープドライブ装置等の、どのような記録メディアを用いたドライブ装置であってもよい。また、１つの記憶装置２４は、複数の記録媒体を備える構成であってもよい。また、１つの記憶装置２４は、１つの記録媒体の記録領域を分割した分割領域に対してデータを記録および再生するドライブ装置であってもよい。
【００１４】
また、複数の記憶装置２４は、データセットと呼ばれる単位のデータを記憶する。データセットは、例えば、コンピュータが取り扱う予め定められた規則で構造化されたデータ単位であり、ファイルおよびドキュメントと呼ばれるデータ単位と同様の構造であってもよい。
【００１５】
ここで、１つのデータセットは、１つの記憶装置２４内の記憶領域にまとめて記憶される。新しいデータセットを使用する場合には、コンピューティングシステム１０は、新しいデータセットの使用に先立って、複数の記憶装置２４の何れか１つを選択して、選択した記憶装置２４に新しいデータセットの記憶領域を確保する。
【００１６】
情報処理装置３０は、ソフトウェアプログラムを実行して、複数の記憶装置２４のそれぞれに記憶されたデータセットに対してデータ処理を実行する。より具体的には、情報処理装置３０は、端末２２を介してユーザにより入力された情報に基づき、対応するデータセットに対するデータ処理を実行する。また、情報処理装置３０は、データセットに対するデータ処理の処理結果を端末２２を介してユーザに出力する。さらに、情報処理装置３０は、データ処理の処理結果に応じて、対応するデータセットの内容を更新する。
【００１７】
図２は、本実施形態に係る情報処理装置３０の機能構成を示す。情報処理装置３０は、ソフトウェアプログラムを実行することにより、図２に示されるような各機能が実現される。すなわち、情報処理装置３０は、ソフトウェアプログラムを実行することにより、機能ブロックとして、プログラム実行部３２と、権限管理部３４と、収集部３６と、管理データ格納部３８と、確保処理部４０とを有する。
【００１８】
プログラム実行部３２は、ユーザから提供されたソフトウェアプログラムを実行することにより実現される。プログラム実行部３２は、対応するデータセットに対してデータ処理を実行して、データ処理の結果を外部に出力したり、データ処理の結果に応じてデータセットを更新したりする。
【００１９】
権限管理部３４は、複数の記憶装置２４のそれぞれの使用権限を管理する。すなわち、権限管理部３４は、特定の権限を有するユーザのみがアクセス可能な記憶装置２４に対してアクセスがあった場合、使用権限をチェックする。そして、権限管理部３４は、使用権限を有さないユーザがアクセスした場合には、そのアクセスを拒否する。
【００２０】
収集部３６は、当該情報処理装置３０による、複数の記憶装置２４のそれぞれに対するアクセスの内容を示すアクセスデータを収集する。管理データ格納部３８は、収集部３６により管理されるデータを記憶する。管理データ格納部３８は、複数の記憶装置２４のうちの一部の記憶装置２４に形成されてもよいし、複数の記憶装置２４とは別個の記憶媒体上に形成されてもよい。
【００２１】
収集部３６は、一例として、アクション取得部４２と、アクセス記録部４４と、ボリューム管理部４６とを含む。アクション取得部４２は、当該情報処理装置３０と記憶装置２４との間の全てのアクション（例えば、書き込み、読み出し、削除等）を取得し、取得したアクションの内容およびアクションが発生した時刻等をアクションデータとして管理データ格納部３８に書き込む。
【００２２】
アクセス記録部４４は、当該情報処理装置３０と対応する記憶装置２４との間に生じたアクセスに関する内容を、複数の記憶装置２４のそれぞれ毎にまとめてアクセスデータとして管理データ格納部３８に書き込む。アクセス記録部４４は、アクション取得部４２がアクションデータを管理データ格納部３８に書き込む毎に呼び出され、管理データ格納部３８に書き込まれたアクションデータから、記憶装置２４のそれぞれの状態を管理するために必要なデータを抽出して、アクセスデータとして管理データ格納部３８に書き込む。
【００２３】
ボリューム管理部４６は、複数の記憶装置２４のそれぞれ毎の空き容量等を管理する。ボリューム管理部４６は、一例として、当該情報処理装置３０の起動時において、当該情報処理装置３０に接続されている記憶装置２４の名称、空き容量の情報、および、記憶装置２４の退避に関する情報を取得し、取得したこれらの情報を管理データとして、記憶装置２４毎に分類して管理データ格納部３８に書き込む。なお、記憶装置２４の退避とは、例えば一定期間アクセスの無いデータセットを、例えば速度の遅い他の記憶装置２４へと移動させる処理をいう。
【００２４】
また、ボリューム管理部４６は、当該情報処理装置３０の運用中において、記憶装置２４の空き容量を一定時間毎に取得して、容量に変化があった場合に管理データ格納部３８に書き込まれている対応する記憶装置２４の管理データを更新する。また、ボリューム管理部４６は、記憶装置２４の退避に関する情報に変化があれば、管理データ格納部３８に書き込まれている対応する記憶装置２４の管理データを更新する。また、ボリューム管理部４６は、一定期間内に容量に変化があった記憶装置２４のアクセスデータを管理データ格納部３８から抽出して、対応する記憶装置２４の管理データの一部として管理データ格納部３８に書き込む。
【００２５】
確保処理部４０は、新たなデータセットを記憶させるための記憶領域の確保要求を受けたことに応じて、複数の記憶装置２４の何れか１つを選択する。そして、確保処理部４０は、選択した記憶装置２４に新しいデータセットの記憶領域を確保する処理を実行する。
【００２６】
確保処理部４０は、入力部５２と、算出部５４と、選択部５６とを含む。入力部５２は、端末２２を介してユーザから、新たなデータセットを記憶させるための記憶領域の確保要求を取得する。これとともに、入力部５２は、記憶領域を確保するために必要な情報も取得する。
【００２７】
算出部５４は、新たなデータセットを記憶させるための記憶領域の確保要求を受けたことに応じて、収集部３６により収集された複数の記憶装置２４のそれぞれに対するアクセスデータに基づき、記憶装置２４毎のアクセス頻度の予測推移を算出する。選択部５６は、記憶装置２４毎のアクセス頻度の予測推移に基づき、複数の記憶装置２４のうち新たなデータセットを記憶する記憶領域を確保する記憶装置２４を選択する。そして、選択部５６は、選択した記憶装置２４に対して、必要な容量の記憶領域を確保するべく、管理データ格納部３８に記憶された対応する記憶装置２４の管理データの更新等の処理を実行する。
【００２８】
図３は、新たなデータセットを記憶させるための記憶領域の確保要求がされた場合における、本実施形態に係る情報処理装置３０の処理フローを示す。情報処理装置３０は、新たなデータセットを記憶させるための記憶領域の確保要求を受けると、図３のステップＳ１１からステップＳ２２に示される処理を実行する。
【００２９】
まず、ステップＳ１１において、情報処理装置３０の入力部５２は、記憶領域の確保要求とともに、新たなデータセットの使用を予定する期間である予定期間、および、新たなデータセットの使用を予定する時間帯である利用時間帯を入力する。予定期間および利用時間帯は、端末２２を介してユーザにより入力される。
【００３０】
例えば、入力部５２は、予定期間として、「現在から３ヶ月後まで」、といった期間を入力する。また、入力部５２は、予定期間として、「現在から無期限後まで」といった期間を入力してもよい。また、入力部５２は、利用時間帯として、「午前１０時００分から午後１６時３０分まで」、といった１日のうちにおいて使用する時間帯を入力する。また、入力部５２は、利用時間帯として、平日と休日の区別等も入力してもよい。
【００３１】
さらに、情報処理装置３０の入力部５２は、記憶領域の確保要求とともに、新しいデータセットを記憶するために必要な空き容量を示す必要容量、新しいデータセットを記憶させる記憶装置２４のセキュリティ要件、および、新しいデータセットを記憶させる記憶装置２４の退避要件を入力する。入力部５２は、必要容量として、例えばバイト数を入力する。
【００３２】
また、入力部５２は、セキュリティ要件として、予め登録されたユーザのみが使用できる記憶装置２４を利用する、または、全てのユーザが自由に使用できる記憶装置２４を使用する、といった要件を入力する。また、入力部５２は、退避要件として、一定期間不使用であることを条件としてデータセットを他の記憶装置２４へと移転させる記憶装置２４を利用する、または、どのような条件下においてもデータセットを他の記憶装置２４へと移転させない記憶装置２４を使用する、といった要件を入力する。
【００３３】
続いて、ステップＳ１２において、情報処理装置３０の算出部５４は、複数の記憶装置２４のうち、新たなデータセットを記憶する記憶領域を確保するために必要な空き容量を少なくとも有する複数の記憶装置２４を、選択すべき記憶装置２４の候補として検出する。これにより、算出部５４は、少なくとも新たなデータセットを記憶することができない記憶装置２４を、予め除外することができる。
【００３４】
この場合において、算出部５４は、空き容量が減少傾向ではない記憶装置２４を候補として検出する。これにより、算出部５４は、現在は必要容量以上の空き容量があっても、将来的に空き容量が必要容量より少なくなってしまうような記憶装置２４を候補として選択してしまうことを回避することができる。
【００３５】
さらに、算出部５４は、セキュリティ要件および退避要件を満足する記憶装置２４を候補として選択する。例えば、算出部５４は、アクセスするユーザに対するセキュリティ管理をする場合にはセキュリティ管理可能な記憶装置２４を候補として選択する。また、例えば、算出部５４は、退避要件が入力された場合には、退避要件を満足した記憶装置２４を候補として選択する。
【００３６】
続いて、情報処理装置３０の算出部５４は、ステップＳ１３からステップＳ２０のループ処理を、候補となる記憶装置２４のそれぞれについて実行する。さらに、ステップＳ１３からステップＳ２０のループ処理内において、算出部５４は、当該記憶装置２４内に記憶されたデータセット毎に、ステップＳ１４からステップＳ１８のループ処理を実行する。
【００３７】
ステップＳ１４からステップＳ１８のデータセット毎のループ処理内においては、まず、ステップＳ１５において、算出部５４は、対象となるデータセットに対してされたアクセスに関するアクセスデータであって、且つ、利用時間帯においてされたアクセスに関するアクセスデータを、管理データ格納部３８内の記録装置毎の管理データの中から抽出する。この場合において、算出部５４は、当該情報処理装置３０が運用を開始した後の全期間のアクセスデータから対応するアクセスデータを抽出してもよいし、過去の一定期間（例えば過去１年間）のアクセスデータから、対応するアクセスデータを抽出してもよい。
【００３８】
続いて、ステップＳ１６において、算出部５４は、抽出したアクセスデータに基づき、当該データセットの過去のアクセス頻度の推移を算出する。すなわち、算出部５４は、対象となるデータセットに対する利用時間帯においてのアクセスの頻度を示す、過去のアクセス頻度の推移データを算出する。算出部５４は、一例として、過去の、日毎のアクセス頻度の推移を表す推移データを算出する。
【００３９】
続いて、ステップＳ１７において、算出部５４は、過去のアクセス頻度の推移データに基づき、対象となるデータセットについての予定期間におけるアクセス頻度の推移を予測する。例えば、算出部５４は、当該データセットについての日毎のアクセス頻度の推移を表す推移データを、高速フーリエ変換等により複数の周波数成分に分離する。算出部５４は、周波数成分のそれぞれに分離した推移データの波形の振幅および位相に基づき、対応する周波数成分における予定期間の波形を予測する。そして、算出部５４は、複数の周波数成分毎のそれぞれ毎の予定期間における予測波形を全て加算して、予定期間におけるアクセス頻度の推移を表す波形を生成する。
【００４０】
続いて、ステップＳ１８において、算出部５４は、対象となる候補の記憶装置２４に記憶された全てのデータセットについて、ステップＳ１５からステップＳ１７の処理を完了したか否かを判断する。算出部５４は、完了した場合には、処理をステップＳ１９に進める。処理を完了していない場合には、算出部５４は、次のデータセットについてステップＳ１５からステップＳ１７の処理を実行する。
【００４１】
続いて、ステップＳ１９において、算出部５４は、対象となる候補の記憶装置２４に記憶された全てのデータセットについて算出された、予定期間におけるアクセス頻度の推移を表す波形を加算する。これにより、算出部５４は、対象となる候補の記憶装置２４についての、予定期間におけるアクセス頻度の予測推移を算出することができる。
【００４２】
続いて、ステップＳ２０において、算出部５４は、対象となる候補の記憶装置２４の全てについて、ステップＳ１４からステップＳ１９の処理を完了したか否かを判断する。算出部５４は、完了した場合には、処理をステップＳ２１に進める。処理を完了していない場合には、算出部５４は、次の候補となる記憶装置２４についてステップＳ１４からステップＳ１９の処理を実行する。
【００４３】
続いて、ステップＳ２１において、情報処理装置３０の選択部５６は、候補となる複数の記憶装置２４のそれぞれにおける予定期間におけるアクセス頻度の予測推移に基づき、新たなデータセットの記憶領域を確保するのに適切な一つの記憶装置２４を選択する。選択部５６は、一例として、予定期間における予測推移の最大値に基づき、新たなデータセットを記憶する記憶領域を確保する記憶装置２４を選択する。例えば、選択部５６は、予定期間における予測推移の最大値が、候補となる複数の記憶装置２４のうちで最も小さい記憶装置２４を選択する。
【００４４】
また、選択部５６は、一例として、予定期間における予測推移の平均値に基づき、新たなデータセットを記憶する記憶領域を確保する記憶装置２４を選択してもよい。例えば、選択部５６は、予定期間における予測推移の平均値が、候補となる複数の記憶装置２４のうちで最も小さい記憶装置２４を選択する。
【００４５】
続いて、ステップＳ２２において、情報処理装置３０の選択部５６は、選択した一の記憶装置２４に対して、新たなデータセットを記憶する記憶領域を確保するための確保処理を実行する。例えば、選択部５６は、管理データ格納部３８に記憶された対応する記憶装置２４の管理データの更新等の処理を実行する。
【００４６】
以上のように、本実施形態に係る情報処理装置３０は、記憶装置２４のそれぞれの将来のアクセス頻度を予測して、新たなデータセットを記憶させるために適切な記憶装置２４を割り当てることができる。これにより、本実施形態に係る情報処理装置３０によれば、記憶装置２４の将来の使用状況を考慮しつつ適切な記憶装置を割り当てることができる。
【００４７】
図４は、本実施形態に係るコンピュータ１９００のハードウェア構成の一例を示す。本実施形態に係るコンピュータ１９００は、ホスト・コントローラ２０８２により相互に接続されるＣＰＵ２０００、ＲＡＭ２０２０、グラフィック・コントローラ２０７５、及び表示装置２０８０を有するＣＰＵ周辺部と、入出力コントローラ２０８４によりホスト・コントローラ２０８２に接続される通信インターフェイス２０３０、ハードディスクドライブ２０４０、及びＣＤ−ＲＯＭドライブ２０６０を有する入出力部と、入出力コントローラ２０８４に接続されるＲＯＭ２０１０、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０を有するレガシー入出力部とを備える。
【００４８】
ホスト・コントローラ２０８２は、ＲＡＭ２０２０と、高い転送レートでＲＡＭ２０２０をアクセスするＣＰＵ２０００及びグラフィック・コントローラ２０７５とを接続する。ＣＰＵ２０００は、ＲＯＭ２０１０及びＲＡＭ２０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ２０７５は、ＣＰＵ２０００等がＲＡＭ２０２０内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置２０８０上に表示させる。これに代えて、グラフィック・コントローラ２０７５は、ＣＰＵ２０００等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００４９】
入出力コントローラ２０８４は、ホスト・コントローラ２０８２と、比較的高速な入出力装置である通信インターフェイス２０３０、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０を接続する。通信インターフェイス２０３０は、ネットワークを介して他の装置と通信する。ハードディスクドライブ２０４０は、コンピュータ１９００内のＣＰＵ２０００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ２０６０は、ＣＤ−ＲＯＭ２０９５からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。
【００５０】
また、入出力コントローラ２０８４には、ＲＯＭ２０１０と、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０の比較的低速な入出力装置とが接続される。ＲＯＭ２０１０は、コンピュータ１９００が起動時に実行するブート・プログラム、及び／又は、コンピュータ１９００のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ２０５０は、フレキシブルディスク２０９０からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。入出力チップ２０７０は、フレキシブルディスク・ドライブ２０５０を入出力コントローラ２０８４へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ２０８４へと接続する。
【００５１】
ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供されるプログラムは、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、ＲＡＭ２０２０を介してコンピュータ１９００内のハードディスクドライブ２０４０にインストールされ、ＣＰＵ２０００において実行される。
【００５２】
コンピュータ１９００にインストールされ、コンピュータ１９００を、情報処理装置３０として機能させるプログラムは、プログラム実行モジュールと、権限管理モジュールと、収集モジュールと、管理データ格納モジュールと、確保処理モジュールとを備える。これらのプログラム又はモジュールは、ＣＰＵ２０００等に働きかけて、コンピュータ１９００を、プログラム実行部３２、権限管理部３４、収集部３６、管理データ格納部３８および確保処理部４０としてそれぞれ機能させる。
【００５３】
これらのプログラムに記述された情報処理は、コンピュータ１９００に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である、プログラム実行部３２、権限管理部３４、収集部３６、管理データ格納部３８および確保処理部４０として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ１９００の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の情報処理装置３０が構築される。
【００５４】
一例として、コンピュータ１９００と外部の装置等との間で通信を行う場合には、ＣＰＵ２０００は、ＲＡＭ２０２０上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス２０３０に対して通信処理を指示する。通信インターフェイス２０３０は、ＣＰＵ２０００の制御を受けて、ＲＡＭ２０２０、ハードディスクドライブ２０４０、フレキシブルディスク２０９０、又はＣＤ−ＲＯＭ２０９５等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス２０３０は、ＤＭＡ（ダイレクト・メモリ・アクセス）方式により記憶装置との間で送受信データを転送してもよく、これに代えて、ＣＰＵ２０００が転送元の記憶装置又は通信インターフェイス２０３０からデータを読み出し、転送先の通信インターフェイス２０３０又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【００５５】
また、ＣＰＵ２０００は、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０（ＣＤ−ＲＯＭ２０９５）、フレキシブルディスク・ドライブ２０５０（フレキシブルディスク２０９０）等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をＤＭＡ転送等によりＲＡＭ２０２０へと読み込ませ、ＲＡＭ２０２０上のデータに対して各種の処理を行う。そして、ＣＰＵ２０００は、処理を終えたデータを、ＤＭＡ転送等により外部記憶装置へと書き戻す。このような処理において、ＲＡＭ２０２０は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはＲＡＭ２０２０および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、ＣＰＵ２０００は、ＲＡＭ２０２０の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはＲＡＭ２０２０の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもＲＡＭ２０２０、メモリ、及び／又は記憶装置に含まれるものとする。
【００５６】
また、ＣＰＵ２０００は、ＲＡＭ２０２０から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、ＲＡＭ２０２０へと書き戻す。例えば、ＣＰＵ２０００は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合（又は不成立であった場合）に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【００５７】
また、ＣＰＵ２０００は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第１属性の属性値に対し第２属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、ＣＰＵ２０００は、記憶装置に格納されている複数のエントリの中から第１属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第２属性の属性値を読み出すことにより、所定の条件を満たす第１属性に対応付けられた第２属性の属性値を得ることができる。
【００５８】
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５の他に、ＤＶＤ又はＣＤ等の光学記録媒体、ＭＯ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ１９００に提供してもよい。
【００５９】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００６０】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００６１】
１０  コンピューティングシステム
２２  端末
２４  記憶装置
３０  情報処理装置
３２  プログラム実行部
３４  権限管理部
３６  収集部
３８  管理データ格納部
４０  確保処理部
４２  アクション取得部
４４  アクセス記録部
４６  ボリューム管理部
５２  入力部
５４  算出部
５６  選択部
１９００  コンピュータ
２０００  ＣＰＵ
２０１０  ＲＯＭ
２０２０  ＲＡＭ
２０３０  通信インターフェイス
２０４０  ハードディスクドライブ
２０５０  フレキシブルディスク・ドライブ
２０６０  ＣＤ−ＲＯＭドライブ
２０７０  入出力チップ
２０７５  グラフィック・コントローラ
２０８０  表示装置
２０８２  ホスト・コントローラ
２０８４  入出力コントローラ
２０９０  フレキシブルディスク
２０９５  ＣＤ−ＲＯＭ
【図１】
0005773493.tif 000002
【図２】
0005773493.tif 000003
【図３】
0005773493.tif 000004
【図４】
0005773493.tif 000005