(57)【要約】【課題】  ディスクキャッシュが機能していても、高速なアクセスが要求されるデータがメインメモリ上に保持されるようにする。【解決手段】  情報処理装置において、ファイルシステム処理部６１は、記憶装置１４内のファイルシステム２１とＲＡＭ１７内のファイルシステム５１と切り換えて使用し、記憶装置１４内のファイルシステム２１とＲＡＭ１７内のファイルシステム５１のうち、所定の条件に基づいてデータを書き込むファイルシステムを決定する。【選択図】  図３
2011203843.tif 000002
【特許請求の範囲】
【請求項１】
メインメモリと、
ファイルシステムを有する補助記憶装置と、
前記メインメモリ内にファイルシステムを生成し、前記補助記憶装置内のファイルシステムと前記メインメモリ内のファイルシステムとにアクセス可能なファイルシステム処理部、およびアプリケーションを実行するプロセッサとを備え、
前記ファイルシステム処理部は、前記補助記憶装置内のファイルシステムと前記メインメモリ内のファイルシステムと切り換えて使用し、前記補助記憶装置内のファイルシステムと前記メインメモリ内のファイルシステムのうち、所定の条件に基づいてデータを書き込むファイルシステムを決定すること、
を特徴とする情報処理装置。
【請求項２】
前記プロセッサは、オペレーティングシステムを実行し、
前記オペレーティングシステムは、前記メインメモリの一部領域をＯＳ管理領域として使用し、
前記ファイルシステム処理部は、前記メインメモリ内における前記ＯＳ管理領域以外の領域に、前記ファイルシステムを生成すること、
を特徴とする請求項１記載の情報処理装置。
【請求項３】
前記ファイルシステム処理部は、前記アプリケーションの種別に応じて、前記データを書き込むファイルシステムを決定することを特徴とする請求項１または請求項２記載の情報処理装置。
【請求項４】
前記ファイルシステム処理部は、前記データの種別に応じて、前記データを書き込むファイルシステムを決定することを特徴とする請求項１から請求項３のうちのいずれか１項記載の情報処理装置。
【請求項５】
前記ファイルシステム処理部は、前記データがテンポラリデータに指定されている場合、前記メインメモリ内のファイルシステムにそのデータを書き込むことを特徴とする請求項４記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関するものである。
【背景技術】
【０００２】
画像形成装置などの情報処理装置には、プロセッサ、メインメモリおよび補助記憶装置などからなるコンピュータを内蔵し、プロセッサで各種処理を実行するものがある。
【０００３】
通常、メインメモリは、補助記憶装置より高速であるが、容量が小さい。このため、プロセッサがデータの読み書きを実行する際に、メインメモリおよび補助記憶装置を連携させて、大量のデータを管理しつつ高速にデータの読み書きを行う様々な技術が導入されている。
【０００４】
そのような技術の１つとしてページングによる仮想記憶システムがある。仮想記憶システムでは、仮想記憶領域をページ分割し、処理に必要な一部のページのみを動的に選択して物理メモリ上に展開し残りのページを補助記憶装置に保持しておく。
【０００５】
さらに、仮想記憶システムを使用した装置として、物理メモリにおいて、オペレーティングシステム（以下、ＯＳという）の管理領域外に、データ領域を設け、一部のページをその領域に格納するものがある（例えば、特許文献１参照）。
【０００６】
また、別の技術として、ディスクキャッシュがある。この技術では、オペレーティングシステムにおいてディスクキャッシュをメインメモリ上に設け、補助記憶装置へのデータアクセス頻度を少なくして、データアクセスを高速化する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第４２６３９１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述の装置では、一部のページを物理メモリのＯＳ管理領域外に保持しているが、ＯＳが管理しているディスクキャッシュが一杯になると、ディスクキャッシュされているページの一部が補助記憶装置へページアウトされてしまう。したがって、テンポラリデータなどのように高速なアクセスが要求されるデータも補助記憶装置へページアウトされてしまい、そのデータを使用する処理が遅延する可能性がある。
【０００９】
つまり、上述の装置では、ページを物理メモリのＯＳ管理領域外に保持するため、ディスクキャッシュの退避先である補助記憶装置へそのページがキャッシュアウトされる可能性がある。
【００１０】
本発明は、上記の問題に鑑みてなされたものであり、ディスクキャッシュが機能していても、高速なアクセスが要求されるデータがメインメモリ上に保持されるようにする情報処理装置を得ることを目的とする。
【課題を解決するための手段】
【００１１】
上記の課題を解決するために、本発明では以下のようにした。
【００１２】
本発明に係る情報処理装置は、メインメモリと、ファイルシステムを有する補助記憶装置と、メインメモリ内にファイルシステムを生成し、補助記憶装置内のファイルシステムとメインメモリ内のファイルシステムとにアクセス可能なファイルシステム処理部、およびアプリケーションを実行するプロセッサとを備える。そして、ファイルシステム処理部は、補助記憶装置内のファイルシステムとメインメモリ内のファイルシステムと切り換えて使用し、補助記憶装置内のファイルシステムとメインメモリ内のファイルシステムのうち、所定の条件に基づいてデータを書き込むファイルシステムを決定する。
【００１３】
これにより、キャッシュアウト時に、高速なアクセスが要求されるデータはメインメモリ内のファイルシステムへ退避させられるため、ディスクキャッシュが機能していても、高速なアクセスが要求されるデータが補助記憶装置に退避させられずにメインメモリ上に保持される。
【００１４】
また、本発明に係る情報処理装置は、上記の情報処理装置に加え、次のようにしてもよい。この場合、プロセッサは、オペレーティングシステムを実行し、オペレーティングシステムは、メインメモリの一部領域をＯＳ管理領域として使用する。そして、ファイルシステム処理部は、メインメモリ内におけるＯＳ管理領域以外の領域に、ファイルシステムを生成する。
【００１５】
また、本発明に係る情報処理装置は、上記の情報処理装置のいずれかに加え、次のようにしてもよい。この場合、ファイルシステム処理部は、アプリケーションの種別に応じて、データを書き込むファイルシステムを決定する。
【００１６】
これにより、高速なデータアクセスが要求されるアプリケーションのデータをメインメモリ上に保持できる。
【００１７】
また、本発明に係る情報処理装置は、上記の情報処理装置のいずれかに加え、次のようにしてもよい。この場合、ファイルシステム処理部は、データの種別に応じて、データを書き込むファイルシステムを決定する。
【００１８】
これにより、高速なデータアクセスが要求されるデータをメインメモリ上に保持できる。
【００１９】
また、本発明に係る情報処理装置は、上記の情報処理装置のいずれかに加え、次のようにしてもよい。この場合、ファイルシステム処理部は、データがテンポラリデータに指定されている場合、メインメモリ内のファイルシステムにそのデータを書き込む。
【発明の効果】
【００２０】
本発明によれば、情報処理装置において、ディスクキャッシュが機能していても、高速なアクセスが要求されるデータが、メインメモリ上に保持される。
【図面の簡単な説明】
【００２１】
【図１】図１は、本発明の実施の形態に係る情報処理装置のハードウェア構成を示すブロック図である。
【図２】図２は、図１におけるＲＡＭのメモリマップの一例を示す図である。
【図３】図３は、図１に示す情報処理装置のソフトウェア構成を示すブロック図である。
【発明を実施するための形態】
【００２２】
以下、図に基づいて本発明の実施の形態を説明する。
【００２３】
図１は、本発明の実施の形態に係る情報処理装置のハードウェア構成を示すブロック図である。
【００２４】
図１に示す情報処理装置１は、コンピュータを内蔵しており、各種プログラムを実行して演算や処理を実行する。情報処理装置１は、組み込みシステムを有する画像形成装置などの電子機器である。
【００２５】
情報処理装置１において、表示装置１１は、操作画面などを表示する装置である。表示装置１１としては、例えば液晶ディスプレイが使用される。入力装置１２は、操作画面に対する操作を入力するための装置である。入力装置１２としては、例えばキーボードやマウスが使用される。より具体的には、図示せぬグラフィック回路が描画処理およびビデオ信号の出力を行い、表示装置１１は、そのビデオ信号に従って画面を表示する。また、図示せぬインタフェースが入力装置１２との間のデータの送受を行う。
【００２６】
また、インタフェース１３は、内部デバイス、周辺装置、またはネットワーク機器を接続され、データ通信を行う回路である。インタフェース１３としては、例えば、内部デバイスに接続されるＩ／Ｏ回路、ＵＳＢ（Universal Serial Bus）といった周辺機器インタフェース、あるいはネットワークインタフェースが使用される。例えば、この情報処理装置１が画像形成装置に内蔵されている場合には、インタフェース１３には、プリントエンジン、スキャンエンジンなどの内部デバイスを制御するためのコントローラが接続され、インタフェース１３を介してこの情報処理装置１から内部デバイスへの各種指令が供給される。
【００２７】
記憶装置１４は、ファイルシステム２１を有し、ＯＳプログラム２２、アプリケーションプログラム２３などのプログラムや、データを格納する補助記憶装置である。記憶装置１４としては、不揮発性半導体メモリ、ハードディスク駆動装置、ディスクアレイ装置などが使用される。
【００２８】
また、ＣＰＵ（Central Processing Unit）１５は、プログラムに記述された処理を実行するプロセッサである。また、ＲＯＭ（Read Only Memory）１６は、プログラムおよびデータを予め記憶した不揮発性のメモリである。また、ＲＡＭ（Random Access Memory）１７は、プログラムを実行する際にそのプログラムおよびデータを一時的に記憶するメインメモリである。ＣＰＵ１５、ＲＯＭ１６およびＲＡＭ１７は、バスやコントローラチップを介して互いに接続されており、さらに、バスやコントロールチップを介して記憶装置１４、インタフェース１３、表示装置１１のグラフィック回路、および入力装置１２のインタフェースに接続されている。
【００２９】
ＣＰＵ１５は、記憶装置１４またはＲＯＭ１６に格納されているプログラムをＲＡＭ１７にロードして実行する。装置１の起動時には、ＣＰＵ１５は、ＯＳプログラム２２をロードして実行する。これにより、ＯＳ３１が実現される。その後、ＣＰＵ１５は、ユーザの指示などによりアプリケーションプログラム２３をロードして実行する。これにより、アプリケーション３２が実現される。アプリケーション３２は、所定の処理を実行し、必要に応じて、テンポラリデータなどをファイルシステム内のファイルに一時的に保持する。
【００３０】
図２は、図１におけるＲＡＭ１７のメモリマップの一例を示す図である。
【００３１】
図２に示すように、ＲＡＭ１７の記憶領域の一部が、ＯＳ３１によりＯＳ管理領域として確保される。ＯＳ３１のカーネル４１やディスクキャッシュ４２は、このＯＳ管理領域内に確保される。また、ＯＳ３１のファイルシステム処理部は、ＲＡＭ１７におけるそのＯＳ管理領域以外の一部または全部の領域に、記憶装置１４のファイルシステム２１とは別のファイルシステム５１を生成する。
【００３２】
図３は、図１に示す情報処理装置のソフトウェア構成を示すブロック図である。
【００３３】
図３において、ファイルシステム処理部６１は、ＯＳ３１においてファイルシステムを管理する処理部であり、ディスクアクセス調停部６１およびディスクキャッシュ処理部７２を有する。
【００３４】
ディスクアクセス調停部６１は、複数のアプリケーション３２からの、ファイルシステムへのアクセス要求（データ書込要求、データ読出要求など）に基づいて、記憶装置１４またはＲＡＭ１７上のファイルシステム２１，５１へのアクセスを実行する処理部である。
【００３５】
ディスクキャッシュ処理部７２は、ディスクキャッシュ４２に対するデータ入出力を管理する処理部である。ディスクキャッシュ４２は、記憶装置１４およびＲＡＭ１７上のファイルシステム２１，５１について設けられており、ディスクキャッシュ処理部７２は、記憶装置１４上のファイルシステム２１におけるデータのキャッシュインおよびキャッシュアウトを行うとともに、ＲＡＭ１７上のファイルシステム５１におけるデータのキャッシュインおよびキャッシュアウトを行う。したがって、ＲＡＭ１７上のファイルシステム５１におけるデータは、ディスクキャッシュ４２からキャッシュアウトしても、ＲＡＭ１７上に保持される。
【００３６】
次に、上記情報処理装置の動作について説明する。
【００３７】
装置１が起動すると、ＯＳ３１が起動し、ＲＡＭ１７の記憶領域が図２に示すように割り当てられる。
【００３８】
そして、ディスクアクセス調停部７１は、アプリケーション３２からのデータ書込要求があると、アプリケーション３２の種別に応じて、データを書き込むファイルシステムを、ファイルシステム２１，５１から選択し、その選択したファイルシステムを使用する。つまり、そのアプリケーション３２からのアクセス要求があると、ディスクアクセス調停部７１は、その選択したファイルシステムに対して、ディスクキャッシュ処理部７２を介してアクセスを行う。
【００３９】
なお、あるアプリケーション３２が書き込んだデータを別のアプリケーション３２が読み出す場合には、ディスクアクセス調停部７１は、例えば、その別のアプリケーション３２からのアクセス要求の対象のデータをアプリケーション３２を特定し、その特定したアプリケーション３２に対して使用されるファイルシステムを特定し、そのファイルシステムにアクセスする。
【００４０】
ディスクアクセス調停部７１がファイルシステム２１，５１からデータ読出をするとき、ディスクキャッシュ処理部７２は、必要に応じてキャッシュインおよび／またはキャッシュアウトを行って、対象データをアプリケーション３２に渡す。このとき、データがキャッシュアウトされる場合には、そのデータがＲＡＭ１７のファイルシステム５１におけるものであれば、ファイルシステム５１へキャッシュアウトされ、そのデータが記憶装置１４のファイルシステム２１におけるものであれば、ファイルシステム２１へキャッシュアウトされる。
【００４１】
また、ディスクアクセス調停部７１がファイルシステム２１，５１へデータ書込をするとき、ディスクキャッシュ処理部７２は、必要に応じてキャッシュアウトを行って、対象データをアプリケーション３２に渡す。このとき、データがキャッシュアウトされる場合には、そのデータがＲＡＭ１７のファイルシステム５１におけるものであれば、ファイルシステム５１へキャッシュアウトされ、そのデータが記憶装置１４のファイルシステム２１におけるものであれば、ファイルシステム２１へキャッシュアウトされる。
【００４２】
以上のように、上記実施の形態によれば、ファイルシステム処理部６１は、記憶装置１４内のファイルシステム２１とＲＡＭ１７内のファイルシステム５１と切り換えて使用し、記憶装置１４内のファイルシステム２１とＲＡＭ１７内のファイルシステム５１のうち、所定の条件に基づいてデータを書き込むファイルシステムを決定する。
【００４３】
これにより、キャッシュアウト時に、高速なアクセスが要求されるデータはメインメモリ内のファイルシステム５１へ退避させられるため、ディスクキャッシュが機能していても、高速なアクセスが要求されるデータが補助記憶装置１４に退避させられずにメインメモリ上に保持される。
【００４４】
また、上記実施の形態によれば、ファイルシステム５１が、ＯＳ管理領域外に設けられるため、ファイルシステム５１によるディスクキャッシュ４２への影響（例えば、容量不足等）が生じずに済む。
【００４５】
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【００４６】
例えば、上記実施の形態において、ファイルシステム処理部６１のディスクアクセス調停部７１は、アプリケーション３２からのアクセス要求の対象となるデータの種別に応じて、データを書き込むファイルシステムを決定するようにしてもよい。
【００４７】
例えば、ファイルシステム処理部６１は、データがテンポラリデータに指定されている場合、ＲＡＭ１７のファイルシステム５１にそのデータを書き込むようにしてもよい。そのようなテンポラリデータとしては、画像形成装置内で画像処理の途中で生成される中間データなどがある。また、ファイルシステム処理部６１は、データが、保存データに指定されている場合、記憶装置１４のファイルシステム２１にそのデータを書き込むようにしてもよい。保存データは、継続的に保持し続ける必要があるデータであって、例えば、画像形成装置の印刷ジョブなどの設定値、画像形成装置による画像スキャンで生成された画像データなどがある。これらの場合、アプリケーション３２（つまり、ユーザプログラム）が、ディスクアクセス調停部７１にデータ種別を通知したりする。
【００４８】
また、アプリケーション３２（つまり、ユーザプログラム）が、使用するファイルシステム（ファイルシステム２１またはファイルシステム５１）を直接指定するようにしてもよい。
【産業上の利用可能性】
【００４９】
本発明は、例えば、プリンタ、コピー機、複合機などの画像形成装置に適用可能である。
【符号の説明】
【００５０】
１  情報処理装置
１４  記憶装置（補助記憶装置の一例）
１５  ＣＰＵ（プロセッサの一例）    
１７  ＲＡＭ（メインメモリの一例）
２１，５１  ファイルシステム
３１  オペレーティングシステム
３２  アプリケーション
【図１】
2011203843.tif 000003
【図２】
2011203843.tif 000004
【図３】
2011203843.tif 000005