(57)【要約】  情報処理装置は、プログラムを記憶するＲＯＭと、ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、ＲＯＭ又はＲＡＭからプログラムを読み込んで実行するプログラム実行部と、プログラム実行部から出力された仮想アドレスをＲＯＭ又はＲＡＭの物理アドレスに変換するメモリ管理部と、メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応するＲＯＭ又はＲＡＭの物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、情報処理装置のイベントの変化を検知する検知部と、プログラム実行部がＲＯＭからプログラムを読み出すＲＯＭ動作中に検知部がイベントの変化を検知したとき、ＲＯＭ動作からプログラムをＲＡＭから読み出すＲＡＭ動作への切り替えを指示する動作切替部と、動作切替部からの指示に応じて、メモリ管理部が参照するページテーブルを更新するページテーブル更新部とを備える。
2009028106.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを記憶するＲＯＭと、
前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、
前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、
前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、
前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、
当該情報処理装置のイベントの変化を検知する検知部と、
前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が前記イベントの変化を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、
前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、
を備えたことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記ＲＡＭの空き容量を検出する容量検出部を備え、
前記動作切替部は、前記検知部が前記イベントの変化又は前記特定のアプリケーションの起動を検知したとき、前記ＲＡＭに所定の空き容量があれば、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示することを特徴とする情報処理装置。
【請求項３】
請求項１に記載の情報処理装置であって、
前記ページテーブル記憶部は、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭの物理アドレスとのマッピングデータが格納されたＲＯＭ用のページテーブルと、前記仮想アドレスと当該仮想アドレスに対応する前記ＲＡＭの物理アドレスとのマッピングデータが格納されたＲＡＭ用のページテーブルと、を含むことを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置であって、
前記イベントの変化は、前記プログラム実行部のクロック速度の変化であり、
前記動作切替部は、前記クロック速度の低速から高速への変化を前記検知部が検知したとき、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示することを特徴とする情報処理装置。
【請求項５】
請求項１に記載の情報処理装置であって、
前記イベントの変化は、当該情報処理装置に対する操作であって、
前記動作切替部は、当該情報処理装置に対する操作を前記検知部が検知したとき、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示することを特徴とする情報処理装置。
【請求項６】
請求項１に記載の情報処理装置であって、
前記イベントの変化は、定常的に発生する処理以外の不定期の割り込み処理の発生であって、
前記動作切替部は、前記不定期の割り込み処理の発生を前記検知部が検知したとき、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示することを特徴とする情報処理装置。
【請求項７】
請求項１に記載の情報処理装置であって、
前記イベントの変化は、特定のアプリケーションの起動であって、
前記動作切替部は、前記特定のアプリケーションが起動されたとき、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示することを特徴とする情報処理装置。
【請求項８】
プログラムを記憶するＲＯＭと、
前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、
前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、
前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、
前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置が行う動作切替方法であって、
当該情報処理装置のイベントの変化を検知し、
前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記イベントの変化を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示し、
前記指示に応じて、前記メモリ管理部が参照するページテーブルを更新することを特徴とする動作切替方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＲＯＭ動作とＲＡＭ動作を切り替える情報処理装置及び動作切替方法に関する。
【背景技術】
【０００２】
プログラムを実行して所望の機能を実現する情報処理装置は、プログラムを記憶するＲＯＭ（Read Only Memory）と、ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭ（Random Access Memory）と、仮想アドレスを物理アドレスに変換するＭＭＵ（メモリ管理ユニット）と、仮想アドレスとそれに対応する物理アドレスとのマッピングデータを記憶するページテーブルと、ＭＭＵを参照してＲＯＭ又はＲＡＭに格納されているプログラムを読み出して実行するＣＰＵ（Central Processing Unit）とを備える。特許文献１で説明されているように、ＲＯＭに比べてＲＡＭは高速動作が可能である。すなわち、ＣＰＵによるＲＡＭの読み込み速度は、ＲＯＭの読み込み速度よりも早い。このため、ＲＯＭに格納されているデータをＲＡＭに一時格納して、ＣＰＵがＲＡＭに格納されているデータを読み込めば、高速動作を実現できる。【０００３】
但し、ＲＯＭから累積的にプログラムをＲＡＭに格納していけば、ＲＡＭの空き容量は少なくなる。このため、ＲＡＭの空き容量が十分であれば、ＣＰＵはＲＡＭからプログラムを読み込むＲＡＭ動作を行うが、ＲＡＭに空き容量がないときは、ＲＯＭからプログラムを読み込むＲＯＭ動作に切り替える。【０００４】
図６は、ページテーブルに物理アドレスが設定されていない状態でＲＡＭ動作を行う情報処理装置を示すブロック図である。図６に示すように、ＣＰＵ１は、仮想アドレスに対応する物理アドレスをＭＭＵ３に問い合わせる（１）。ＭＭＵ３は、ページテーブル５を参照する（２）が、ＲＡＭ７の物理アドレスがページテーブル５に設定されていないため、ページフォルトが発生する。このため、ＲＯＭ９から該当するアドレス範囲のデータがＲＡＭ７にコピーされ（３）、当該データがコピーされたＲＡＭ７の物理アドレスをページテーブル５に設定する（４）。ＭＭＵ３は、ページテーブル５から得られた物理アドレスを、（１）の問い合わせの回答としてＣＰＵ１に返す。【０００５】
図７は、ページテーブルに物理アドレスが設定されている状態でＲＡＭ動作を行う情報処理装置を示すブロック図である。図７に示すように、ＣＰＵ１は、仮想アドレスに対応する物理アドレスをＭＭＵ３に問い合わせる（１）。ＭＭＵ３は、ページテーブル５を参照して（２）、ＲＡＭ７の物理アドレスを得る。ＭＭＵ３は、ページテーブル５から得られた物理アドレスを、（１）の問い合わせの回答としてＣＰＵ１に返す。【０００６】
図８は、ページテーブルにＲＯＭの物理アドレスを設定する様子を示す情報処理装置のブロック図である。図８に示すように、ＲＯＭのページテーブルがないときはページテーブル５を作成し（１）、ＲＯＭ９の該当する物理アドレスがページテーブル５に設定される。【０００７】
図９は、ページテーブルにＲＯＭの物理アドレスが設定されている状態でＲＯＭ動作を行う情報処理装置を示すブロック図である。図９に示すように、ＣＰＵ１は、仮想アドレスに対応する物理アドレスをＭＭＵ３に問い合わせる（１）。ＭＭＵ３は、ページテーブル５を参照して（２）、ＲＯＭ９の物理アドレスを得る。ＭＭＵ３は、ページテーブル５から得られた物理アドレスを、（１）の問い合わせの回答としてＣＰＵ１に返す。【０００８】
上述したように、情報処理装置は、ＲＡＭの空き容量に応じてＲＡＭ動作からＲＯＭ動作に切り替える。図１０は、ＲＡＭに十分な空き容量があるためＲＡＭ動作を行う情報処理装置を示すブロック図である。図１０に示すように、ＣＰＵ１は、ＲＯＭ９のヘッダを参照して、実行するプログラムのデータサイズを取得し（１）、ＲＡＭ７にこのデータサイズ以上の空き容量があるかを確認する（２）。ＲＡＭ７に十分な空き容量があれば、実行するプログラムのデータがＲＯＭ９からＲＡＭ７へコピーされる（３）。ＣＰＵ１は、ＲＯＭ９からＲＡＭ７にコピーされたプログラムを読み込んで実行するＲＡＭ動作を行う。この後、ＲＡＭ７に実行するプログラムのデータサイズ以上の空き容量がなくなれば、ＣＰＵ１は、ＲＯＭ９からプログラムを読み込んで実行するＲＯＭ動作に切り替える。【０００９】
【特許文献１】特開平１１−１２９５５８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上記説明したように、ＣＰＵは、実行するプログラムのデータサイズとＲＡＭの空き容量とに応じて、ＲＡＭ動作からＲＯＭ動作へと切り替える。ＲＡＭの容量は限られているため、情報処理装置で多くのプログラムが実行されたり、データサイズの大きなプログラムが実行されると、ＲＡＭの空き容量がなくなり、ＲＯＭ動作に移行する。ＲＯＭ動作時のＣＰＵの読み込み速度はＲＡＭ動作時と比べて遅いため、ＲＡＭ動作時に比べると、プログラムの実行速度が落ちる。したがって、ＲＡＭに空き容量がない状態では、プログラムを早く実行できない。なお、ＲＡＭ７に格納されているデータを破棄すればＲＡＭ７の空き容量を確保できるが、データを破棄するための処理を行わなければならない。したがって、この場合もプログラム実行速度を上げることはできない。【００１１】
本発明の目的は、ＲＡＭを効率的に利用しつつ、状況に応じてプログラムの実行速度を適宜上げることのできる情報処理装置及び動作切替方法を提供することである。
【課題を解決するための手段】
【００１２】
本発明は、プログラムを記憶するＲＯＭと、前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、当該情報処理装置のイベントの変化を検知する検知部と、前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が前記イベントの変化を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、を備えた情報処理装置を提供する。【００１３】
上記情報処理装置は、前記ＲＡＭの空き容量を検出する容量検出部を備え、前記動作切替部は、前記検知部が前記イベントの変化又は前記特定のアプリケーションの起動を検知したとき、前記ＲＡＭに所定の空き容量があれば、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示する。【００１４】
上記情報処理装置では、前記ページテーブル記憶部は、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭの物理アドレスとのマッピングデータが格納されたＲＯＭ用のページテーブルと、前記仮想アドレスと当該仮想アドレスに対応する前記ＲＡＭの物理アドレスとのマッピングデータが格納されたＲＡＭ用のページテーブルと、を含む。【００１５】
上記情報処理装置では、前記イベントの変化は、前記プログラム実行部のクロック速度の変化であり、前記動作切替部は、前記クロック速度の低速から高速への変化を前記検知部が検知したとき、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示する。【００１６】
上記情報処理装置では、前記イベントの変化は、当該情報処理装置に対する操作であって、前記動作切替部は、当該情報処理装置に対する操作を前記検知部が検知したとき、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示する。【００１７】
上記情報処理装置では、前記イベントの変化は、定常的に発生する処理以外の不定期の割り込み処理の発生であって、前記動作切替部は、前記不定期の割り込み処理の発生を前記検知部が検知したとき、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示する。【００１８】
上記情報処理装置では、前記イベントの変化は、特定のアプリケーションの起動であって、前記動作切替部は、前記特定のアプリケーションが起動されたとき、前記ＲＯＭ動作から前記ＲＡＭ動作への切り替えを指示する。【００１９】
本発明は、プログラムを記憶するＲＯＭと、前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置が行う動作切替方法であって、当該情報処理装置のイベントの変化を検知し、前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記イベントの変化を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示し、前記指示に応じて、前記メモリ管理部が参照するページテーブルを更新する動作切替方法を提供する。
【発明の効果】
【００２０】
本発明に係る情報処理装置及び動作切替方法によれば、ＲＡＭを効率的に利用しつつ、状況に応じてプログラムの実行速度を適宜上げることができる。
【図面の簡単な説明】
【００２１】
【図１】第１の実施形態の情報処理装置を示すブロック図
【図２】第１の実施形態の情報処理装置が行う切り替え処理を示すフローチャート
【図３】イベントの発生に応じた切り替え処理を示すフローチャート
【図４】第２の実施形態の情報処理装置を示すブロック図
【図５】特定のアプリケーションの起動に応じた切り替え処理を示すフローチャート
【図６】ページテーブルに物理アドレスが設定されていない状態でＲＡＭ動作を行う情報処理装置を示すブロック図
【図７】ページテーブルに物理アドレスが設定されている状態でＲＡＭ動作を行う情報処理装置を示すブロック図
【図８】ページテーブルにＲＯＭの物理アドレスを設定する様子を示す情報処理装置のブロック図
【図９】ページテーブルにＲＯＭの物理アドレスが設定されている状態でＲＯＭ動作を行う情報処理装置を示すブロック図
【図１０】ＲＡＭに十分な空き容量があるためＲＡＭ動作を行う情報処理装置を示すブロック図
【符号の説明】
【００２２】
１０１  ＣＰＵ
１０３  ＲＯＭ
１０５  ＲＡＭ
１０７  ＭＭＵ（メモリ管理ユニット）
１０９  ページ管理部
１１１  イベント検知部
１１３  状態判定部
１１５，２１５  動作切替部
１５１  ページテーブル
１５３  ＲＯＭ用のページテーブル
１５５  ＲＡＭ用のページテーブル
１５７  ページフォルト処理部
１５９  ページテーブル更新部
２１１  起動処理部
２２１  ＲＡＭ動作対象アプリケーション記憶テーブル
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施形態について、図面を参照して説明する。【００２４】
（第１の実施形態）
図１は、第１の実施形態の情報処理装置を示すブロック図である。図１に示すように、第１の実施形態の情報処理装置は、ＣＰＵ１０１と、ＲＯＭ１０３と、ＲＡＭ１０５と、ＭＭＵ（メモリ管理ユニット）１０７と、ページ管理部１０９と、イベント検知部１１１と、状態判定部１１３と、動作切替部１１５とを備える。【００２５】
ＣＰＵ１０１は、ＭＭＵ１０７を参照してＲＯＭ１０３又はＲＡＭ１０５に格納されているプログラムを読み込んで実行する。ＲＯＭ１０３は、ＣＰＵ１０１が実行するプログラムを記憶する。ＲＡＭ１０５は、ＲＯＭ１０３から読み出されたプログラムを一時記憶する。ＭＭＵ１０７は、ＣＰＵ１０１がＲＯＭ１０３又はＲＡＭ１０５からプログラムを読み込む前にＣＰＵ１０１から出力された仮想アドレスを物理アドレスに変換する。【００２６】
ページ管理部１０９は、ページテーブル１５１と、ページフォルト処理部１５７と、ページテーブル更新部１５９とを有する。ページテーブル１５１は、仮想アドレスとそれに対応する物理アドレスとのマッピングデータを記憶する。ページテーブル１５１はＭＭＵ１０７によって参照される。なお、ページテーブル１５１には、ＲＯＭ用のページテーブル１５３と、ＲＡＭ用のページテーブル１５５とが含まれる。ＲＯＭ用のページテーブル１５３には、仮想アドレスとＲＯＭ１０３の物理アドレスとのマッピングデータが格納される。一方、ＲＡＭ用のページテーブル１５５には、仮想アドレスとＲＡＭ１０５の物理アドレスとのマッピングデータが格納される。【００２７】
ページフォルト処理部１５７は、ＲＯＭ１０３からプログラムを読み出してＲＡＭ１０５に書き込む。ページテーブル更新部１５９は、ページフォルト処理部１５７がＲＯＭ１０３からＲＡＭ１０５にプログラムを書き込んだ際、ＲＡＭ用のページテーブル１５５を更新する。また、ページテーブル更新部１５９は、ＭＭＵ１０７が参照するページテーブルとして、ＲＯＭ用のページテーブル１５３とＲＡＭ用のページテーブル１５５を切り替える。すなわち、ページテーブル更新部１５９は、ＣＰＵ１０１がＲＯＭ１０３からプログラムを読み込むＲＯＭ動作を行う場合には、ＭＭＵ１０７が参照するページテーブルとしてＲＯＭ用のページテーブル１５３を設定し、ＣＰＵ１０１がＲＡＭ１０５からプログラムを読み込むＲＡＭ動作を行う場合には、ＭＭＵ１０７が参照するページテーブルとしてＲＡＭ用のページテーブル１５５を設定する。【００２８】
イベント検知部１１１は、イベントの変更を検知する。イベントの変化とは、ＣＰＵ１０１のクロック速度の変化や、情報処理装置に設けられた図示しないボタンを用いたユーザによるボタン操作、定常的に発生する処理以外の不定期の割り込み処理の発生等である。状態判定部１１３は、動作切替部１１５からの指示に応じてＲＡＭ１０５の空き容量を検出し、ＲＯＭ動作からＲＡＭ動作に切り替え可能な空き容量がＲＡＭ１０５にあるかを判定して、その判定結果を動作切替部に送る。【００２９】
動作切替部１１５は、ＣＰＵ１０１がＲＯＭ動作中にイベント検知部１１１がイベントの変化を検知したとき、状態判定部１１３による判定結果に応じて、ページ管理部１０９が有するページテーブル更新部１５９にＲＯＭ動作からＲＡＭ動作への切り替えを指示する。すなわち、動作切替部１１５は、状態判定部１１３によってＲＡＭ１０５に十分な空き容量があると判定されたときは、ページテーブル更新部１５９にＲＯＭ動作からＲＡＭ動作への切り替えを指示するが、状態判定部１１３によってＲＡＭ１０５によって十分な空き容量がないと判定されたときは、当該指示を行わない。【００３０】
図２は、本実施形態の情報処理装置が行う切り替え処理を示すフローチャートである。図２に示すように、ステップＳ１１でＲＡＭ動作への切り替えが判断され、ＲＡＭ動作への切り替えである場合はステップＳ１３に進み、ＲＡＭ動作への切り替えでない場合はステップＳ１７に進む。ステップＳ１３では、ＲＡＭ動作への切り替えに必要な空き容量がＲＡＭ１０５にあるかが判断され、ある場合はステップＳ１５に進み、ない場合は処理を終了する。ステップＳ１５では、頻度の高いアプリケーションであるかが判断され、頻度が高い場合はステップＳ１７に進み、低い場合は処理を終了する。【００３１】
ステップＳ１７では、指定されたアプリケーションを切り替えるように動作切替部１１５に要求する。次に、ステップＳ１９では、指定されたアプリケーションのページテーブルを切り替えるようにページテーブル更新部１５９に要求する。次に、ステップＳ２１では、ページテーブル更新部１５９で指定されたページテーブルを切り替える。【００３２】
また、図３は、イベントの発生に応じた切り替え処理を示すフローチャートである。図３に示すように、ステップＳ３１でＣＰＵ１０１のクロック速度が切り替わると、ステップＳ３３でクロック速度が低速から高速に切り替わったかを判断し、高速への切り替わりの場合はステップＳ３５に進み、その逆（高速から低速への切り替わり）の場合はステップＳ３７に進む。ステップＳ３５では、ＲＯＭ動作からＲＡＭ動作に切り替えられ、ステップＳ３７では、ＲＡＭ動作からＲＯＭ動作に切り替えられる。【００３３】
以上説明したように、本実施形態の情報処理装置では、イベントの発生に応じて、ＲＡＭ１０５に十分な空き容量があればＲＯＭ動作からＲＡＭ動作に切り替えられる。従来は、ＲＡＭ１０５に空き容量があれば常にＲＡＭ動作を行っていたが、本実施形態では、状況に応じてＲＡＭ動作の要／不要を判断し、必要なときのみＲＡＭ動作を行う。例えば、ＣＰＵ１０１のクロック速度が低速から高速に変化したときや、ボタン操作が行われたとき、不定期の割り込み処理が発生したときには、ＲＡＭ１０５に十分な空き容量があれば、ＲＯＭ動作からＲＡＭ動作に切り替えられる。なお、ＣＰＵ１０１のクロック速度が高速から低速に変化したときや、ボタン操作が一定期間行われないとき、不定期の割り込み処理が終了したときには、ＲＡＭ動作からＲＯＭ動作に切り替えられる。このように、状況に応じてＲＯＭ動作とＲＡＭ動作を切り替えることによって、ＲＡＭ１０５を効率的に利用しつつ、プログラムの実行速度を適宜上げることができる。【００３４】
（第２の実施形態）
図４は、第２の実施形態の情報処理装置を示すブロック図である。第２の実施形態の情報処理装置は、第１の実施形態と同様のＣＰＵ１０１、ＲＯＭ１０３、ＲＡＭ１０５、ＭＭＵ１０７、ページ管理部１０９及び状態判定部１１３と、起動処理部２１１と、動作切替部２１５とを備える。ＣＰＵ１０１、ＲＯＭ１０３、ＲＡＭ１０５、ＭＭＵ１０７、ページ管理部１０９及び状態判定部１１３は、第１の実施形態と同様であるため、説明を省略する。【００３５】
起動処理部２１１は、情報処理装置のユーザによって指定されたアプリケーションの起動を処理する。起動処理部２１１は、特定のアプリケーションの起動が指示されると、ＲＯＭ動作からＲＡＭ動作への切り替えを動作切替部２１５に指示する。なお、起動処理部２１１は、どのアプリケーションの起動が指示されたとき上記指示を行うかについて設定されたテーブル２２１を記憶する。【００３６】
動作切替部２１５は、ＣＰＵ１０１がＲＯＭ動作中に起動処理部２１１から上記指示を受け取ったとき、状態判定部１１３による判定結果に応じて、ページ管理部１０９が有するページテーブル更新部１５９にＲＯＭ動作からＲＡＭ動作への切り替えを指示する。すなわち、動作切替部２１５は、第１の実施形態と同様に、状態判定部１１３によってＲＡＭ１０５に十分な空き容量があると判定されたときは、ページテーブル更新部１５９にＲＯＭ動作からＲＡＭ動作への切り替えを指示するが、状態判定部１１３によってＲＡＭ１０５によって十分な空き容量がないと判定されたときは、当該指示を行わない。【００３７】
図５は、特定のアプリケーションの起動に応じた切り替え処理を示すフローチャートである。図５に示すように、ステップＳ４１でアプリケーションが起動されると、ステップＳ４３でＲＡＭ動作を行うかを判断し、行う場合はステップＳ４５に進み、行わない場合はステップＳ４９に進む。ステップＳ４５では、ＲＡＭ動作に必要な空き容量がＲＡＭ１０５にあるかが判断され、ある場合はステップＳ４７に進み、ない場合はステップＳ４９に進む。ステップＳ４７では、ページテーブル更新部１５９へＲＡＭ動作用のページテーブルの作成を要求する。ステップＳ４９では、ページテーブル更新部１５９へＲＯＭ動作用のページテーブルの作成を要求する。【００３８】
次に、ステップＳ５１では、アプリケーションの起動に対して動作を切り替えるアプリケーションは存在するか判断し、ある場合はステップＳ５３に進み、ない場合はステップＳ５７に進む。ステップＳ５３では、対象のアプリケーションの全てに対して、ステップＳ５５を行う。ステップＳ５５では、対象のアプリケーションの実行を切り替える。ステップＳ５７では、ステップＳ４１で起動されたアプリケーションの使用頻度を更新する。【００３９】
以上説明したように、本実施形態の情報処理装置では、特定のアプリケーションの起動に応じて、ＲＡＭ１０５に十分な空き容量があればＲＯＭ動作からＲＡＭ動作に切り替えられる。なお、特定のアプリケーションの実行が終了したときは、ＲＡＭ動作からＲＯＭ動作に切り替えられる。このように、状況に応じてＲＯＭ動作とＲＡＭ動作を切り替えることによって、ＲＡＭ１０５を効率的に利用しつつ、特定のアプリケーションの実行速度を適宜上げることができる。【００４０】
なお、上記特定のアプリケーションは、ユーザによって変更可能である。ＲＡＭ動作によって実行される特定のアプリケーションが変更されると、起動処理部２１１が記憶するテーブル２２１が書き換えられる。【００４１】
また、起動処理部２１１は、アプリケーション毎に使用頻度を測定する使用頻度測定部（図示せず）を有しても良い。このとき、起動処理部２１１は、使用頻度測定部によって測定された使用頻度に基づいて、テーブル２２１に登録する特定のアプリケーションを決定しても良い。この場合、使用頻度の高いアプリケーションが自動的にテーブル２２１に登録される。【００４２】
上記第１及び第２の実施形態では、ページテーブル１５１にＲＯＭ用のページテーブル１５３とＲＡＭ用のページテーブル１５５とが含まれ、ページテーブル更新部１５９が、ＲＯＭ用のページテーブル１５３とＲＡＭ用のページテーブル１５５を切り替えているが、ページテーブル１５１はＲＯＭ用とＲＡＭ用とに分かれていない形態であっても良い。この形態の場合、ＲＯＭ動作とＲＡＭ動作の切り替えが発生すると、ページテーブル１５１は書き換えられる。【００４３】
例えば、ＲＯＭ動作からＲＡＭ動作に移行する際、ページテーブル更新部１５９は、ページテーブル１５１に格納されていたＲＯＭ１０３の物理アドレスを消去する。その後、ＲＡＭ動作が行われるとＭＭＵ１０７はページテーブル１５１を参照するが、ページテーブル１５１には仮想アドレスとＲＡＭ１０５の物理アドレスとのマッピングデータが格納されていないため、ページフォルトが発生する。このため、ページフォルト処理部１５７は、ＲＯＭ１０３からプログラムを読み出してＲＡＭ１０５に書き込む。また、ページテーブル更新部１５９は、ページテーブル１５１にＲＡＭ１０５の物理アドレスを格納する。【００４４】
本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
【産業上の利用可能性】
【００４５】
本発明に係る情報処理装置は、ＲＯＭ動作とＲＡＭ動作を切り替えてプログラムを実行し、所望の機能を実現する電子機器等として有用である。
【図１】
2009028106.tif 000003
【図２】
2009028106.tif 000004
【図３】
2009028106.tif 000005
【図４】
2009028106.tif 000006
【図５】
2009028106.tif 000007
【図６】
2009028106.tif 000008
【図７】
2009028106.tif 000009
【図８】
2009028106.tif 000010
【図９】
2009028106.tif 000011
【図１０】
2009028106.tif 000012
【手続補正書】
【提出日】平成20年12月25日(2008.12.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プログラムを記憶するＲＯＭと、
前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、
前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、
前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、
前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、
前記プログラム実行部のクロック速度の変化を検知する検知部と、
前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が前記クロック速度の低速から高速への変化を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、
前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、
を備えたことを特徴とする情報処理装置。
【請求項２】
プログラムを記憶するＲＯＭと、
前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、
前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、
前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、
前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、
当該情報処理装置に対する操作を検知する検知部と、
前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が当該情報処理装置に対する操作を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、
前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、
を備えたことを特徴とする情報処理装置。
【請求項３】
プログラムを記憶するＲＯＭと、
前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、
前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、
前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、
前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、
当該情報処理装置において定常的に発生する処理以外の不定期の割り込み処理の発生を検知する検知部と、
前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が前記不定期の割り込み処理の発生を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、
前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、
を備えたことを特徴とする情報処理装置。
【請求項４】
（削除）
【請求項５】
（削除）
【請求項６】
（削除）
【請求項７】
（削除）
【請求項８】
（削除）
【手続補正書】
【提出日】平成22年2月1日(2010.2.1)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＲＯＭ動作とＲＡＭ動作を切り替える情報処理装置に関する。
【背景技術】
【０００２】
プログラムを実行して所望の機能を実現する情報処理装置は、プログラムを記憶するＲＯＭ（Read Only Memory）と、ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭ（Random Access Memory）と、仮想アドレスを物理アドレスに変換するＭＭＵ（メモリ管理ユニット）と、仮想アドレスとそれに対応する物理アドレスとのマッピングデータを記憶するページテーブルと、ＭＭＵを参照してＲＯＭ又はＲＡＭに格納されているプログラムを読み出して実行するＣＰＵ（Central Processing Unit）とを備える。特許文献１で説明されているように、ＲＯＭに比べてＲＡＭは高速動作が可能である。すなわち、ＣＰＵによるＲＡＭの読み込み速度は、ＲＯＭの読み込み速度よりも早い。このため、ＲＯＭに格納されているデータをＲＡＭに一時格納して、ＣＰＵがＲＡＭに格納されているデータを読み込めば、高速動作を実現できる。
【０００３】
但し、ＲＯＭから累積的にプログラムをＲＡＭに格納していけば、ＲＡＭの空き容量は少なくなる。このため、ＲＡＭの空き容量が十分であれば、ＣＰＵはＲＡＭからプログラムを読み込むＲＡＭ動作を行うが、ＲＡＭに空き容量がないときは、ＲＯＭからプログラムを読み込むＲＯＭ動作に切り替える。
【０００４】
図６は、ページテーブルに物理アドレスが設定されていない状態でＲＡＭ動作を行う情報処理装置を示すブロック図である。図６に示すように、ＣＰＵ１は、仮想アドレスに対応する物理アドレスをＭＭＵ３に問い合わせる（１）。ＭＭＵ３は、ページテーブル５を参照する（２）が、ＲＡＭ７の物理アドレスがページテーブル５に設定されていないため、ページフォルトが発生する。このため、ＲＯＭ９から該当するアドレス範囲のデータがＲＡＭ７にコピーされ（３）、当該データがコピーされたＲＡＭ７の物理アドレスをページテーブル５に設定する（４）。ＭＭＵ３は、ページテーブル５から得られた物理アドレスを、（１）の問い合わせの回答としてＣＰＵ１に返す。
【０００５】
図７は、ページテーブルに物理アドレスが設定されている状態でＲＡＭ動作を行う情報処理装置を示すブロック図である。図７に示すように、ＣＰＵ１は、仮想アドレスに対応する物理アドレスをＭＭＵ３に問い合わせる（１）。ＭＭＵ３は、ページテーブル５を参照して（２）、ＲＡＭ７の物理アドレスを得る。ＭＭＵ３は、ページテーブル５から得られた物理アドレスを、（１）の問い合わせの回答としてＣＰＵ１に返す。
【０００６】
図８は、ページテーブルにＲＯＭの物理アドレスを設定する様子を示す情報処理装置のブロック図である。図８に示すように、ＲＯＭのページテーブルがないときはページテーブル５を作成し（１）、ＲＯＭ９の該当する物理アドレスがページテーブル５に設定される。
【０００７】
図９は、ページテーブルにＲＯＭの物理アドレスが設定されている状態でＲＯＭ動作を行う情報処理装置を示すブロック図である。図９に示すように、ＣＰＵ１は、仮想アドレスに対応する物理アドレスをＭＭＵ３に問い合わせる（１）。ＭＭＵ３は、ページテーブル５を参照して（２）、ＲＯＭ９の物理アドレスを得る。ＭＭＵ３は、ページテーブル５から得られた物理アドレスを、（１）の問い合わせの回答としてＣＰＵ１に返す。
【０００８】
上述したように、情報処理装置は、ＲＡＭの空き容量に応じてＲＡＭ動作からＲＯＭ動作に切り替える。図１０は、ＲＡＭに十分な空き容量があるためＲＡＭ動作を行う情報処理装置を示すブロック図である。図１０に示すように、ＣＰＵ１は、ＲＯＭ９のヘッダを参照して、実行するプログラムのデータサイズを取得し（１）、ＲＡＭ７にこのデータサイズ以上の空き容量があるかを確認する（２）。ＲＡＭ７に十分な空き容量があれば、実行するプログラムのデータがＲＯＭ９からＲＡＭ７へコピーされる（３）。ＣＰＵ１は、ＲＯＭ９からＲＡＭ７にコピーされたプログラムを読み込んで実行するＲＡＭ動作を行う。この後、ＲＡＭ７に実行するプログラムのデータサイズ以上の空き容量がなくなれば、ＣＰＵ１は、ＲＯＭ９からプログラムを読み込んで実行するＲＯＭ動作に切り替える。
【先行技術文献】
【非特許文献】
【０００９】
【特許文献１】特開平１１−１２９５５８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上記説明したように、ＣＰＵは、実行するプログラムのデータサイズとＲＡＭの空き容量とに応じて、ＲＡＭ動作からＲＯＭ動作へと切り替える。ＲＡＭの容量は限られているため、情報処理装置で多くのプログラムが実行されたり、データサイズの大きなプログラムが実行されると、ＲＡＭの空き容量がなくなり、ＲＯＭ動作に移行する。ＲＯＭ動作時のＣＰＵの読み込み速度はＲＡＭ動作時と比べて遅いため、ＲＡＭ動作時に比べると、プログラムの実行速度が落ちる。したがって、ＲＡＭに空き容量がない状態では、プログラムを早く実行できない。なお、ＲＡＭ７に格納されているデータを破棄すればＲＡＭ７の空き容量を確保できるが、データを破棄するための処理を行わなければならない。したがって、この場合もプログラム実行速度を上げることはできない。
【００１１】
本発明の目的は、ＲＡＭを効率的に利用しつつ、状況に応じてプログラムの実行速度を適宜上げることのできる情報処理装置を提供することである。
【課題を解決するための手段】
【００１２】
本発明は、プログラムを記憶するＲＯＭと、前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、前記プログラム実行部のクロック速度の変化を検知する検知部と、前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が前記クロック速度の低速から高速への変化を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、を備えた情報処理装置を提供する。
【００１３】
本発明は、プログラムを記憶するＲＯＭと、前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、当該情報処理装置に対する操作を検知する検知部と、前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が当該情報処理装置に対する操作を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、を備えた情報処理装置を提供する。
【００１４】
本発明は、プログラムを記憶するＲＯＭと、前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、当該情報処理装置において定常的に発生する処理以外の不定期の割り込み処理の発生を検知する検知部と、前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が前記不定期の割り込み処理の発生を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、を備えた情報処理装置を提供する。
【発明の効果】
【００１５】
本発明に係る情報処理装置によれば、ＲＡＭを効率的に利用しつつ、状況に応じてプログラムの実行速度を適宜上げることができる。
【図面の簡単な説明】
【００１６】
【図１】第１の実施形態の情報処理装置を示すブロック図
【図２】第１の実施形態の情報処理装置が行う切り替え処理を示すフローチャート
【図３】イベントの発生に応じた切り替え処理を示すフローチャート
【図４】第２の実施形態の情報処理装置を示すブロック図
【図５】特定のアプリケーションの起動に応じた切り替え処理を示すフローチャート
【図６】ページテーブルに物理アドレスが設定されていない状態でＲＡＭ動作を行う情報処理装置を示すブロック図
【図７】ページテーブルに物理アドレスが設定されている状態でＲＡＭ動作を行う情報処理装置を示すブロック図
【図８】ページテーブルにＲＯＭの物理アドレスを設定する様子を示す情報処理装置のブロック図
【図９】ページテーブルにＲＯＭの物理アドレスが設定されている状態でＲＯＭ動作を行う情報処理装置を示すブロック図
【図１０】ＲＡＭに十分な空き容量があるためＲＡＭ動作を行う情報処理装置を示すブロック図
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について、図面を参照して説明する。
【００１８】
（第１の実施形態）
図１は、第１の実施形態の情報処理装置を示すブロック図である。図１に示すように、第１の実施形態の情報処理装置は、ＣＰＵ１０１と、ＲＯＭ１０３と、ＲＡＭ１０５と、ＭＭＵ（メモリ管理ユニット）１０７と、ページ管理部１０９と、イベント検知部１１１と、状態判定部１１３と、動作切替部１１５とを備える。
【００１９】
ＣＰＵ１０１は、ＭＭＵ１０７を参照してＲＯＭ１０３又はＲＡＭ１０５に格納されているプログラムを読み込んで実行する。ＲＯＭ１０３は、ＣＰＵ１０１が実行するプログラムを記憶する。ＲＡＭ１０５は、ＲＯＭ１０３から読み出されたプログラムを一時記憶する。ＭＭＵ１０７は、ＣＰＵ１０１がＲＯＭ１０３又はＲＡＭ１０５からプログラムを読み込む前にＣＰＵ１０１から出力された仮想アドレスを物理アドレスに変換する。
【００２０】
ページ管理部１０９は、ページテーブル１５１と、ページフォルト処理部１５７と、ページテーブル更新部１５９とを有する。ページテーブル１５１は、仮想アドレスとそれに対応する物理アドレスとのマッピングデータを記憶する。ページテーブル１５１はＭＭＵ１０７によって参照される。なお、ページテーブル１５１には、ＲＯＭ用のページテーブル１５３と、ＲＡＭ用のページテーブル１５５とが含まれる。ＲＯＭ用のページテーブル１５３には、仮想アドレスとＲＯＭ１０３の物理アドレスとのマッピングデータが格納される。一方、ＲＡＭ用のページテーブル１５５には、仮想アドレスとＲＡＭ１０５の物理アドレスとのマッピングデータが格納される。
【００２１】
ページフォルト処理部１５７は、ＲＯＭ１０３からプログラムを読み出してＲＡＭ１０５に書き込む。ページテーブル更新部１５９は、ページフォルト処理部１５７がＲＯＭ１０３からＲＡＭ１０５にプログラムを書き込んだ際、ＲＡＭ用のページテーブル１５５を更新する。また、ページテーブル更新部１５９は、ＭＭＵ１０７が参照するページテーブルとして、ＲＯＭ用のページテーブル１５３とＲＡＭ用のページテーブル１５５を切り替える。すなわち、ページテーブル更新部１５９は、ＣＰＵ１０１がＲＯＭ１０３からプログラムを読み込むＲＯＭ動作を行う場合には、ＭＭＵ１０７が参照するページテーブルとしてＲＯＭ用のページテーブル１５３を設定し、ＣＰＵ１０１がＲＡＭ１０５からプログラムを読み込むＲＡＭ動作を行う場合には、ＭＭＵ１０７が参照するページテーブルとしてＲＡＭ用のページテーブル１５５を設定する。
【００２２】
イベント検知部１１１は、イベントの変更を検知する。イベントの変化とは、ＣＰＵ１０１のクロック速度の変化や、情報処理装置に設けられた図示しないボタンを用いたユーザによるボタン操作、定常的に発生する処理以外の不定期の割り込み処理の発生等である。状態判定部１１３は、動作切替部１１５からの指示に応じてＲＡＭ１０５の空き容量を検出し、ＲＯＭ動作からＲＡＭ動作に切り替え可能な空き容量がＲＡＭ１０５にあるかを判定して、その判定結果を動作切替部に送る。
【００２３】
動作切替部１１５は、ＣＰＵ１０１がＲＯＭ動作中にイベント検知部１１１がイベントの変化を検知したとき、状態判定部１１３による判定結果に応じて、ページ管理部１０９が有するページテーブル更新部１５９にＲＯＭ動作からＲＡＭ動作への切り替えを指示する。すなわち、動作切替部１１５は、状態判定部１１３によってＲＡＭ１０５に十分な空き容量があると判定されたときは、ページテーブル更新部１５９にＲＯＭ動作からＲＡＭ動作への切り替えを指示するが、状態判定部１１３によってＲＡＭ１０５によって十分な空き容量がないと判定されたときは、当該指示を行わない。
【００２４】
図２は、本実施形態の情報処理装置が行う切り替え処理を示すフローチャートである。図２に示すように、ステップＳ１１でＲＡＭ動作への切り替えが判断され、ＲＡＭ動作への切り替えである場合はステップＳ１３に進み、ＲＡＭ動作への切り替えでない場合はステップＳ１７に進む。ステップＳ１３では、ＲＡＭ動作への切り替えに必要な空き容量がＲＡＭ１０５にあるかが判断され、ある場合はステップＳ１５に進み、ない場合は処理を終了する。ステップＳ１５では、頻度の高いアプリケーションであるかが判断され、頻度が高い場合はステップＳ１７に進み、低い場合は処理を終了する。
【００２５】
ステップＳ１７では、指定されたアプリケーションを切り替えるように動作切替部１１５に要求する。次に、ステップＳ１９では、指定されたアプリケーションのページテーブルを切り替えるようにページテーブル更新部１５９に要求する。次に、ステップＳ２１では、ページテーブル更新部１５９で指定されたページテーブルを切り替える。
【００２６】
また、図３は、イベントの発生に応じた切り替え処理を示すフローチャートである。図３に示すように、ステップＳ３１でＣＰＵ１０１のクロック速度が切り替わると、ステップＳ３３でクロック速度が低速から高速に切り替わったかを判断し、高速への切り替わりの場合はステップＳ３５に進み、その逆（高速から低速への切り替わり）の場合はステップＳ３７に進む。ステップＳ３５では、ＲＯＭ動作からＲＡＭ動作に切り替えられ、ステップＳ３７では、ＲＡＭ動作からＲＯＭ動作に切り替えられる。
【００２７】
以上説明したように、本実施形態の情報処理装置では、イベントの発生に応じて、ＲＡＭ１０５に十分な空き容量があればＲＯＭ動作からＲＡＭ動作に切り替えられる。従来は、ＲＡＭ１０５に空き容量があれば常にＲＡＭ動作を行っていたが、本実施形態では、状況に応じてＲＡＭ動作の要／不要を判断し、必要なときのみＲＡＭ動作を行う。例えば、ＣＰＵ１０１のクロック速度が低速から高速に変化したときや、ボタン操作が行われたとき、不定期の割り込み処理が発生したときには、ＲＡＭ１０５に十分な空き容量があれば、ＲＯＭ動作からＲＡＭ動作に切り替えられる。なお、ＣＰＵ１０１のクロック速度が高速から低速に変化したときや、ボタン操作が一定期間行われないとき、不定期の割り込み処理が終了したときには、ＲＡＭ動作からＲＯＭ動作に切り替えられる。このように、状況に応じてＲＯＭ動作とＲＡＭ動作を切り替えることによって、ＲＡＭ１０５を効率的に利用しつつ、プログラムの実行速度を適宜上げることができる。
【００２８】
（第２の実施形態）
図４は、第２の実施形態の情報処理装置を示すブロック図である。第２の実施形態の情報処理装置は、第１の実施形態と同様のＣＰＵ１０１、ＲＯＭ１０３、ＲＡＭ１０５、ＭＭＵ１０７、ページ管理部１０９及び状態判定部１１３と、起動処理部２１１と、動作切替部２１５とを備える。ＣＰＵ１０１、ＲＯＭ１０３、ＲＡＭ１０５、ＭＭＵ１０７、ページ管理部１０９及び状態判定部１１３は、第１の実施形態と同様であるため、説明を省略する。
【００２９】
起動処理部２１１は、情報処理装置のユーザによって指定されたアプリケーションの起動を処理する。起動処理部２１１は、特定のアプリケーションの起動が指示されると、ＲＯＭ動作からＲＡＭ動作への切り替えを動作切替部２１５に指示する。なお、起動処理部２１１は、どのアプリケーションの起動が指示されたとき上記指示を行うかについて設定されたテーブル２２１を記憶する。
【００３０】
動作切替部２１５は、ＣＰＵ１０１がＲＯＭ動作中に起動処理部２１１から上記指示を受け取ったとき、状態判定部１１３による判定結果に応じて、ページ管理部１０９が有するページテーブル更新部１５９にＲＯＭ動作からＲＡＭ動作への切り替えを指示する。すなわち、動作切替部２１５は、第１の実施形態と同様に、状態判定部１１３によってＲＡＭ１０５に十分な空き容量があると判定されたときは、ページテーブル更新部１５９にＲＯＭ動作からＲＡＭ動作への切り替えを指示するが、状態判定部１１３によってＲＡＭ１０５によって十分な空き容量がないと判定されたときは、当該指示を行わない。
【００３１】
図５は、特定のアプリケーションの起動に応じた切り替え処理を示すフローチャートである。図５に示すように、ステップＳ４１でアプリケーションが起動されると、ステップＳ４３でＲＡＭ動作を行うかを判断し、行う場合はステップＳ４５に進み、行わない場合はステップＳ４９に進む。ステップＳ４５では、ＲＡＭ動作に必要な空き容量がＲＡＭ１０５にあるかが判断され、ある場合はステップＳ４７に進み、ない場合はステップＳ４９に進む。ステップＳ４７では、ページテーブル更新部１５９へＲＡＭ動作用のページテーブルの作成を要求する。ステップＳ４９では、ページテーブル更新部１５９へＲＯＭ動作用のページテーブルの作成を要求する。
【００３２】
次に、ステップＳ５１では、アプリケーションの起動に対して動作を切り替えるアプリケーションは存在するか判断し、ある場合はステップＳ５３に進み、ない場合はステップＳ５７に進む。ステップＳ５３では、対象のアプリケーションの全てに対して、ステップＳ５５を行う。ステップＳ５５では、対象のアプリケーションの実行を切り替える。ステップＳ５７では、ステップＳ４１で起動されたアプリケーションの使用頻度を更新する。
【００３３】
以上説明したように、本実施形態の情報処理装置では、特定のアプリケーションの起動に応じて、ＲＡＭ１０５に十分な空き容量があればＲＯＭ動作からＲＡＭ動作に切り替えられる。なお、特定のアプリケーションの実行が終了したときは、ＲＡＭ動作からＲＯＭ動作に切り替えられる。このように、状況に応じてＲＯＭ動作とＲＡＭ動作を切り替えることによって、ＲＡＭ１０５を効率的に利用しつつ、特定のアプリケーションの実行速度を適宜上げることができる。
【００３４】
なお、上記特定のアプリケーションは、ユーザによって変更可能である。ＲＡＭ動作によって実行される特定のアプリケーションが変更されると、起動処理部２１１が記憶するテーブル２２１が書き換えられる。
【００３５】
また、起動処理部２１１は、アプリケーション毎に使用頻度を測定する使用頻度測定部（図示せず）を有しても良い。このとき、起動処理部２１１は、使用頻度測定部によって測定された使用頻度に基づいて、テーブル２２１に登録する特定のアプリケーションを決定しても良い。この場合、使用頻度の高いアプリケーションが自動的にテーブル２２１に登録される。
【００３６】
上記第１及び第２の実施形態では、ページテーブル１５１にＲＯＭ用のページテーブル１５３とＲＡＭ用のページテーブル１５５とが含まれ、ページテーブル更新部１５９が、ＲＯＭ用のページテーブル１５３とＲＡＭ用のページテーブル１５５を切り替えているが、ページテーブル１５１はＲＯＭ用とＲＡＭ用とに分かれていない形態であっても良い。この形態の場合、ＲＯＭ動作とＲＡＭ動作の切り替えが発生すると、ページテーブル１５１は書き換えられる。
【００３７】
例えば、ＲＯＭ動作からＲＡＭ動作に移行する際、ページテーブル更新部１５９は、ページテーブル１５１に格納されていたＲＯＭ１０３の物理アドレスを消去する。その後、ＲＡＭ動作が行われるとＭＭＵ１０７はページテーブル１５１を参照するが、ページテーブル１５１には仮想アドレスとＲＡＭ１０５の物理アドレスとのマッピングデータが格納されていないため、ページフォルトが発生する。このため、ページフォルト処理部１５７は、ＲＯＭ１０３からプログラムを読み出してＲＡＭ１０５に書き込む。また、ページテーブル更新部１５９は、ページテーブル１５１にＲＡＭ１０５の物理アドレスを格納する。
【００３８】
本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
【産業上の利用可能性】
【００３９】
本発明に係る情報処理装置は、ＲＯＭ動作とＲＡＭ動作を切り替えてプログラムを実行し、所望の機能を実現する電子機器等として有用である。
【符号の説明】
【００４０】
１０１  ＣＰＵ
１０３  ＲＯＭ
１０５  ＲＡＭ
１０７  ＭＭＵ（メモリ管理ユニット）
１０９  ページ管理部
１１１  イベント検知部
１１３  状態判定部
１１５，２１５  動作切替部
１５１  ページテーブル
１５３  ＲＯＭ用のページテーブル
１５５  ＲＡＭ用のページテーブル
１５７  ページフォルト処理部
１５９  ページテーブル更新部
２１１  起動処理部
２２１  ＲＡＭ動作対象アプリケーション記憶テーブル
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プログラムを記憶するＲＯＭと、
前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、
前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、
前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、
前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、
前記プログラム実行部のクロック速度の変化を検知する検知部と、
前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が前記クロック速度の低速から高速への変化を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、
前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、
を備えたことを特徴とする情報処理装置。
【請求項２】
プログラムを記憶するＲＯＭと、
前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、
前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、
前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、
前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、
当該情報処理装置に対する操作を検知する検知部と、
前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が当該情報処理装置に対する操作を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、
前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、
を備えたことを特徴とする情報処理装置。
【請求項３】
プログラムを記憶するＲＯＭと、
前記ＲＯＭから読み出されたプログラムを一時記憶するＲＡＭと、
前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込んで実行するプログラム実行部と、
前記プログラム実行部が前記ＲＯＭ又は前記ＲＡＭからプログラムを読み込む前に前記プログラム実行部から出力された仮想アドレスを、前記ＲＯＭ又は前記ＲＡＭの物理アドレスに変換するメモリ管理部と、
前記メモリ管理部によって参照され、仮想アドレスと当該仮想アドレスに対応する前記ＲＯＭ及び前記ＲＡＭの少なくともいずれか一方の物理アドレスとのマッピングデータが格納されたページテーブルを記憶するページテーブル記憶部と、を備えた情報処理装置であって、
当該情報処理装置において定常的に発生する処理以外の不定期の割り込み処理の発生を検知する検知部と、
前記プログラム実行部が前記ＲＯＭからプログラムを読み出すＲＯＭ動作中に前記検知部が前記不定期の割り込み処理の発生を検知したとき、前記ＲＯＭ動作から前記プログラム実行部が前記ＲＡＭからプログラムを読み出すＲＡＭ動作への切り替えを指示する動作切替部と、
前記動作切替部からの指示に応じて、前記メモリ管理部が参照するページテーブルを更新するページテーブル更新部と、
を備えたことを特徴とする情報処理装置。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2009028106.tif 000013
【図２】
2009028106.tif 000014
【図３】
2009028106.tif 000015
【図４】
2009028106.tif 000016
【図５】
2009028106.tif 000017
【図６】
2009028106.tif 000018
【図７】
2009028106.tif 000019
【図８】
2009028106.tif 000020
【図９】
2009028106.tif 000021
【図１０】
2009028106.tif 000022
【国際調査報告】
2009028106.tif 000023
2009028106.tif 000024
2009028106.tif 000025
2009028106.tif 000026