(57)【特許請求の範囲】
【請求項１】
パケットを外部装置から受信、または前記パケットを前記外部装置へ送信する送受信部と、
第１記憶部と、
前記第１記憶部と消費電力の異なる第２記憶部と、
前記送受信部が前記外部装置から前記パケットを受信する毎に、受信した前記パケットの重要度および記憶してから読み出すまでの時間の少なくとも一方に応じた優先度に基づいて、前記第１記憶部または前記第２記憶部に前記パケットを記憶する制御を行う制御部と、
を備えた情報処理装置。
【請求項２】
前記第２記憶部は、該第２記憶部の非アクセス状態における消費電力が、前記第１記憶部の非アクセス状態における消費電力より低く、
前記制御部は、前記優先度が予め定めた第１優先度以上の前記パケットを前記第１記憶部へ記憶する制御を行い、且つ前記優先度が前記第１優先度未満の前記パケットを前記第２記憶部へ記憶する制御を行う、請求項１に記載の情報処理装置。
【請求項３】
前記第１記憶部は、揮発性メモリであり、
前記第２記憶部は、不揮発性メモリである、請求項２に記載の情報処理装置。
【請求項４】
前記制御部は、
前記パケットを読み書きする頻度を示す参照頻度に基づいて、前記参照頻度が高いほど前記優先度が高いと判定する請求項２に記載の情報処理装置。
【請求項５】
前記制御部は、
前記パケットの重要度に基づいて、前記パケットの重要度が低いほど前記優先度が高いと判定する、請求項２に記載の情報処理装置。
【請求項６】
前記制御部は、
記憶してから読み出すまでの時間のより長い前記パケットほど前記優先度が低いと判定する、請求項２に記載の情報処理装置。
【請求項７】
前記制御部は、
前記第１記憶部及び前記第２記憶部の各々の状態を制御する状態制御部を含み、
前記状態制御部は、
前記外部装置から連続して前記パケットを受信中ではない場合、または前記外部装置へ連続して前記パケットを送信中ではない場合、前記第１記憶部および前記第２記憶部の少なくとも一方を動作状態から休止状態へ遷移させる、
請求項２に記載の情報処理装置。
【請求項８】
前記状態制御部は、
前記第２記憶部を休止状態から動作状態へ遷移させる制御を行った後に、連続して受信した複数の前記パケットとしてのパケット群を前記第２記憶部へ記憶または前記第２記憶部から前記パケットを読み出す制御を行い、前記パケット群を前記第２記憶部へ記憶または前記第２記憶部から前記パケットを読み出す制御を行った後に、前記第２記憶部を動作状態から休止状態へ遷移させる制御を行う、請求項７に記載の情報処理装置。
【請求項９】
前記状態制御部は、前記パケットを前記第１記憶部へ記憶する制御を行った後に、前記第１記憶部を動作状態で保持する制御を行う、請求項７に記載の情報処理装置。
【請求項１０】
前記状態制御部は、
前記第１記憶部に記憶された前記パケットに対する全処理が完了したことを判別し、該全処理が完了したことを判別したときに、前記第１記憶部を動作状態から休止状態へ遷移させる制御を行う、請求項９に記載の情報処理装置。
【請求項１１】
前記状態制御部は、
前記第１記憶部を休止状態から動作状態へ遷移させる制御を行った後に、連続して受信した複数の前記パケットとしてのパケット群を前記第１記憶部へ記憶または前記第１記憶部から前記パケットを読み出す制御を行い、前記パケット群を前記第１記憶部へ記憶または前記第１記憶部から前記パケットを読み出す制御を行った後に、前記第１記憶部を動作状態から休止状態へ遷移させる制御を行う、請求項７に記載の情報処理装置。
【請求項１２】
前記状態制御部は、
前記送受信部が所定時間未満の間隔で前記パケットを受信しているときに、前記第２記憶部を動作状態で保持する制御を行い、前記送受信部が前記所定時間以上の間隔で前記パケットを受信しているときに、前記第２記憶部を動作状態から休止状態に遷移させる制御を行う、請求項７に記載の情報処理装置。
【請求項１３】
パケットを外部装置から受信、または前記パケットを前記外部装置へ送信する送受信部と、
第１記憶部と、
前記第１記憶部と消費電力の異なる第２記憶部と、
前記送受信部が前記外部装置から前記パケットを受信する毎に、受信した前記パケットの重要度および記憶してから読み出すまでの時間の少なくとも一方に応じた優先度に基づいて、前記第１記憶部または前記第２記憶部に前記パケットを記憶する制御を行う制御部と、
を備えたネットワーク装置。
【請求項１４】
パケットを外部装置から受信または前記パケットを前記外部装置へ送信する送受信部と、第１記憶部と、前記第１記憶部と消費電力の異なる第２記憶部と、を備えたコンピュータを、
前記送受信部が前記外部装置から前記パケットを受信する毎に、受信した前記パケットの重要度および記憶してから読み出すまでの時間の少なくとも一方に応じた優先度に基づいて、前記第１記憶部または前記第２記憶部に前記パケットを記憶する制御を行う制御部として機能させる、
情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報処理装置、ネットワーク装置、及び情報処理プログラムに関する。
【背景技術】
【０００２】
機器の消費電力削減の試みが行われている。例えば、揮発性メモリで構成されている記憶部を不揮発性メモリで構成し、記憶部への電源供給を制御することが行われている。具体的には、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が省電力状態に移行したときに記憶部への電源供給を停止する。また、ＣＰＵが通常電力状態に移行したときに主記憶部への電源供給を開始する。この構成とすることで、揮発性メモリを記憶部に用いた場合に比べて省電力化を図ることが行われている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−４４４６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、１種類のメモリのみを記憶部として用いる方式では、該メモリの使用に伴う性能劣化等により、装置本体の性能劣化が生じる場合があった。
【０００５】
本発明が解決しようとする課題は、情報処理装置の省電力化と、情報処理装置の性能維持の双方を実現できる、情報処理装置、ネットワーク装置、及び情報処理プログラムを提供することである。
【課題を解決するための手段】
【０００６】
実施形態の情報処理装置は、送受信部、第１記憶部、第２記憶部、及び制御部を備える。送受信部は、パケットを外部装置から受信またはパケットを外部装置へ送信する。第２記憶部は、第１記憶部と消費電力が異なる。制御部は、送受信部が外部装置からパケットを受信する毎に、受信したパケットの重要度および記憶してから読み出すまでの時間の少なくとも一方に応じた優先度に基づいて、第１記憶部または第２記憶部にパケットを記憶する制御を行う。
【図面の簡単な説明】
【０００７】
【図１】実施の形態１の情報処理装置の図。
【図２】実施の形態１のＩ／Ｆ部の図。
【図３】実施の形態１のパケット記憶処理のフローチャート。
【図４】実施の形態１のパケット送信処理のフローチャート。
【図５】実施の形態１のパケット記憶処理のフローチャート。
【図６】実施の形態１のパケット受信処理のフローチャート。
【図７】実施の形態２の情報処理装置１０の図。
【図８】実施の形態２の受信処理のフローチャート。
【図９】実施の形態２の送信処理のフローチャート。
【図１０】実施の形態３の情報処理装置の図。
【図１１】実施の形態３の状態遷移処理のフローチャート。
【図１２】実施の形態３の割込み処理のフローチャート。
【図１３】実施の形態４の情報処理装置の図。
【図１４】実施の形態４の情報記憶処理のフローチャート。
【図１５】実施の形態４の送信処理のフローチャート。
【図１６】実施の形態４の受信処理のフローチャート。
【図１７】実施の形態５の中継装置１０００の図。
【図１８】実施の形態５の中継装置の図。
【発明を実施するための形態】
【０００８】
本実施の形態の情報処理装置の一の実施の形態を説明する。
【０００９】
（実施の形態１）
図１は、本実施の形態の情報処理装置１０の機能的構成を示すブロック図である。情報処理装置１０は、装置制御部１２、及びインターフェース部１４（以下、Ｉ／Ｆ部１４と称する）を備える。
【００１０】
装置制御部１２は、情報処理装置１０全体の制御を行う。具体的には、装置制御部１２は、外部装置へ送信する情報をＩ／Ｆ部１４へ送信する。また、装置制御部１２は、外部装置からＩ／Ｆ部１４を介して情報を受信する。
【００１１】
Ｉ／Ｆ部１４は、装置制御部１２をネットワークに接続させる。具体的には、Ｉ／Ｆ部１４は、装置制御部１２から受け付けた情報を、ネットワークを介して外部装置へ送信する。また、Ｉ／Ｆ部１４は、ネットワークを介して外部装置から受け付けた情報を、装置制御部１２へ送信する。なお、ネットワークは、インターネット等の通信網である。
【００１２】
なお、本実施の形態では、Ｉ／Ｆ部１４は、装置制御部１２から情報としてパケットを受け付け、外部装置へ送信するとして説明する。同様に、本実施の形態では、Ｉ／Ｆ部１４は、外部装置から情報としてパケットを受け付け、装置制御部１２へ送信するとして説明する。
【００１３】
Ｉ／Ｆ部１４は、ホストインターフェース２２（以下、ホストＩ／Ｆ２２と称する）、ネットワークインターフェース２４（以下、ＮＷＩ／Ｆ２４と称する）、制御部１８、記憶部１６、及び記憶部２０を備える。
【００１４】
ホストＩ／Ｆ２２は、Ｉ／Ｆ部１４と装置制御部１２とを接続する。具体的には、ホストＩ／Ｆ２２は、装置制御部１２からパケットを受け付け、制御部１８へ送信する。また、ホストＩ／Ｆ２２は、制御部１８からパケットを受け付け、装置制御部１２へ送信する。
【００１５】
ホストＩ／Ｆ２２は、公知の外部Ｉ／Ｏ接続の仕組みを用いて実現してもよい。また、情報処理装置１０全体をＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）で構成し、装置制御部１２、制御部１８、記憶部１６、及び記憶部２０をＬＳＩ上の各素子として構成した場合、ホストＩ／Ｆ２２は、内部バスにより構成してもよい。
【００１６】
ＮＷＩ／Ｆ２４は、Ｉ／Ｆ部１４とネットワークとを接続する。具体的には、ＮＷＩ／Ｆ２４は、制御部１８から受け付けたパケットを、ネットワークを介して外部装置へ送信する。また、ＮＷＩ／Ｆ２４は、外部装置からネットワークを介して受け付けたパケットを、制御部１８へ送信する。
【００１７】
なお、ＮＷＩ／Ｆ２４は、１０００ＢＡＳＥ−Ｔのような有線ネットワークや、ＩＥＥＥ  ８０２．１１ｎのような無線ネットワークに接続できるインターフェースとする。また、ＮＷＩ／Ｆ２４の通信方式は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）向けのネットワークだけではなくＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）やＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ）のようなＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）向けの通信方式やＢｌｕｅｔｏｏｔｈ（登録商標）のようなパーソナルエリアの通信方式であってもよい。
【００１８】
記憶部１６は、装置制御部１２から受信したパケットを一時的に記憶する。記憶部２０は、ネットワークを介して外部装置から受信した情報を一時的に記憶する。すなわち、記憶部１６及び記憶部２０は、Ｉ／Ｆ部１４で情報を送受信するときのバッファとして機能する。
【００１９】
制御部１８は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、及びＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などを含んで構成されるコンピュータであり、Ｉ／Ｆ部１４全体を制御する。具体的には、制御部１８は、第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２へパケットを記憶する制御を行う。
【００２０】
次に、記憶部１６、記憶部２０、及び制御部１８について詳細を説明する。
【００２１】
図２は、Ｉ／Ｆ部１４の機能的構成を詳細に示すブロック図である。
【００２２】
図２に示すように、記憶部１６及び記憶部２０の各々は、消費電力の異なる複数の記憶部から構成されている。一例として、本実施の形態では、各記憶部１６及び記憶部２０の各々は、消費電力の異なる２種類の記憶部から構成されている場合を説明する。なお、記憶部１６及び記憶部２０を構成する消費電力の異なる記憶部の種類は、２種類以上であればよく、２種類に限られない。
【００２３】
具体的には、図２に示すように、本実施の形態では、記憶部１６は、第１記憶部２６及び第２記憶部２８から構成されている。第１記憶部２６と第２記憶部２８は、互いに消費電力が異なる。同様に、記憶部２０は、第１記憶部３０、及び第２記憶部３２から構成されている。第１記憶部３０と第２記憶部３２とは、互いに消費電力が異なる。
【００２４】
なお、上記「消費電力」とは、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）の消費する電力量の総量を示す。すなわち、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）の各々が、状態（詳細後述）の遷移を含まない各々の状態で消費する電力量を示す。
【００２５】
なお、本実施の形態では、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、第２記憶部３２）は、後述する制御部１８の制御によって、独立して状態を変更される。状態は、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）の機能、性能、及び消費電力の少なくとも１つによって定まる。本実施の形態では、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、第２記憶部３２）は、動作状態と休止状態の２種類の状態に制御されるものとして説明する。
【００２６】
なお、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）のとりうる状態の種類は、２種類に限られない。
【００２７】
動作状態とは、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）が、読書き可能な状態であることを示す。休止状態とは、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）が読書き不可能な状態であることを示す。なお、動作状態は、休止状態に比べて消費電力が大きい。
【００２８】
各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）の状態の制御は制御部１８が行う。制御部１８では、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）へ供給する電力量や、同期信号の周波数等を制御することで、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）の状態を制御する。
【００２９】
また、本実施の形態では、制御部１８は、記憶部１６の第１記憶部２６と第２記憶部２８に、異なる優先度のパケットを記憶する制御を行う。同様に、制御部１８は、記憶部２０の第１記憶部３０と第２記憶部３２に、互いに異なる優先度のパケットを記憶する制御を行う。
【００３０】
具体的には、本実施の形態では、制御部１８は、予め定めた第１優先度以上の高優先度のパケットを、第１記憶部２６及び第１記憶部３０に記憶する制御を行う。また、制御部１８は、第１優先度未満の低優先度のパケットを、第２記憶部２８及び第２記憶部３２に記憶する制御を行う。記憶するパケットの優先度は、制御部１８によって判定される（詳細後述）。第１優先度とは、後述する制御部１８が記憶対象のパケットを分類するために用いる閾値である。この第１優先度は、制御部１８で予め設定される。
【００３１】
すなわち、記憶部１６及び記憶部２０の各々は、記憶対象のパケットの優先度に対応する、複数種類の記憶部から構成されている。
【００３２】
なお、第１記憶部２６及び第１記憶部３０を、第１優先度以上の高優先度のパケットを記憶するための記憶部として用い、第２記憶部２８及び第２記憶部３２を、第１優先度未満の低優先度のパケットを記憶するための記憶部として用いる場合、これらの記憶部の消費電力は、下記関係を満たすことが好ましい。
【００３３】
この場合、第２記憶部２８及び第２記憶部３２の非アクセス状態における消費電力は、第１記憶部２６及び第１記憶部３０の非アクセス状態における消費電力未満であることが好ましい。また、この場合、第２記憶部２８及び第２記憶部３２は、第１記憶部２６及び第１記憶部３０に比べて、高速アクセス可能であることが好ましい。
【００３４】
非アクセス状態における消費電力とは、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、第２記憶部３２）の各々に電気的に接続された各部から、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、第２記憶部３２）に、アクセス（情報の読書き）の全くなされていない状態において、各記憶部で記憶されている情報を保持するために必要な電力を示す。
【００３５】
上記各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、第２記憶部３２）としては、上記条件を満たす公知の記憶装置を用いればよい。
【００３６】
例えば、第１記憶部２６及び第１記憶部３０に、ＤＤＲ（Ｄｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ）  ＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）（揮発性メモリ）を用い、第２記憶部２８及び第２記憶部３２に、ＬＰＤＤＲ（Ｌｏｗ  Ｐｏｗｅｒ  Ｄｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ）  ＳＤＲＡＭ（揮発性メモリ）を用いる。また、第１記憶部２６及び第１記憶部３０に、ＬＰＤＤＲ  ＳＤＲＡＭ（揮発性メモリ）を用い、第２記憶部２８及び第２記憶部３２に、ＭＲＡＭ（Ｍａｇｎｅｔｏｒｅｓｉｓｔｉｖｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）（不揮発性メモリ）を用いてもよい。また、第１記憶部２６及び第１記憶部３０にＳＲＡＭ（揮発性メモリ）を用い、第２記憶部２８及び第２記憶部３２にＦｅＲＡＭ（Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）（不揮発性メモリ）を用いてもよい。
【００３７】
なお、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、第２記憶部３２）には、上述した条件を満たす記憶装置を用いればよく、第１記憶部２６及び第１記憶部３０と、第２記憶部２８及び第２記憶部３２と、に用いる記憶装置の規格並びに組み合わせは、上述した具体例に限られない。
【００３８】
なお、各第１記憶部２６、第１記憶部３０、第２記憶部２８、及び第２記憶部３２は、動作状態または休止状態に遷移するように制御される。ここで、各記憶部（第１記憶部２６、第１記憶部３０、第２記憶部２８、及び第２記憶部３２）が動作状態と休止状態との間を遷移する際には、オーバーヘッドが存在する。オーバーヘッドとは、状態遷移の際に消費される電力と時間である。ここで、一般的に、状態間における消費電力の差が大きいほどオーバーヘッドは大きい。また、状態間における消費電力の差が大きいほど、状態遷移に時間がかかる。
【００３９】
このため、頻繁な状態変更は、アクセス頻度の高い記憶部には適さないといえる。このため、本実施の形態では、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、第２記憶部３２）は、事前に想定するアクセス頻度に基づいて、適切な上記記憶装置を選択し、選択した記憶装置上に構築されているとする。  
【００４０】
なお、以下では、第１記憶部２６と第２記憶部２８とは、説明を簡略化するために、下記関係を満たすものとして説明する。具体的には、第２記憶部２８の非アクセス状態における消費電力が、第１記憶部２６の非アクセス状態における消費電力より低い。また、第１記憶部２６は、第２記憶部２８に比べて高速動作する。また、これらの第１記憶部２６と第２記憶部２８とは、動作状態と休止状態の２種類の状態となるように制御されるものとする。
【００４１】
同様に、以下では、第１記憶部３０と第２記憶部３２とは、下記関係を満たすものとして説明する。具体的には、第２記憶部３２の非アクセス状態における消費電力が、第１記憶部３０の非アクセス状態における消費電力より低い。また、第１記憶部３０は、第２記憶部３２に比べて高速動作する。また、これらの第１記憶部３０と第２記憶部３２とは、動作状態と休止状態の２種類の状態となるように制御されるものとする。
【００４２】
制御部１８は、Ｉ／Ｆ部１４を制御する。本実施の形態では、制御部１８は、ホストＩ／Ｆ２２から受信したパケットの優先度を判別し、判別した優先度に基づいて、第１記憶部２６または第２記憶部２８にパケットを記憶する制御を行う。また、制御部１８は、ＮＷＩ／Ｆ２４から受信したパケットの優先度を判別し、判別した優先度に基づいて、第１記憶部３０または第２記憶部３２にパケットを記憶する制御を行う。
【００４３】
詳細には、制御部１８は、分類部３４、送信スケジューラ３６、状態制御部３８、受信スケジューラ４０、及び分類部４２を備える。
【００４４】
分類部３４は、ホストＩ/Ｆ２２を介して入力されたパケットを、パケットの優先度に基づいて分類する。分類部３４は、ホストＩ/Ｆ２２を介して入力されたパケットの優先度を判定する。そして、分類部３４は、第１記憶部２６及び第２記憶部２８の内、判定した優先度に応じた一方の記憶部（第１記憶部２６及び第２記憶部２８の何れか一方）に、該パケットを記憶する。本実施の形態では、分類部３４は、判定した優先度が第１優先度以上の高優先度のパケットを第１記憶部２６に記憶する。また、分類部３４は、判定した優先度が第１優先度未満の低優先度のパケットを第２記憶部２８に記憶する。
【００４５】
分類部４２は、ＮＷＩ/Ｆ２４を介して入力されたパケットを、パケットの優先度に基づいて分類する。分類部４２は、ＮＷＩ/Ｆ２４を介して入力されたパケットの優先度を判定する。そして、分類部４２は、第１記憶部３０及び第２記憶部３２の内、判定した優先度に応じた一方の記憶部（第１記憶部３０及び第２記憶部３２の何れか一方）に、該パケットを記憶する。本実施の形態では、分類部４２は、判定した優先度が第１優先度以上の高優先度のパケットを第１記憶部３０に記憶する。また、分類部４２は、判定した優先度が第１優先度未満の低優先度のパケットを第２記憶部３２に記憶する。
【００４６】
優先度とは、第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２に記憶する対象のパケット（情報）の優先度を示す。本実施の形態では、第１優先度以上の高優先度のパケットを、第１記憶部２６や第１記憶部３０に記憶する。また、第１優先度未満の低優先度のパケットを、第２記憶部２８や第２記憶部３２へ記憶する。この優先度の判別は、分類部３４及び分類部４２で行う。分類部３４及び分類部４２では、参照頻度が高いパケットほど、高優先度のパケットであると判別する。また、分類部３４及び分類部４２では、重要度の低いパケットほど、高優先度のパケットであると判別する。
【００４７】
参照頻度は、パケットを読書きする頻度を示す。本実施の形態では、分類部３４及び分類部４２は、パケットの参照頻度が高いほど、高優先度を判定する。一方、分類部３４及び分類部４２は、参照頻度が高いほど高い優先度を、参照頻度に対応づけて予め分類部３４及び分類部４２の図示を省略するメモリに記憶しておけばよい。そして、分類部３４及び分類部４２では、パケットの参照頻度に対応する優先度を読み取ることによって、優先度を判別すればよい。
【００４８】
また、分類部３４及び分類部４２では、例えば、パケットの特定フィールドに記憶されている値を、参照頻度として読み取り、優先度を判定してもよい。具体的には、分類部３４及び分類部４２は、ＩＰｖ４パケットのＴＯＳフィールドやＩＰｖ６パケットのＦｌｏｗ  Ｌａｂｅｌフィールド、ＩＥＥＥ  ８０２．１Ｑの優先度フィールド等に記憶されている優先度を示す情報を、参照頻度として用いてもよい。
【００４９】
また、分類部３４及び分類部４２では、装置制御部１２で実行するアプリケーションに関連付けられた優先度を、参照頻度として用いてもよい。アプリケーションの優先度は、事前にユーザによって設定され、分類部３４及び分類部４２の図示を省略するメモリに予め記憶すればよい。また、分類部３４及び分類部４２では、フォアグラウンド実行・バックグラウンド実行の別により、アプリケーションの優先度を定めてもよい。なお、分類部３４及び分類部４２の図示を省略するメモリに、アプリケーションの優先度と、パケットと、を対応づけた優先度管理テーブルを予め記憶する。そして、分類部３４及び分類部４２では、受け付けたパケットに対応する優先度を、参照頻度として優先度管理テーブルから読み取ればよい。
【００５０】
重要度は、パケットの喪失に対する影響の大きさによって決定する。すなわち、喪失しては困るパケットには高い重要度が割り当てられる。そのうえで、重要なパケットが電源喪失時に失われないようにするため、本実施の形態では、高い重要度のパケットほど、不揮発メモリを使用する第２記憶部２８または第２記憶部３２に記憶できるように、意図的に優先度が低いと判定する。すなわち、本実施の形態では、分類部３４及び分類部４２は、重要度が高いパケットほど、優先度が低いと判定し、揮発性メモリを使用する第１記憶部２６または第１記憶部３０ではなく、不揮発性メモリを使用する第２記憶部２８または第２記憶部３２に記憶できるようにする。
【００５１】
なお、制御情報を運ぶパケットや、管理機能に対するパケット等も、重要度の判定基準として用いてもよい。具体的には、制御情報を運ぶパケットである場合には、分類部３４及び分類部４２では、重要度が高いと判定し、優先度が低いと判定する。また、管理機能に対するパケットである場合には、分類部３４及び分類部４２では、重要度が高いと判定し、優先度が低いと判定する。このため、制御情報を運ぶパケットや、管理機能に対するパケットは、揮発性メモリを使用する第１記憶部２６または第１記憶部３０ではなく、不揮発性メモリを使用する第２記憶部２８または第２記憶部３２に記憶されることとなる。なお、制御情報を運ぶパケットには、ＳＹＮ／ＦＩＮやＰＳＨフラグがセットされたＴＣＰパケットが挙げられる。また、管理機能に対するパケットには、ＩＣＭＰのパケット等が挙げられる。
【００５２】
なお、分類部３４及び分類部４２では、受け付けたパケットに含まれる情報の重要度を示す信号を該パケットから読み取ることによって、該パケットの重要度を取得すればよい。
【００５３】
また、分類部３４及び分類部４２では、パケットの参照頻度及び重要度の双方を組み合わせて、パケットの優先度を判別してもよい。また、分類部３４及び分類部４２では、パケットの参照頻度と、重要度と、その他のパラメータと、に基づいて、パケットの優先度を判別してもよい。
【００５４】
その他のパラメータとしては、受け付けたパケットの送信元の装置、受け付けたパケットの送信先の装置、及び送受信プロトコルが挙げられる。
【００５５】
この場合、分類部３４及び分類部４２は、参照頻度、重要度、及びその他のパラメータの組合せに対応する優先度を定めた優先度管理テーブルを予め図示を省略するメモリに記憶する。そして、受け付けたパケットの参照頻度、重要度、及びその他のパラメータに対応する優先度を該優先度管理テーブルから読み取り、優先度を判別すればよい。
【００５６】
なお、上述した優先度管理テーブルは、分類部３４及び分類部４２の各々の図示を省略するメモリに記憶する場合を説明したが、別途記憶部を設けて、該記憶部に優先度管理テーブルを記憶してもよい。これは、分類部３４と分類部４２が優先度管理テーブルを参照するタイミングは、分類部３４と分類部４２とが各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）に記憶するパケットを参照するタイミングとは異なるためである。
【００５７】
上述したように、分類部３４及び分類部４２では、パケットの優先度に基づいて、パケットを記憶する記憶部（第１記憶部２６及び第１記憶部３０、または第２記憶部２８及び第２記憶部３２）を定める。そして、分類部３４及び分類部４２では、定めた記憶部にパケットを記憶する。また、分類部３４及び分類部４２では、受け付けたパケットの優先度を示す情報と、受け付けたパケットの記憶先を示す情報を、状態制御部３８へ出力する。
【００５８】
状態制御部３８は、第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２の状態を制御する。本実施の形態では、状態制御部３８は、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）を、動作状態または休止状態、の何れかの状態となるように制御する。
【００５９】
状態制御部３８は、図示を省略する電源から各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）へ供給する電力の電圧値や、動作クロック等を制御する。これによって、状態制御部３８は、各記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、及び第２記憶部３２）を、動作状態及び休止状態の何れかの状態に制御する。
【００６０】
状態制御部３８は、判別部３９を含む。判別部３９は、ホストＩ／Ｆ２２やＮＷＩ／Ｆ２４から連続してパケットを受信中であるか否かを判別する。連続して、とは、ホストＩ/Ｆ２２（受信部）またはＮＷＩ／Ｆ２４（受信部）が所定時間未満の間隔でパケットを受信することを示す。
【００６１】
なお、状態制御部３８は、汎用のプログラムが動作するマイクロプロセッサで構成してもよいし、以降に述べる本実施の形態の処理に特化した処理だけが動作する専用回路として構成してもよい。
【００６２】
送信スケジューラ３６は、記憶部１６の第１記憶部２６及び第２記憶部２８に記憶されたパケットを、優先度の高い順に取り出してＮＷＩ／Ｆ２４へ送信する。すなわち、送信スケジューラ３６は、第１記憶部２６及び第２記憶部２８の内、より優先度の高いパケットの記憶されている第１記憶部２６から順にパケットを読取り、ＮＷＩ／Ｆ２４へ送信する。また、送信スケジューラ３６は、送信したパケットの記憶されていた第１記憶部２６または第２記憶部２８を示す情報と、パケット送信を示す情報を状態制御部３８へ出力する。
【００６３】
受信スケジューラ４０は、記憶部２０の第１記憶部３０及び第２記憶部３２に記憶されたパケットを、優先度の高い順に取り出してホストＩ／Ｆ２２へ送信する。すなわち、受信スケジューラ４０は、第１記憶部３０及び第２記憶部３２の内、より優先度の高いパケットの記憶されている第１記憶部３０から順にパケットを読取り、ホストＩ／Ｆ２２へ送信する。また、受信スケジューラ４０は、送信したパケットの記憶されていた第１記憶部３０または第２記憶部３２を示す情報と、パケット送信を示す情報を状態制御部３８へ出力する。
【００６４】
次に、Ｉ／Ｆ部１４が実行する送信処理の手順を説明する。
【００６５】
まず、Ｉ／Ｆ部１４が実行する送信処理における、パケット記憶処理を説明する。図３は、Ｉ／Ｆ部１４が実行する送信処理におけるパケット記憶処理の手順を示すフローチャートである。
【００６６】
まず、分類部３４が、所定時間毎またはホストＩ／Ｆ２２から通知を受けたときに、ホストＩ／Ｆ２２からパケットを受信したか否かを判別する（ステップＳ１００）。ホストＩ／Ｆ２２から受信するパケットは、装置制御部１２がＩ／Ｆ部１４を介して外部装置へと送信するパケットである。
【００６７】
ステップＳ１００で否定判断すると（ステップＳ１００：Ｎｏ）本ルーチンを終了し、肯定判断すると（ステップＳ１００：Ｙｅｓ）ステップＳ１０２へ進む。
【００６８】
次に、分類部３４が、ホストＩ／Ｆ２２から受け付けたパケットの優先度を判定する（ステップＳ１０２）。優先度の判定は、上述した方法により行う。
【００６９】
次に、分類部３４は、ステップＳ１０２で判定したパケットの優先度が、予め定めた第１優先度以上の高優先度であるか否かを判別する（ステップＳ１０４）。そして、ステップＳ１０２で判定したパケットの優先度が、高優先度である場合には、肯定判断し（ステップＳ１０４：Ｙｅｓ）、ステップＳ１０６へ進む。
【００７０】
次に、分類部３４は、第１記憶部２６及び第２記憶部２８の内、高優先度に対応する記憶部である第１記憶部２６を示す情報を、パケットの記憶先を示す記憶先情報として状態制御部３８へ送信する（ステップＳ１０６）。
【００７１】
次に、分類部３４は、第１記憶部２６を動作状態へ遷移させることを示す遷移指示を状態制御部３８へ送信する（ステップＳ１０７）。
【００７２】
次に状態制御部３８は、パケットの記憶先である第１記憶部２６が動作状態であるか否かを判別する（ステップＳ１０８）。例えば、状態制御部３８は、第１記憶部２６及び第２記憶部２８が、動作状態または休止状態の何れかの状態にあるかを示す状態情報を記憶する。そして、状態制御部３８は、該状態情報を、状態制御部３８で第１記憶部２６または第２記憶部２８の状態を制御する度に、制御した状態を示す状態情報に更新する。そして、状態制御部３８では、パケットの記憶対象の第１記憶部２６に対応する状態情報を読み取ることによって、第１記憶部２６が動作状態であるか否かを判別すればよい。なお、ステップＳ１０８の判別方法は、この判別方法に限られない。
【００７３】
第１記憶部２６が動作状態であると判断すると（ステップＳ１０８：Ｙｅｓ）、状態制御部３８は、第１記憶部２６が動作状態へ遷移済であることを示す遷移済信号を分類部３４へ送信する（ステップＳ１１１）。一方、上記ステップＳ１０８の判断において、第１記憶部２６が動作状態ではない、すなわち休止状態であると判断すると（ステップＳ１０８：Ｎｏ）、ステップＳ１１０へ進む。
【００７４】
ステップＳ１１０では、状態制御部３８が、第１記憶部２６を休止状態から動作状態へと遷移させる（ステップＳ１１０）。そして、上記ステップＳ１１１へ進む。
【００７５】
上記ステップＳ１１１の処理によって、第１記憶部２６が動作状態へ遷移済であることを示す遷移済信号を受け付けると、分類部３４は、上記ステップＳ１０２で高優先度と判定したパケットを、第１記憶部２６に記憶する（ステップＳ１１２）。そして、本ルーチンを終了する。
【００７６】
一方、上記ステップＳ１０２で判定したパケットの優先度が第１優先度未満の低優先度である場合には、上記ステップＳ１０４において否定判断し（ステップＳ１０４：Ｎｏ）、ステップＳ１１４へ進む。
【００７７】
ステップＳ１１４において、分類部３４は、第１記憶部２６及び第２記憶部２８の内、低優先度に対応する記憶部である第２記憶部２８を示す情報を、パケットの記憶先を示す記憶先情報として状態制御部３８へ送信する（ステップＳ１１４）。
【００７８】
次に、分類部３４は、第２記憶部２８を動作状態へ遷移させることを示す遷移指示を状態制御部３８へ送信する（ステップＳ１１５）。
【００７９】
次に、状態制御部３８は、パケットの記憶先である第２記憶部２８が動作状態であるか否かを判別する（ステップＳ１１６）。例えば、状態制御部３８は、第１記憶部２６及び第２記憶部２８が、動作状態または休止状態の何れかの状態にあるかを示す状態情報を記憶する。そして、状態制御部３８は、該状態情報を、状態制御部３８で第１記憶部２６または第２記憶部２８の状態を制御する度に、制御した状態を示す状態情報に更新する。そして、状態制御部３８では、パケットの記憶対象の第２記憶部２８に対応する状態情報を読み取ることによって、第２記憶部２８が動作状態であるか否かを判別すればよい。
【００８０】
第２記憶部２８が動作状態であると判断すると（ステップＳ１１６：Ｙｅｓ）、状態制御部３８は、第２記憶部２８が動作状態へ遷移済であることを示す遷移済信号を分類部３４へ送信する（ステップＳ１１８）。一方、上記ステップＳ１１６の判断において、第２記憶部２８が動作状態ではない、すなわち休止状態であると判断すると（ステップＳ１１６：Ｎｏ）、ステップＳ１１７へ進む。
【００８１】
ステップＳ１１７では、状態制御部３８が、第２記憶部２８を休止状態から動作状態へと遷移させる（ステップＳ１１７）。そして、上記ステップＳ１１８へ進む。
【００８２】
上記ステップＳ１１８の処理によって、第２記憶部２８が動作状態へ遷移済であることを示す遷移済信号を受け付けると、分類部３４は、上記ステップＳ１０２で低優先度と判定したパケットを、第２記憶部２８に記憶する（ステップＳ１１９）。
【００８３】
次に、ステップＳ１２０において、状態制御部３８の判別部３９が、ホストＩ／Ｆ２２から連続してパケットを受信中であるか否かを判断する（ステップＳ１２０）。そして、連続してパケット受信中であると判断すると（ステップＳ１２０：Ｙｅｓ）、本ルーチンを終了する。
【００８４】
一方、連続してパケットを受信中ではない、すなわち、判別部３９が、連続して受信するパケット群の最後のタイミングを検出すると、否定判断する（ステップＳ１２０：Ｎｏ）。そして、ステップＳ１２２へ進む。ステップＳ１２０における、連続して受信するパケット群の最後のタイミングの検出には、以下の方法を用いる。例えば、判別部３９は、参照間隔をタイマーで管理する方法やパケットのプロトコルシーケンスを考慮する方法等を用いて判別する。なお、プロトコルシーケンスを考慮する方法としては、例えば、ＴＣＰ接続の終了の検出や、ＨＴＴＰ要求と応答の対応関係を把握して全ての要求に対する応答が得られたことを確認する方法などがある。
【００８５】
ステップＳ１２２では、状態制御部３８が、第２記憶部２８を動作状態から休止状態へと遷移させた後に（ステップＳ１２２）、本ルーチンを終了する。
【００８６】
次に、Ｉ／Ｆ部１４が実行する送信処理における、パケット送信処理を説明する。図４は、Ｉ／Ｆ部１４が実行する送信処理におけるパケット送信処理の手順を示すフローチャートである。
【００８７】
まず、送信スケジューラ３６は、記憶部１６を監視し、第１記憶部２６にパケットが記憶されているか否かを判断する（ステップＳ２００）。そして、第１記憶部２６にパケットが記憶されていると判断すると（ステップＳ２００：Ｙｅｓ）、送信スケジューラ３６は、第１記憶部２６に記憶されているパケットを、ＮＷＩ／Ｆ２４を介して外部装置へと送信する（ステップＳ２０２）。
【００８８】
そして、送信スケジューラ３６は、第１記憶部２６にパケットが無いか否かを判断する（ステップＳ２０４）。すなわち、送信スケジューラ３６は、ステップＳ２０４において、第１記憶部２６に記憶された情報に対する全処理が終了しているか否かを判断する。そして、第１記憶部２６にパケットが記憶されている場合には、否定判断し（ステップＳ２０４：Ｎｏ）、上記ステップＳ２０２へ戻る。一方、第１記憶部２６にパケットが無い場合には肯定判断し（ステップＳ２０４：Ｙｅｓ）、ステップＳ２０５へ進む。
【００８９】
ステップＳ２０５では、送信スケジューラ３６が、第１記憶部２６を休止状態へ遷移させることを示す遷移指示を状態制御部３８へ送信する（ステップＳ２０５）。
【００９０】
第１記憶部２６を休止状態へ遷移させることを示す遷移指示を受け付けると、状態制御部３８は、第１記憶部２６を動作状態から休止状態に遷移させる（ステップＳ２０６）。そして本ルーチンを終了する。
【００９１】
なお、状態制御部３８は、第１記憶部２６のパケット送信済を示す情報を受け付けたときに、分類部３４が高優先度のパケットを判別した場合には、ステップＳ２０６の処理を行わずに本ルーチンを終了してもよい。状態制御部３８による、分類部３４が高優先度のパケットを判別したか否かの判断は、パケットの記憶先情報として第１記憶部２６を示す情報を分類部３４から受け付けたか否かを判別することによって行えばよい。
【００９２】
上記ステップＳ２００〜ステップＳ２０６の処理によって、第１記憶部２６に格納された高優先度のパケットは、速やかに送信される。このため、第１記憶部２６は、第２記憶部２８に比べて短時間で再びアクセスされる可能性が高い。このため、ステップＳ２００〜ステップＳ２０６に示すように、状態制御部３８は、上記ステップＳ１１２でパケットを第１記憶部２６に記憶した後は、第１記憶部２６を休止状態に遷移させない。すなわち、状態制御部３８は、上記ステップＳ１１２でパケットを第１記憶部２６に記憶した後は、第１記憶部２６を動作状態に保持する制御を行う。
【００９３】
なお、本実施の形態における記憶部（第１記憶部２６、第２記憶部２８、第１記憶部３０、第２記憶部３２）が、３種類以上の状態を示すとする。この場合には、状態制御部３８は、該動作状態への保持に代えて、予め定められた時間もしくは過去のアクセス間隔などから算出した時間内に状態遷移が完了して省電力の効果が得られると判断できる状態に、第１記憶部２６を保持する制御を行えばよい。なお、過去のアクセス間隔などから算出した時間内に状態遷移が完了、とは、一度、低消費電力の状態に遷移し、しばらくその状態を維持した後、再びアクセスできる状態に復帰する一連の過程を示す。
【００９４】
一方、上記ステップＳ２００で否定判断した場合（ステップＳ２００：Ｎｏ）、すなわち、第１記憶部２６にパケットが無い場合には、ステップＳ２０７へ進む。ステップＳ２０７では、送信スケジューラ３６が、第２記憶部２８の動作状態への遷移指示を状態制御部３８へ送信する（ステップＳ２０７）。
【００９５】
第２記憶部２８の動作状態への遷移指示を受け付けた状態制御部３８は、第２記憶部２８を休止状態から動作状態に遷移させる（ステップＳ２０８）。そして、状態制御部３８は、第２記憶部２８が動作状態へ遷移済であることを示す遷移済信号を送信スケジューラ３６へ送信する（ステップＳ２０９）。
【００９６】
次に、送信スケジューラ３６は、第２記憶部２８からパケットを読み出し、ＮＷＩ/Ｆ２４を介して外部装置へと送信する（ステップＳ２１０）。なお、送信スケジューラ３６は、ステップＳ２１０の処理において、第２記憶部２８に記憶されている予め定めた数のパケットを読み出して送信してもよいし、第２記憶部２８に記憶されている全てのパケットを読み出して送信してもよい。このステップＳ２１０の処理において送信スケジューラ３６が読み出すパケット数は、予め設定すればよい。
【００９７】
次に、送信スケジューラ３６が、第２記憶部２８の休止状態への遷移指示を状態制御部３８へ送信する（ステップＳ２１１）。該遷移指示を受け付けた状態制御部３８は、第２記憶部２８を休止状態に遷移させた後に（ステップＳ２１２）、本ルーチンを終了する。
【００９８】
ステップＳ２００〜ステップＳ２１２に示すように、第２記憶部２８に記憶された低優先度のパケットは、第１記憶部２６に記憶された高優先度のパケットが送信された後に送信される。このため、低優先度のパケットが第２記憶部２８に記憶されてから送信されるまでの時間は、高優先度のパケットが第１記憶部２６に記憶されてから送信されるまでの時間より長い。このため、本実施の形態では、低優先度のパケットを第２記憶部２８に記憶する度に、第２記憶部２８を休止状態に遷移させる制御を行う。
【００９９】
ただし、低優先度のトラフィックでは、ウェブブラウザによるウェブサイトの閲覧のように、短時間に複数パケットの送受信が集中し、その集中したパケット群の発生が散発的になされる傾向がある。この場合、パケット群の中では格納時間が短く、パケット群と次のパケット群が格納されるまでの時間が長くなる場合がある。このため、状態制御部３８では、連続して受信するパケット群の最後のタイミングを検出し、パケットが格納された記憶部（例えば、第１記憶部２６または第２記憶部２８）を、休止状態に遷移させてもよい。ここで、連続して受信するパケット群の最後のタイミングの検出は、参照間隔をタイマーで管理する方法や、パケットのプロトコルシーケンスを考慮する方法を用いればよい。パケットのプロトコルシーケンスを考慮する方法としては、例えば、ＴＣＰ接続の終了を検出する方法、ＨＴＴＰ要求と応答の対応関係を把握して全ての要求に対する応答が得られたことを確認する方法がある。
【０１００】
なお、上記ステップＳ２００〜ステップＳ２０４の処理では、送信スケジューラ３６は、第１記憶部２６にパケットが記憶されている間、常に第１記憶部２６からパケットを読出して送信する場合を説明した。しかし、送信スケジューラ３６は、高優先度のパケットから順にパケットを送信すればよく、この送信方法に限られない。
【０１０１】
例えば、送信スケジューラ３６は、第１記憶部２６に記憶されているパケットをＮ個（Ｎは１以上の整数）送信した後に、第２記憶部２８に記憶されているパケットを１個送信してもよい。
【０１０２】
次に、Ｉ／Ｆ部１４が実行する受信処理の手順を説明する。まず、Ｉ／Ｆ部１４が実行する受信処理における、パケット記憶処理を説明する。
【０１０３】
図５は、Ｉ／Ｆ部１４が実行する受信処理におけるパケット記憶処理の手順を示すフローチャートである。
【０１０４】
まず、分類部４２が、所定時間毎またはＮＷＩ／Ｆ２４から通知を受けたときに、ＮＷＩ／Ｆ２４からパケットを受信したか否かを判別する（ステップＳ３００）。ＮＷＩ／Ｆ２４から受信するパケットは、ネットワーク及びＩ／Ｆ部１４を介して外部装置から装置制御部１２へ送信されたパケットである。
【０１０５】
ステップＳ３００で否定判断すると（ステップＳ３００：Ｎｏ）本ルーチンを終了し、肯定判断すると（ステップＳ３００：Ｙｅｓ）ステップＳ３０２へ進む。
【０１０６】
次に、分類部４２が、ＮＷＩ／Ｆ２４から受け付けたパケットの優先度を判定する（ステップＳ３０２）。優先度の判定は、上述した方法により行う。
【０１０７】
次に、分類部４２は、ステップＳ３０２で判定したパケットの優先度が、予め定めた第１優先度以上の高優先度であるか否かを判別する（ステップＳ３０４）。そして、ステップＳ３０２で判定したパケットの優先度が、高優先度である場合には、肯定判断し（ステップＳ３０４：Ｙｅｓ）、ステップＳ３０６へ進む。
【０１０８】
次に、分類部４２は、第１記憶部３０及び第２記憶部３２の内、高優先度に対応する記憶部である第１記憶部３０を示す情報を、パケットの記憶先を示す記憶先情報として状態制御部３８へ送信する（ステップＳ３０６）。
【０１０９】
次に、分類部４２は、第１記憶部３０を動作状態へ遷移させることを示す遷移指示を状態制御部３８へ送信する（ステップＳ３０７）。
【０１１０】
次に状態制御部３８は、パケットの記憶先である第１記憶部３０が動作状態であるか否かを判別する（ステップＳ３０８）。例えば、状態制御部３８は、第１記憶部３０及び第２記憶部３２が、動作状態または休止状態の何れかの状態にあるかを示す状態情報を記憶する。そして、状態制御部３８は、該状態情報を、状態制御部３８で第１記憶部３０または第２記憶部３２の状態を制御する度に、制御した状態を示す状態情報に更新する。そして、状態制御部３８では、パケットの記憶対象の第１記憶部３０に対応する状態情報を読み取ることによって、第１記憶部３０が動作状態であるか否かを判別すればよい。
【０１１１】
第１記憶部３０が動作状態であると判断すると（ステップＳ３０８：Ｙｅｓ）、状態制御部３８は、第１記憶部３０が動作状態へ遷移済であることを示す遷移済信号を分類部４２へ送信する（ステップＳ３１１）。一方、上記ステップＳ３０８の判断において、第１記憶部３０が動作状態ではない、すなわち休止状態であると判断すると（ステップＳ３０８：Ｎｏ）、ステップＳ３１０へ進む。
【０１１２】
ステップＳ３１０では、状態制御部３８が、第１記憶部３０を休止状態から動作状態へと遷移させる（ステップＳ３１０）。そして、上記ステップＳ３１１へ進む。
【０１１３】
上記ステップＳ３１１の処理によって、第１記憶部３０が動作状態へ遷移済であることを示す遷移済信号を受け付けると、分類部４２は、上記ステップＳ３０２で高優先度と判定したパケットを、第１記憶部３０に記憶する（ステップＳ３１２）。そして、本ルーチンを終了する。
【０１１４】
一方、上記ステップＳ３０２で判定したパケットの優先度が第１優先度未満の低優先度である場合には、上記ステップＳ３０４において否定判断し（ステップＳ３０４：Ｎｏ）、ステップＳ３１４へ進む。
【０１１５】
ステップＳ３１４において、分類部４２は、第１記憶部３０及び第２記憶部３２の内、低優先度に対応する記憶部である第２記憶部３２を示す情報を、パケットの記憶先を示す記憶先情報として状態制御部３８へ送信する（ステップＳ３１４）。
【０１１６】
次に、分類部４２は、第２記憶部３２を動作状態へ遷移させることを示す遷移指示を状態制御部３８へ送信する（ステップＳ３１５）。
【０１１７】
次に、状態制御部３８は、パケットの記憶先である第２記憶部３２が動作状態であるか否かを判別する（ステップＳ３１６）。例えば、状態制御部３８は、第１記憶部３０及び第２記憶部３２が、動作状態または休止状態の何れかの状態にあるかを示す状態情報を記憶する。そして、状態制御部３８は、該状態情報を、状態制御部３８で第１記憶部３０または第２記憶部３２の状態を制御する度に、制御した状態を示す状態情報に更新する。そして、状態制御部３８では、パケットの記憶対象の第２記憶部３２に対応する状態情報を読み取ることによって、第２記憶部３２が動作状態であるか否かを判別すればよい。
【０１１８】
第２記憶部３２が動作状態であると判断すると（ステップＳ３１６：Ｙｅｓ）、状態制御部３８は、第２記憶部３２が動作状態へ遷移済であることを示す遷移済信号を分類部４２へ送信する（ステップＳ３１８）。一方、上記ステップＳ３１６の判断において第２記憶部３２が動作状態ではない、すなわち休止状態であると判断すると（ステップＳ３１６：Ｎｏ）、ステップＳ３１７へ進む。
【０１１９】
ステップＳ３１７では、状態制御部３８が、第２記憶部３２を休止状態から動作状態へと遷移させる（ステップＳ３１７）。そして、上記ステップＳ３１８へ進む。
【０１２０】
上記ステップＳ３１８の処理によって、第２記憶部３２が動作状態へ遷移済であることを示す遷移済信号を受け付けると、分類部４２は、上記ステップＳ３０２で低優先度と判定したパケットを、第２記憶部３２に記憶する（ステップＳ３１９）。
【０１２１】
次に、ステップＳ３２０において、状態制御部３８が、ＮＷＩ／Ｆ２４から連続してパケットを受信中であるか否かを、上記ステップＳ１２０と同様にして判断する（ステップＳ３２０）。そして、連続してパケット受信中であると判断すると（ステップＳ３２０：Ｙｅｓ）、本ルーチンを終了する。
【０１２２】
一方、連続してパケットを受信中ではない、すなわち、連続して受信するパケット群の最後のタイミングを検出すると、否定判断する（ステップＳ３２０：Ｎｏ）。そして、ステップＳ３２２へ進む。
【０１２３】
ステップＳ３２２では、状態制御部３８が、第２記憶部３２を動作状態から休止状態へと遷移させた後に（ステップＳ３２２）、本ルーチンを終了する。
【０１２４】
次に、Ｉ／Ｆ部１４が実行する受信処理における、パケット受信処理を説明する。図６は、Ｉ／Ｆ部１４が実行する受信処理におけるパケット受信処理の手順を示すフローチャートである。
【０１２５】
まず、受信スケジューラ４０は、記憶部２０を監視し、第１記憶部３０にパケットが記憶されているか否かを判断する（ステップＳ４００）。そして、第１記憶部３０にパケットが記憶されていると判断すると（ステップＳ４００：Ｙｅｓ）、受信スケジューラ４０は、第１記憶部３０に記憶されているパケットを、ホストＩ／Ｆ２２を介して装置制御部１２へと送信する（ステップＳ４０２）。
【０１２６】
そして、受信スケジューラ４０は、第１記憶部３０にパケットが無いか否かを判断する（ステップＳ４０４）。すなわち、受信スケジューラ４０は、ステップＳ４０４において、第１記憶部３０に記憶された情報に対する全処理が終了しているか否かを判断する。そして、第１記憶部３０にパケットが記憶されている場合には、否定判断し（ステップＳ４０４：Ｎｏ）、上記ステップＳ４０２へ戻る。一方、第１記憶部３０にパケットが無い場合には肯定判断し（ステップＳ４０４：Ｙｅｓ）、ステップＳ４０５へ進む。
【０１２７】
ステップＳ４０５では、受信スケジューラ４０が、第１記憶部３０を休止状態へ遷移させることを示す遷移指示を状態制御部３８へ送信する（ステップＳ４０５）。
【０１２８】
第１記憶部３０を休止状態へ遷移させることを示す遷移指示を受け付けると、状態制御部３８は、第１記憶部３０を動作状態から休止状態に遷移させる（ステップＳ４０６）。そして本ルーチンを終了する。
【０１２９】
なお、状態制御部３８は、第１記憶部３０のパケット送信済を示す情報を受け付けたときに、分類部４２が高優先度のパケットを判別した場合には、ステップＳ４０６の処理を行わずに本ルーチンを終了してもよい。状態制御部３８による、分類部４２が高優先度のパケットを判別したか否かの判断は、パケットの記憶先情報として第１記憶部３０を示す情報を分類部４２から受け付けたか否かを判別することによって行えばよい。
【０１３０】
一方、上記ステップＳ４００で否定判断した場合（ステップＳ４００：Ｎｏ）、すなわち、第１記憶部３０にパケットが無い場合には、ステップＳ４０７へ進む。ステップＳ４０７では、受信スケジューラ４０が、第２記憶部３２の動作状態への遷移指示を状態制御部３８へ送信する（ステップＳ４０７）。
【０１３１】
第２記憶部３２の動作状態への遷移指示を受け付けた状態制御部３８は、第２記憶部３２を休止状態から動作状態に遷移させる（ステップＳ４０８）。そして、状態制御部３８は、第２記憶部３２が動作状態へ遷移済であることを示す遷移済信号を受信スケジューラ４０へ送信する（ステップＳ４０９）。
【０１３２】
次に、受信スケジューラ４０は、第２記憶部３２からパケットを読み出し、ホストＩ／Ｆ２２を介して装置制御部１２へと送信する（ステップＳ４１０）。なお、受信スケジューラ４０は、ステップＳ４１０の処理において、第２記憶部３２に記憶されている予め定めた数のパケットを読み出して送信してもよいし、第２記憶部３２に記憶されている全てのパケットを読み出して送信してもよい。このステップＳ４１０の処理において受信スケジューラ４０が読み出すパケット数は、予め設定すればよい。
【０１３３】
次に、受信スケジューラ４０が、第２記憶部３２の休止状態への遷移指示を状態制御部３８へ送信する（ステップＳ４１１）。該遷移指示を受け付けた状態制御部３８は、第２記憶部３２を休止状態に遷移させた後に（ステップＳ４１２）、本ルーチンを終了する。
【０１３４】
なお、上記ステップＳ４００〜ステップＳ４０４の処理では、受信スケジューラ４０は、第１記憶部３０にパケットが記憶されている間、常に第１記憶部３０からパケットを読出して送信する場合を説明した。しかし、受信スケジューラ４０は、高優先度のパケットから順にパケットを送信すればよく、この送信方法に限られない。
【０１３５】
例えば、受信スケジューラ４０は、第１記憶部３０に記憶されているパケットをＮ個（Ｎは１以上の整数）送信した後に、第２記憶部３２に記憶されているパケットを１個送信してもよい。
【０１３６】
以上説明したように、本実施の形態の情報処理装置１０のＩ／Ｆ部１４では、上記ステップＳ１００〜ステップＳ１２２の処理を実行することによって、装置制御部１２から受け付けたパケットが第１優先度以上の高優先度である場合には、第１記憶部２６を動作状態とした後に、該パケットを第１記憶部２６に記憶する。また、Ｉ／Ｆ部１４では、装置制御部１２から受け付けたパケットが第１優先度未満の低優先度である場合には、第２記憶部２８を動作状態とした後に、該パケットを第２記憶部２８に記憶する。
【０１３７】
また、情報処理装置１０のＩ／Ｆ部１４では、上記ステップＳ３００〜ステップＳ３２２の処理を実行することによって、外部装置から受け付けたパケットが第１優先度以上の高優先度である場合には、第１記憶部３０を動作状態とした後に、該パケットを第１記憶部３０に記憶する。また、Ｉ／Ｆ部１４では、外部装置から受け付けたパケットが第１優先度未満の低優先度である場合には、第２記憶部３２を動作状態とした後に、該パケットを第２記憶部３２に記憶する。
【０１３８】
このように、本実施の形態の情報処理装置１０では、記憶対象の情報であるパケットの優先度を判別し、判別した優先度に基づいて、第１記憶部２６及び第１記憶部３０、または第２記憶部２８及び第２記憶部３２にパケットを記憶する。このため、記憶対象の情報を優先度に応じて、消費電力の異なる複数種類の記憶部に分類して記憶することができるので、情報処理装置１０の省電力化と、情報処理装置１０の性能維持の双方を実現することができる。
【０１３９】
また、本実施の形態の情報処理装置１０では、情報処理装置１０全体の性能や消費電力を下げつつ、高性能な記憶部の使用に伴うコストの増加を抑えることができる。
【０１４０】
また、本実施の形態の情報処理装置１０では、高優先度のパケット、すなわち高優先度の情報を、第１記憶部２６または第１記憶部３０に記憶する。そして、情報処理装置１０では、低優先度のパケット、すなわち低優先度の情報を、第１記憶部２６及び第１記憶部３０より非アクセス状態における消費電の低い第２記憶部２８及び第２記憶部３２へ記憶する。このため、情報処理装置１０の省電力化と、情報処理装置１０の性能維持の双方を効果的に実現することができる。
【０１４１】
また、本実施の形態の情報処理装置１０のＩ／Ｆ部１４では、記憶してから読み出すまでの時間のより短いパケットを記憶する記憶部として、第２記憶部２８及び第２記憶部３２に比べて、消費電力は高いが高速メモリである第１記憶部２６または第１記憶部３０を用いる。そして、Ｉ／Ｆ部１４では、第１記憶部２６または第１記憶部３０に記憶されているパケットの送信完了後に、第１記憶部２６または第１記憶部３０を動作状態から休止状態に遷移させる制御を行う。
【０１４２】
このため、本実施の形態の情報処理装置１０では、頻繁な状態遷移に伴うオーバーヘッドを削減しつつ情報処理装置１０として要求される性能を確保できる。
【０１４３】
また、本実施の形態の情報処理装置１０のＩ／Ｆ部１４では、記憶してから読み出すまでの時間のより長いパケットを記憶する記憶部として、第１記憶部２６または第１記憶部３０に比べて、低速メモリではあるが消費電力の低いメモリである第２記憶部２８または第２記憶部３２を用いる。このため、第２記憶部２８及び第２記憶部３２に記憶されたパケットをこれらの第２記憶部２８及び第２記憶部３２に保持するために必要な電力を削減することができる。
【０１４４】
また、本実施の形態の情報処理装置１０では、参照頻度の高いパケットほど高い優先度のパケットであると判定する。そして、高優先度のパケットを第１記憶部２６や第１記憶部３０に記憶し、低優先度のパケットを第２記憶部２８や第２記憶部３２に記憶する。
【０１４５】
このため、処理優先度が高く比較的短い時間の後で参照される可能性の高いパケットと、処理優先度が低く比較的長い時間の後で参照される可能性の高いパケットとを区別し、その記憶場所を調整することができる。このため、情報処理装置１０は、消費電力の異なる複数種類の記憶部の混在による性能低下を抑制し、且消費電力削減を図ることができる。
【０１４６】
また、本実施の形態の情報処理装置１０では、喪失しては困るパケットには高い重要度が割り当てられる。そのうえで、重要なパケットが電源喪失時に失われないようにするため、本実施の形態では、高い重要度のパケットほど、不揮発メモリを使用する第２記憶部２８または第２記憶部３２に記憶できるように、意図的に優先度が低いと判定する。すなわち、本実施の形態では、分類部３４及び分類部４２は、重要度が高いパケットほど、優先度が低いと判定し、揮発性メモリを使用する第１記憶部２６または第１記憶部３０ではなく、不揮発性メモリを使用する第２記憶部２８または第２記憶部３２に記憶する。
【０１４７】
このため、第１記憶部２６や第１記憶部３０として揮発性メモリを用い、第２記憶部２８や第２記憶部３２として不揮発性メモリを用いることで、重要度の高いパケットを不揮発性メモリに記憶することができる。このため、電源喪失時の情報喪失リスクの低下を図ることができる。
【０１４８】
なお、本実施の形態では、上記ステップＳ１２２において、判別部３９がホストＩ／Ｆ２２から連続してパケットを受信中であると判断した場合には、第２記憶部２８の動作状態を維持する場合を説明した。しかし、図３のパケット記憶処理において、ステップＳ１２０及びステップＳ１２２の処理を所定時間毎に割り込み処理してもよい。この場合、判別部３９は、Ｉ／Ｆ部１４で受信したパケットのプロトコルや、Ｉ／Ｆ部１４で受信したパケットの送信元アドレス等を解析することによって、ホストＩ／Ｆ２２から連続してパケットを受信中であるか否かを判別すればよい。
【０１４９】
また、上記ステップＳ１１９の処理によって分類部３４が第２記憶部２８にパケットを記憶した後で、且つステップＳ１２２における判別部３９の判断処理の前に、第１記憶部２６にパケットが記憶されているか否かを状態制御部３８が判別する判別処理を行ってもよい。そして、状態制御部３８が、第１記憶部２６にパケットが記憶されていないと判別したときには、ステップＳ１２０及びステップＳ１２２の処理を行わずに本ルーチンを終了する。また、状態制御部３８が、第１記憶部２６にパケットが記憶されていると判別したときには、ステップＳ１２０及びステップＳ１２２の処理を行ってもよい。このような処理とすることで、パケットが第２記憶部２８に記憶され、且つパケットが第１記憶部２６に記憶されていないときには、第２記憶部２８を休止状態に遷移させず動作状態で維持することができる。
【０１５０】
なお、該状態制御部３８の判別処理は、別途監視判別部を設けた構成とし、該監視判別部で行ってもよい。
【０１５１】
（実施の形態２）
本実施の形態では、実施の形態１の情報処理装置１０とは異なる形態の情報処理装置１０Ａを説明する。
【０１５２】
図７は、本実施の形態の情報処理装置１０Ａの機能的構成を示すブロック図である。
【０１５３】
情報処理装置１０Ａは、装置制御部１２、及びＩ／Ｆ部１４Ａを備える。Ｉ／Ｆ部１４Ａは、ホストＩ／Ｆ２２、ＮＷＩ／Ｆ２４、第１記憶部１７Ａ、制御部１８Ａ、及び第２記憶部１９Ａを備える。なお、ホストＩ／Ｆ２２、及びＮＷＩ／Ｆ２４は、実施の形態１と同様である。
【０１５４】
第１記憶部１７Ａ及び第２記憶部１９Ａは、ネットワークを介して外部装置から受信した情報や、装置制御部１２から外部装置へ送信する情報を、一時的に記憶する。すなわち、第１記憶部１７Ａ及び第２記憶部１９Ａは、ホストＩ／Ｆ２２とＮＷＩ／Ｆ２４との転送速度の差を吸収するバッファとして機能する。
【０１５５】
なお、第１記憶部１７Ａと第２記憶部１９Ａとの関係や機能は、実施の形態１で説明した第１記憶部２６と第２記憶部２８との関係、及び第１記憶部３０と第２記憶部３２との関係や機能と同じである。
【０１５６】
なお、本実施の形態では、一例として、第１記憶部１７Ａと第２記憶部１９Ａとの関係や機能は、下記関係及び機能を満たす場合を説明する。本実施の形態では、第１記憶部１７Ａ及び第２記憶部１９Ａは、消費電力が互いに異なり、第２記憶部１９Ａの非アクセス状態における消費電力は、第１記憶部１７Ａの非アクセス状態における消費電力より低い。また、第１記憶部１７Ａは、第２記憶部１９Ａに比べて高速動作する。また、これらの第１記憶部１７Ａ及び第２記憶部１９Ａは、動作状態と休止状態の２種類の状態となるように制御される。
【０１５７】
なお、Ｉ／Ｆ部１４Ａは、消費電力の異なる複数の記憶部を備えた構成であればよく、第１記憶部１７Ａ及び第２記憶部１９Ａの２種類の記憶部を備えた構成に限られない。また、第１記憶部１７Ａ及び第２記憶部１９Ａのとりうる状態の種類は、動作状態と休止状態の２種類に限定されない。
【０１５８】
制御部１８Ａは、ＣＰＵ、ＲＯＭ、及びＲＡＭなどを含んで構成されるコンピュータであり、Ｉ／Ｆ部１４Ａ全体を制御する。制御部１８Ａは、ホストＩ／Ｆ２２とＮＷＩ／Ｆ２４とを介して実行する送受信処理が正常に行われるように制御する。制御部１８Ａでは、ホストＩ／Ｆ２２またはＮＷＩ／Ｆ２４から受け付けた情報の優先度を判別する。そして、判別した優先度が第１優先度より高い高優先度の情報を第１記憶部１７Ａに記憶し、判別した優先度が第１優先度より低い低優先度の情報を第２記憶部１９Ａに記憶する制御を行う。
【０１５９】
なお、図７では、制御部１８Ａが、第１記憶部１７Ａ、第２記憶部１９Ａ、ホストＩ／Ｆ２２、及びＮＷＩ／Ｆ２４の各々と電気的に接続された構成を示した。しかし、図７に示す構成に加えてさらに、ホストＩ／Ｆ２２と第１記憶部１７Ａ及び第２記憶部１９Ａ、ＮＷＩ／Ｆ２４と第１記憶部１７Ａ及び第２記憶部１９Ａも、バス等によって電気的に接続された構成であってもよい。
【０１６０】
次に、Ｉ／Ｆ部１４Ａが実行する送受信処理の手順を説明する。
【０１６１】
図８は、Ｉ／Ｆ部１４Ａが実行する送受信処理における受信処理の手順を示すフローチャートである。
【０１６２】
まず、制御部１８Ａが、所定時間毎、または、ホストＩ／Ｆ２２あるいはＮＷＩ／Ｆ２４から通知を受けたときに、ホストＩ／Ｆ２２またはＮＷＩ／Ｆ２４から情報を受信したか否かを判別する（ステップＳ５００）。ステップＳ５００で否定判断すると（ステップＳ５００：Ｎｏ）本ルーチンを終了し、肯定判断すると（ステップＳ５００：Ｙｅｓ）ステップＳ５０２へ進む。
【０１６３】
次に、制御部１８Ａが、ホストＩ／Ｆ２２またはＮＷＩ／Ｆ２４から受け付けた情報の優先度を判定する（ステップＳ５０２）。優先度の判定は、実施の形態１と同様にして行う。次に、制御部１８Ａは、ステップＳ５０２で判定した情報の優先度が、予め定めた第１優先度以上の高優先度であるか否かを判別する（ステップＳ５０４）。そして、ステップＳ５０２で判定した情報の優先度が、高優先度である場合には、肯定判断し（ステップＳ５０４：Ｙｅｓ）、ステップＳ５０８へ進む。
【０１６４】
次に、制御部１８Ａは、第１記憶部１７Ａ及び第２記憶部１９Ａの内、高優先度に対応する記憶部である第１記憶部１７Ａが動作状態であるか否かを判別する（ステップＳ５０８）。例えば、制御部１８Ａは、第１記憶部１７Ａ及び第２記憶部１９Ａが、動作状態または休止状態の何れかの状態にあるかを示す状態情報を記憶する。そして、制御部１８Ａは、該状態情報を、制御部１８Ａで第１記憶部１７Ａまたは第２記憶部１９Ａの状態を制御する度に、制御した状態を示す状態情報に更新する。そして、制御部１８Ａでは、情報の記憶対象の第１記憶部１７Ａに対応する状態情報を読み取ることによって、第１記憶部１７Ａが動作状態であるか否かを判別すればよい。
【０１６５】
第１記憶部１７Ａが動作状態ではない、すなわち休止状態であると判断すると（ステップＳ５０８：Ｎｏ）、ステップＳ５１０へ進む。ステップＳ５１０では、制御部１８Ａが、第１記憶部１７Ａを休止状態から動作状態へと遷移させる（ステップＳ５１０）。そして、ステップＳ５１２へ進む。一方、制御部１８Ａでは、第１記憶部１７Ａが動作状態であると判断すると（ステップＳ５０８：Ｙｅｓ）、ステップＳ５１２へ進む。
【０１６６】
ステップＳ５１２において、制御部１８Ａは、上記ステップＳ５０２で高優先度と判定した情報を、第１記憶部１７Ａに記憶する（ステップＳ５１２）。そして、本ルーチンを終了する。
【０１６７】
一方、上記ステップＳ５０２で判定した情報の優先度が第１優先度未満の低優先度である場合には、上記ステップＳ５０４において否定判断し（ステップＳ５０４：Ｎｏ）、ステップＳ５１４へ進む。
【０１６８】
ステップＳ５１４において、制御部１８Ａは、第１記憶部１７Ａ及び第２記憶部１９Ａの内、低優先度に対応する記憶部である第２記憶部１９Ａが動作状態であるか否かを、上記ステップ５０８と同様にして判別する（ステップＳ５１４）。
【０１６９】
第２記憶部１９Ａが動作状態であると判断すると（ステップＳ５１４：Ｙｅｓ）、ステップＳ５１８へ進む。一方、第２記憶部１９Ａが休止状態と判断すると（ステップＳ５１４：Ｎｏ）、ステップＳ５１６へ進む。
【０１７０】
ステップＳ５１６では、制御部１８Ａが、第２記憶部１９Ａを休止状態から動作状態へと遷移させる（ステップＳ５１６）。そして、ステップＳ５１８へ進む。
【０１７１】
ステップＳ５１８では、制御部１８Ａは、上記ステップＳ５０２で低優先度と判定した情報を、第２記憶部１９Ａに記憶する（ステップＳ５１８）。
【０１７２】
次に、ステップＳ５２０において、制御部１８Ａが、ホストＩ／Ｆ２２またはＮＷＩ／Ｆ２４から連続して情報を受信中であるか否かを判断する（ステップＳ５２０）。そして、連続して情報受信中であると判断すると（ステップＳ５２０：Ｙｅｓ）、本ルーチンを終了する。なお、ステップＳ５２０の判断は、実施の形態１のステップＳ１２０（図３参照）と同様にして行う。
【０１７３】
一方、連続して情報を受信中ではないと判定すると、否定判断し（ステップＳ５２０：Ｎｏ）。そして、ステップＳ５２２へ進む。ステップＳ５２２では、制御部１８Ａが、第２記憶部１９Ａを動作状態から休止状態へと遷移させた後に（ステップＳ５２２）、本ルーチンを終了する。
【０１７４】
上記ステップＳ５００〜ステップＳ５２２の処理を実行することによって、Ｉ／Ｆ部１４Ａでは、装置制御部１２から受け付けた情報が第１優先度以上の高優先度である場合には、第２記憶部１９Ａより非アクセス状態における消費電力が高く且つ高速動作する第１記憶部１７Ａを動作状態とした後に、該情報を第１記憶部１７Ａに記憶する。また、Ｉ／Ｆ部１４Ａでは、装置制御部１２から受け付けた情報が第１優先度未満の低優先度である場合には、第２記憶部１９Ａより非アクセス状態における消費電力が低く且つ第２記憶部１９Ａより低速動作する第２記憶部１９Ａを動作状態とした後に、該情報を第２記憶部１９Ａに記憶する。また、第２記憶部１９Ａへの情報記憶後に、連続して情報受信中ではない場合には、第２記憶部１９Ａを休止状態に遷移させる。
【０１７５】
次に、Ｉ／Ｆ部１４Ａが実行する送受信処理における、送信処理を説明する。図９は、Ｉ／Ｆ部１４Ａが実行する送信処理の手順を示すフローチャートである。
【０１７６】
Ｉ／Ｆ部１４Ａでは、図８における受信処理において、図９に示す送信処理を割り込み処理する。
【０１７７】
まず、制御部１８Ａは、装置制御部１２からホストＩ／Ｆ２２を介して、または外部装置からＮＷＩ／Ｆ２４を介して、送信指示を受信したか否かを判断する（ステップＳ６００）。ステップＳ６００で否定判断すると（ステップＳ６００：Ｎｏ）、本ルーチンを終了する。一方、ステップＳ６００で肯定判断すると（ステップＳ６００：Ｙｅｓ）、ステップＳ６０２へ進む。
【０１７８】
次に、制御部１８Ａは、より高優先度の情報を記憶する第１記憶部１７Ａに情報が有るか否か、すなわち、該第１記憶部１７Ａに情報が記憶されているか否かを判断する（ステップＳ６０２）。そして、第１記憶部１７Ａに情報が記憶されている場合には、肯定判断し（ステップＳ２０４：Ｙｅｓ）、ステップＳ６０４へ進む。
【０１７９】
そして、制御部１８Ａは、第１記憶部１７Ａに記憶されている情報を送信する（ステップＳ６０４）。詳細には、制御部１８Ａは、上記ステップＳ６００で受け付けた送信指示に含まれる、送信先を示す情報によって示される送信先に、第１記憶部１７Ａから読み取った情報を送信する。次に、制御部１８Ａは、第１記憶部１７Ａに情報が無いか否かを判断する（ステップＳ６０６）。否定判断すると（ステップＳ６０６：Ｎｏ）、上記ステップＳ６０４へ戻る。すなわち、制御部１８Ａは、ステップＳ６０６において第１記憶部１７Ａに記憶された情報に対する全処理が終了しているか否かを判断する。一方、制御部１８Ａは、第１記憶部１７Ａに情報が無いと判断すると（ステップＳ６０６：Ｙｅｓ）、ステップＳ６０８へ進む。
【０１８０】
ステップＳ６０８において、制御部１８Ａは、第１記憶部１７Ａを動作状態から休止状態に遷移させる（ステップＳ６０８）。そして本ルーチンを終了する。
【０１８１】
一方、上記ステップＳ６０２で否定判断した場合（ステップＳ６０２：Ｎｏ）、すなわち、第１記憶部１７Ａに情報が無い場合には、ステップＳ６１０へ進む。ステップＳ６１０では、制御部１８Ａが、第２記憶部１９Ａを休止状態から動作状態に遷移させる（ステップＳ６１０）。
【０１８２】
次に、制御部１８Ａは、第２記憶部１９Ａから情報を読み出し送信する（ステップＳ６１２）。なお、情報の送信先は、ステップＳ６０４と同様である。
【０１８３】
次に、制御部１８Ａは、第２記憶部１９Ａを休止状態に遷移させた後に（ステップＳ６１４）、本ルーチンを終了する。
【０１８４】
以上説明したように、本実施の形態の情報処理装置１０Ａでは、制御部１８Ａが、記憶対象の情報の優先度を判別し、判別した優先度に基づいて、第１記憶部１７Ａまたは第２記憶部１９Ａ情報を記憶する。このため、制御部１８Ａが、記憶対象の情報を優先度に応じて、消費電力の異なる複数種類の記憶部に分類して記憶することができるので、情報処理装置１０Ａの省電力化と、情報処理装置１０Ａの性能維持の双方を実現することができる。
【０１８５】
また、本実施の形態の情報処理装置１０Ａでは、制御部１８Ａと第１記憶部１７Ａと第２記憶部１９Ａによって、上述した送受信処理実行する。このため、実施の形態１の情報処理装置１０においてハードウェアで実行されていた各種処理を、制御部１８Ａ上で動作するソフトウェアとして実現することができる。このため、本実施の形態の情報処理装置１０Ａは、実施の形態１の情報処理装置１０で得られる効果に加えて更に、部品点数の削減による部品コストの削減や実装面積の削減や柔軟性の向上を図ることができる。
【０１８６】
（実施の形態３）
本実施の形態では、Ｉ／Ｆ部を制御する制御部についても、動作状態または休止状態に遷移させる場合を説明する。
【０１８７】
図１０は、本実施の形態の情報処理装置１０Ｂの機能的構成を示すブロック図である。
【０１８８】
情報処理装置１０Ｂは、装置制御部１２Ｂ、及びＩ／Ｆ部１４Ｂを備える。
【０１８９】
装置制御部１２Ｂは、実施の形態１及び実施の形態２の装置制御部１２と同様に、外部装置へ送信する情報をＩ／Ｆ部１４Ｂへ送信する。また、装置制御部１２Ｂは、装置制御部１２と同様に、外部装置からＩ／Ｆ部１４Ｂを介して情報を受信する。
【０１９０】
装置制御部１２Ｂは、さらに、制御部１８Ｂを動作状態または休止状態に遷移させるための状態指示信号をＩ／Ｆ部１４Ｂへ出力する。
【０１９１】
Ｉ／Ｆ部１４Ｂは、ホストＩ／Ｆ２２Ｂ、ＮＷＩ／Ｆ２４Ｂ、第１記憶部１７Ａ、制御部１８Ｂ、及び第２記憶部１９Ａを備える。なお、第１記憶部１７Ａ及び第２記憶部１９Ａは、実施の形態２と同様である。
【０１９２】
ホストＩ／Ｆ２２Ｂは、外部装置へ送信する情報を装置制御部１２Ｂから受け付ける。また、ホストＩ／Ｆ２２Ｂは、制御部１８Ｂを動作状態または休止状態に遷移させるための状態指示信号を装置制御部１２Ｂから受け付ける。
【０１９３】
ＮＷＩ／Ｆ２４Ｂは、装置制御部１２Ｂへ送信する情報を外部装置から受け付ける。また、ＮＷＩ／Ｆ２４Ｂは、制御部１８Ｂを動作状態または休止状態に遷移させるための状態指示信号を外部装置から受け付ける。
【０１９４】
制御部１８Ｂは、ＣＰＵ、ＲＯＭ、及びＲＡＭなどを含んで構成されるコンピュータであり、Ｉ／Ｆ部１４Ｂ全体を制御する。制御部１８Ｂは、実施の形態２の制御部１８Ａと同様に、ホストＩ／Ｆ２２ＢとＮＷＩ／Ｆ２４Ｂとを介して実行する送受信処理が正常に行われるように制御する。制御部１８Ｂでは、実施の形態２の制御部１８Ａと同様に、ホストＩ／Ｆ２２ＢまたはＮＷＩ／Ｆ２４Ｂから受け付けた情報の優先度を判別する。そして、判別した優先度が第１優先度以上の高優先度の情報を第１記憶部１７Ａに記憶し、判別した優先度が第１優先度未満の低優先度の情報を第２記憶部１９Ａに記憶する制御を行う。すなわち、制御部１８Ｂは、実施の形態２の制御部１８Ａと同様の送受信処理を行う。
【０１９５】
本実施の形態の制御部１８Ｂでは、上記送受信処理を行う機能に加えて更に、状態遷移処理を行う機能を有する。具体的には、制御部１８Ｂでは、ホストＩ／Ｆ２２ＢまたはＮＷＩ／Ｆ２４Ｂから受け付けた状態指示信号によって示される状態に遷移する。更に詳細には、制御部１８Ｂでは、ホストＩ／Ｆ２２ＢまたはＮＷＩ／Ｆ２４Ｂから動作状態を示す状態指示信号を受け付けると、動作状態に遷移する。一方、制御部１８Ｂでは、ホストＩ／Ｆ２２ＢまたはＮＷＩ／Ｆ２４Ｂから休止状態を示す状態指示信号を受け付けると、休止状態に遷移する。
【０１９６】
次に、制御部１８Ｂが行う状態遷移処理の手順を説明する。なお、制御部１８Ｂでは、実施の形態２の制御部１８Ａが行う送受信処理を実行する。そして、制御部１８Ｂでは、この送受信処理への割込みルーチンとして、状態遷移処理を実行する。
【０１９７】
図１１は、制御部１８Ｂが行う状態遷移処理の手順を示すフローチャートである。
【０１９８】
制御部１８ＢはホストＩ／Ｆ２２ＢまたはＮＷＩ／Ｆ２４Ｂから状態指示信号を受信したか否かを判断する（ステップＳ７００）。ステップＳ７００で否定判断すると（ステップＳ７００：Ｎｏ）、本ルーチンを終了する。一方、ステップＳ７００で肯定判断すると（ステップＳ７００：Ｙｅｓ）、ステップＳ７０２へ進む。
【０１９９】
ステップＳ７０２において、制御部１８Ｂは、ステップＳ７００で受け付けた状態指示信号が動作状態を指示する指示信号であるか否かを判断する（ステップＳ７０２）。ステップＳ７０２で肯定判断し、受け付けた状態指示信号が動作状態への状態遷移指示である場合には（ステップＳ７０２：Ｙｅｓ）、ステップＳ７０４へ進む。そして、制御部１８Ｂは、動作状態へと遷移し（ステップＳ７０４）、本ルーチンを終了する。
【０２００】
具体的には、制御部１８Ｂは、ホストＩ／Ｆ２２Ｂ及びＮＷＩ／Ｆ２４Ｂから状態変更指示信号は受け付けるが、それ以外の各種情報や各種信号を受け付けない状態である休止状態から、状態変更指示信号を含む各種信号や各種情報を受け付ける動作状態に遷移する。
【０２０１】
一方、上記ステップＳ７０２で否定判断し、受け付けた状態指示信号が休止状態への状態遷移指示である場合には（ステップＳ７０２：Ｎｏ）、ステップＳ７０６へ進む。そして、制御部１８Ｂは、休止状態へと遷移し（ステップＳ７０６）、本ルーチンを終了する。
【０２０２】
具体的には、制御部１８Ｂは、状態変更指示信号を含む各種信号や各種情報を受け付ける動作状態から、ホストＩ／Ｆ２２Ｂ及びＮＷＩ／Ｆ２４Ｂから状態変更指示信号は受け付けるが、それ以外の各種情報や各種信号を受け付けない状態である休止状態に遷移する。
【０２０３】
そして、制御部１８Ｂでは、実施の形態２の制御部１８Ａと同様に、送受信処理を実行すればよい。なお、制御部１８Ｂでは、送受信処理を実行する前に、装置制御部１２Ｂまたは外部装置から、動作状態への遷移を示す状態指示信号を受信するものとする。すなわち、制御部１８Ｂでは、動作状態に遷移した後に、制御部１８Ａと同様にして送受信処理（図８〜図９参照）を実行する。
【０２０４】
なお、制御部１８Ｂでは、更に、図１２に示す割り込み処理を所定時間毎に実行してもよい。図１２は、制御部１８Ｂが実行する割込み処理の手順を示すフローチャートである。
【０２０５】
制御部１８Ｂでは、所定時間毎に、第１記憶部１７Ａ及び第２記憶部１９Ａに記憶されていた全ての情報が送信済みであるか否かを判断する（ステップＳ７１０）。ステップＳ７１０で否定判断すると（ステップＳ７１０：Ｎｏ）、本ルーチンを終了し、肯定判断すると（ステップＳ７１０：Ｙｅｓ）ステップＳ７１２へ進む。
【０２０６】
ステップＳ７１２において、制御部１８Ｂは、休止状態に遷移することを示す情報をホストＩ／Ｆ２２Ｂを介して装置制御部１２Ｂへ送信する（ステップＳ７１２）。次に制御部１８Ｂは、休止状態へ遷移し（ステップＳ７１４）、本ルーチンを終了する。
【０２０７】
なお、本実施の形態では、受信した状態指示信号に基づいて、制御部１８Ｂが動作状態または休止状態に遷移する場合を説明した。そして、制御部１８Ｂが動作状態に遷移した後に、制御部１８Ｂが、各要素（第１記憶部１７Ａ、第２記憶部１９Ａ）の状態を変更する送受信処理を実行する場合を説明した。しかし、第１記憶部１７Ａ及び第２記憶部１９Ａの状態の変更は、ホストＩ／Ｆ２２ＢやＮＷＩ／Ｆ２４Ｂの制御によって行ってもよい。
【０２０８】
以上説明したように、本実施の形態の情報処理装置１０Ｂは、実施の形態２の情報処理装置１０Ａを更に拡張した機能を有する。すなわち、情報処理装置１０Ｂでは、制御部１８Ｂについても、動作状態または休止状態に遷移する。
【０２０９】
このため、本実施の形態の情報処理装置１０Ｂでは、実施の形態１及び実施の形態２で得られる効果に加えてさらに、より消費電力を削減することができる。
【０２１０】
（実施の形態４）
実施の形態１〜実施の形態３では、消費電力の異なる記憶部を、Ｉ／Ｆ部（Ｉ／Ｆ部１４、Ｉ／Ｆ部１４Ａ、Ｉ／Ｆ部１４Ｂ）中に構成される一時的な記憶領域として適用した構成を説明した。本実施の形態では、消費電力の異なる記憶部を、情報処理装置本体内における記憶領域として設けた構成を説明する。
【０２１１】
図１３は、本実施の形態の情報処理装置１０Ｃの機能的構成を示すブロック図である。なお、本実施の形態では、情報処理装置１０Ｃ自体が、通信装置として機能する。図１３に示すように、本実施の形態の情報処理装置１０Ｃは、制御部５０、第１記憶部５２、第２記憶部５４、及びネットワークインターフェース部５６（以下ＮＷＩ／Ｆ部５６と称する）を備える。
【０２１２】
これらの制御部５０、第１記憶部５２、第２記憶部５４、及びＮＷＩ／Ｆ部５６は、バス５８によって接続されている。
【０２１３】
制御部５０は、情報処理装置１０Ｃ全体を制御する。制御部５０は、ＣＰＵ、ＲＯＭ、及びＲＡＭなどを含んで構成されるコンピュータであり、情報処理装置１０Ｃ全体を制御する。なお、情報処理装置１０Ｃでは、実施の形態１〜実施の形態３で説明した送受信プログラムや、その他の各種プログラムや、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や、各種アプリケーションが動作する。
【０２１４】
ＮＷＩ／Ｆ部５６は、情報処理装置１０Ｃとネットワークとを接続する。なお、ＮＷＩ／Ｆ部５６は、実施の形態１で説明したＮＷＩ／Ｆ２４と同様のインターフェースや通信方式を用いればよい。
【０２１５】
第１記憶部５２及び第２記憶部５４は、各種情報を記憶する。第１記憶部５２及び第２記憶部５４の関係や機能は、実施の形態１で説明した第１記憶部２６と第２記憶部２８との関係や機能、及び第１記憶部３０と第２記憶部３２との関係や機能と同じである。
【０２１６】
すなわち、第１記憶部５２及び第２記憶部５４は、消費電力が互いに異なる。また、第２記憶部５４の非アクセス状態における消費電力は、第１記憶部５２の非アクセス状態における消費電力より低い。また、第１記憶部５２は、第２記憶部５４に比べて高速動作する。また、これらの第１記憶部５２及び第２記憶部５４は、動作状態と休止状態の２種類の状態となるように制御される。
【０２１７】
なお、情報処理装置１０Ｃは、ディスクドライブやディスプレイアダプタ等の公知の周辺装置（図示省略）を備えた構成であってもよい。また、情報処理装置１０Ｃでは、制御部５０と、第１記憶部５２及び第２記憶部５４とが電気的に接続されて通信装置としての情報処理装置１０Ｃを構成していればよく、バス５８は、制御部５０の内部バスであってもよいし、外部バスであってもよい。
【０２１８】
なお、制御部５０では、ソフトウェアの一つとして、ネットワークを利用するソフトウェア（以下、ネットワークソフトと称する）が動作すると仮定する。制御部５０では、制御部５０のソフトウェアが生成する情報、及びＮＷＩ／Ｆ部５６を介して受信する情報を、情報の優先度に応じて、第１記憶部５２または第２記憶部５４に記憶する。第１記憶部５２及び第２記憶部５４に記憶された情報は、ＮＷＩ／Ｆ部５６を介してネットワークに送信、または制御部５０で処理される。
【０２１９】
次に、制御部５０で実行する送受信処理を説明する。図１４は、制御部５０が実行する送受信処理における、情報記憶処理の手順を示すフローチャートである。
【０２２０】
まず、制御部５０が、情報を生成する（ステップＳ８００）。なお、制御部５０が生成する情報の優先度は、アプリケーションなどのソフトウェアに割り当てられた優先度と一致する。ソフトウェアの優先度の割り当ては、使用者が割り当てたり、アプリケーション開発者が割り当てたり、ＯＳなどにより自動的に判定されたり（フォアグラウンド・バックグラウンドの別等）といった種々の方法で行う。
【０２２１】
次に、制御部５０は、生成した情報が第１優先度以上の高優先度であるか否かを判別する（ステップＳ８０２）。そして、情報の優先度が高優先度である場合には、肯定判断し（ステップＳ８０２：Ｙｅｓ）、ステップＳ８０４へ進む。
【０２２２】
次に、制御部５０は、第１記憶部５２及び第２記憶部５４の内、高優先度に対応する記憶部である第１記憶部５２が動作状態であるか否かを判別する（ステップＳ８０４）。例えば、制御部５０は、第１記憶部５２及び第２記憶部５４が、動作状態または休止状態の何れかの状態にあるかを示す状態情報を記憶する。そして、制御部５０は、該状態情報を、制御部５０で第１記憶部５２または第２記憶部５４の状態を制御する度に、制御した状態を示す状態情報に更新する。そして、制御部５０では、情報の記憶対象の第１記憶部５２に対応する状態情報を読み取ることによって、第１記憶部５２が動作状態であるか否かを判別すればよい。
【０２２３】
第１記憶部５２が動作状態であると判断すると（ステップＳ８０４：Ｙｅｓ）、制御部５０は、ステップＳ８０６へ進む。一方、第１記憶部５２が動作状態ではない、すなわち休止状態であると判断すると（ステップＳ８０４：Ｎｏ）、ステップＳ８０８へ進む。
【０２２４】
ステップＳ８０８では、制御部５０が、第１記憶部５２を休止状態から動作状態へと遷移させる（ステップＳ８０８）。そして、ステップＳ８０６へ進む。
【０２２５】
ステップＳ８０６では、制御部５０は、ステップＳ８００で生成した高優先度の情報を記憶するため、第１記憶部５２からメモリを割り当てる。これによって、該高優先度の情報を第１記憶部５２へ記憶する（ステップＳ８０６）。そして、本ルーチンを終了する。
【０２２６】
なお、ここでいうメモリの割り当てとは、情報を記憶する対象の記憶部（第１記憶部５２または第２記憶部５４）の物理的なアドレスとネットワークソフトが管理するアドレスとの対応関係を構築することを意味する。例えば、仮想記憶を使用するＯＳであれば、物理メモリのアドレスとアプリケーションが使用する仮想メモリのアドレスとの対応関係は、ＯＳがページテーブルとして管理している。このテーブルにエントリを作る際に、ある仮想アドレスに対しては第１記憶部５２のアドレスを対応づけ、ある仮想アドレスに対しては第２記憶部５４のアドレスを対応づけるようにすればよい。また、途中で記憶部（第１記憶部５２または第２記憶部５４）を変更するような場合には、エントリの物理アドレスを変更すればよい。ただし、その場合は仮想メモリに保存された内容の整合性をとるためにコピー処理を行う必要がある。
【０２２７】
一方、生成した情報の優先度が第１優先度未満の低優先度である場合には、上記ステップＳ８０２において否定判断し（ステップＳ８０２：Ｎｏ）、ステップＳ８１０へ進む。
【０２２８】
次に、制御部５０は、低優先度の情報の記憶先である第２記憶部５４が動作状態であるか否かを上記ステップＳ８０４と同様にして判別する（ステップＳ８１０）。
【０２２９】
第２記憶部５４が動作状態であると判断すると（ステップＳ８１０：Ｙｅｓ）、制御部５０は、後述するステップＳ８１２へ進む。一方、第２記憶部５４が休止状態であると判断すると（ステップＳ８１０：Ｎｏ）、制御部５０は、第２記憶部５４を休止状態から動作状態へと遷移させる（ステップＳ８１４）。そして、ステップＳ８１２へ進む。
【０２３０】
ステップＳ８１２では、制御部５０は、ステップＳ８００で生成した低優先度の情報を記憶するため、第２記憶部５４からメモリを割り当てる。これによって、該低優先度の情報を第２記憶部５４へ記憶する（ステップＳ８１２）。そして、制御部５０は、第２記憶部５４を動作状態から休止状態へと遷移させた後に（ステップＳ８１６）、本ルーチンを終了する。
【０２３１】
次に、制御部５０が実行する送受信処理における、送信処理を説明する。図１５は、制御部５０が実行する送信処理の手順を示すフローチャートである。
【０２３２】
まず、制御部５０は、より高優先度の情報を記憶する第１記憶部５２に情報が有るか否か、すなわち、第１記憶部５２に割り当てられている情報があるか否かを判断する（ステップＳ９００）。そして、第１記憶部５２に情報が割り当てられている場合には、肯定判断し（ステップＳ９００：Ｙｅｓ）、ステップＳ９０２へ進む。
【０２３３】
次に、制御部５０は、第１記憶部５２に割り当てられている情報を、ネットワークに送信可能な形式に整形し、ヘッダ等を付与することでパケットを生成する（ステップＳ９０２）。次に、制御部５０は、生成したパケットを、ＮＷＩ／Ｆ部５６を介して送信する（ステップＳ９０４）。
【０２３４】
次に、制御部５０は、第１記憶部５２に割り当てられている情報が無いか否かを判断する（ステップＳ９０６）。すなわち、制御部５０は、ステップＳ９０６において、第１記憶部５２に記憶された情報に対する全処理が終了しているか否かを判断する。そして、第１記憶部５２に割り当てられている情報が有る場合には否定判断し（ステップＳ９０６：Ｎｏ）、上記ステップＳ９０２へ戻る。一方、第１記憶部５２に割り当てられている情報が無い場合には肯定判断し（ステップＳ９０６：Ｙｅｓ）、ステップＳ９０８へ進む。
【０２３５】
次に、制御部５０は、第１記憶部５２を動作状態から休止状態に遷移させた後に（ステップＳ９０８）、本ルーチンを終了する。
【０２３６】
一方、上記ステップＳ９００で否定判断し（ステップＳ９００：Ｎｏ）、第２記憶部５４に割り当てられている情報が無い場合には、ステップＳ９１０へ進む。そして、制御部５０は、第２記憶部５４を休止状態から動作状態に遷移させる（ステップＳ９１０）。
【０２３７】
次に、制御部５０は、第２記憶部５４に割り当てられている情報を、ネットワークに送信可能な形式に整形し、ヘッダ等を付与することでパケットを生成する（ステップＳ９１２）。次に、制御部５０は、生成したパケットを、ＮＷＩ／Ｆ部５６を介して送信する（ステップＳ９１４）。
【０２３８】
次に、制御部５０は、第２記憶部５４を動作状態から休止状態に遷移させた後に（ステップＳ９１６）、本ルーチンを終了する。
【０２３９】
なお、本実施の形態では、生成した情報の優先度に応じて、該情報を第１記憶部５２または第２記憶部５４に割り当てる場合を説明した。しかし、優先度が低い情報であっても、ネットワークに送信される前の処理では制御部５０が頻繁に参照する可能性が高い。このような状況に対応するため、低優先度の情報についても、パケットを生成するまでは（上記ステップＳ９１２参照）、第１記憶部５２に記憶し、ＮＷＩ／Ｆ部５６へ送信する直前に第２記憶部５４に移動させるようにしてもよい。
【０２４０】
なお、上記送受信処理において、第１記憶部５２を使用する場合には、記憶対象の情報を記憶もしくは該情報を参照したとしても、制御部５０は、第１記憶部５２を動作状態で維持する。一方、制御部５０は、第２記憶部５４を使用する場合には、記憶対象の情報を記憶もしくは該情報を参照した後には、原則として、動作状態から休止状態に遷移させる。なお、制御部５０は、連続して第２記憶部５４を使用すると判断した場合には、記憶対象の情報を記憶もしくは該情報を参照した後であっても、第２記憶部５４を動作状態で維持してもよい。
【０２４１】
次に、情報処理装置１０Ｃが実行する送受信処理における受信処理を説明する。図１６は、情報処理装置１０Ｃが実行する送受信処理における受信処理の手順を示すフローチャートである。
【０２４２】
まず、ＮＷＩ／Ｆ部５６が、所定時間毎に、外部装置からネットワークを介してパケットを受信したか否かを判別する（ステップＳ９２０）。ステップＳ９２０で否定判断すると（ステップＳ９２０：Ｎｏ）本ルーチンを終了し、肯定判断すると（ステップＳ９２０：Ｙｅｓ）ステップＳ９２２へ進む。
【０２４３】
次に、ＮＷＩ／Ｆ部５６が、受け付けたパケットに含まれる情報の優先度を判定する（ステップＳ９２２）。優先度の判定は、実施の形態１と同様にして行う。次に、制御部５０は、ステップＳ９２２で判定された情報の優先度が、第１優先度以上の高優先度であるか否かを判別する（ステップＳ９２４）。そして、情報の優先度が、高優先度である場合には、肯定判断し（ステップＳ９２４：Ｙｅｓ）、ステップＳ９２６へ進む。
【０２４４】
次に、制御部５０は、第１記憶部５２及び第２記憶部５４の内、高優先度に対応する記憶部である第１記憶部５２が動作状態であるか否かを判別する（ステップＳ９２６）。第１記憶部５２が動作状態ではない、すなわち休止状態であると判断すると（ステップＳ９２６：Ｎｏ）、ステップＳ９３０へ進む。ステップＳ９３０では、制御部５０が、第１記憶部５２を休止状態から動作状態へと遷移させる（ステップＳ９３０）。そして、ステップＳ９２８へ進む。一方、制御部５０では、第１記憶部５２が動作状態であると判断すると（ステップＳ９２６：Ｙｅｓ）、ステップＳ９２８へ進む。
【０２４５】
ステップＳ９２８において、制御部５０は、上記ステップＳ９２２で高優先度と判定された情報を、第１記憶部５２に記憶する（ステップＳ９２８）。そして、本ルーチンを終了する。
【０２４６】
一方、情報の優先度が第１優先度未満の低優先度である場合には、上記ステップＳ９２４において否定判断し（ステップＳ９２４：Ｎｏ）、ステップＳ９３２へ進む。
【０２４７】
ステップＳ９３２において、制御部５０は、第１記憶部５２及び第２記憶部５４の内、低優先度に対応する記憶部である第２記憶部５４が動作状態であるか否かを判別する（ステップＳ９３２）。
【０２４８】
第２記憶部５４が動作状態であると判断すると（ステップＳ９３２：Ｙｅｓ）、ステップＳ９３４へ進む。一方、第２記憶部５４が休止状態と判断すると（ステップＳ９３２：Ｎｏ）、ステップＳ９３６へ進む。
【０２４９】
ステップＳ９３６では、制御部５０が、第２記憶部５４を休止状態から動作状態へと遷移させる（ステップＳ９３６）。そして、ステップＳ９３４へ進む。
【０２５０】
ステップＳ９３４では、制御部５０は、上記ステップＳ９２２で低優先度と判定された情報を、第２記憶部５４に記憶する（ステップＳ９３４）。
【０２５１】
次に、ステップＳ９３８において、制御部５０が、第２記憶部５４を動作状態から休止状態へと遷移させた後に（ステップＳ９３８）、本ルーチンを終了する。
【０２５２】
以上説明したように、本実施の形態の情報処理装置１０Ｃでは、制御部５０のネットワークソフトが生成した情報の優先度に基づいて、情報処理装置１０Ｃ内の記憶部（第１記憶部５２、第２記憶部５４）を選択して該情報を記憶する。
【０２５３】
このため、本実施の形態の情報処理装置１０Ｃでは、情報処理装置１０Ｃの更なる省電力化と、情報処理装置１０Ｃの更なる性能維持の双方を実現することができる。
【０２５４】
なお、上記では、ＮＷＩ／Ｆ部５６が優先度の判定を行う場合を説明した（ステップＳ９２２参照）。しかし、外部装置から受け付けたパケットに含まれる情報の優先度の判定は、制御部５０で行ってもよい。
【０２５５】
制御部５０で優先度を判定する場合には下記方法を用いればよい。
【０２５６】
例えば、制御部５０は、受け付けたパケットを第１記憶部５２に一時的に記憶し、該パケットに含まれる情報の優先度の判定を行う方法がある（方法１とする）。また、制御部５０は、受け付けたパケットを第２記憶部５４に一時的に記憶し、該パケットに含まれる情報の優先度の判定を行う方法を用いてもよい（方法２とする）。また、制御部５０は、過去の判定結果に基づいてより多く判定された優先度に対応する記憶部（第１記憶部５２または第２記憶部５４）に、受け付けたパケットを一時的に記憶し、該パケットに含まれる情報の優先度の判定を行う方法を用いてもよい（方法３とする）。また、制御部５０は、直前の判定に用いた記憶部と同じ記憶部（第１記憶部５２または第２記憶部５４）を用いて、該パケットに含まれる情報の優先度の判定を行ってもよい（方法４とする）。また、制御部５０は、第１記憶部５２及び第２記憶部５４の双方に受け付けたパケットを一時的に記憶して、何れか一方のパケットに含まれる情報の優先度を判定する方法を用いてもよい（方法５とする）。
【０２５７】
なお、何れの判定方法を用いた場合であっても、制御部５０は、判定した優先度に基づいた記憶部（第１記憶部５２または第２記憶部５４）に、優先度の判定のために一時的に記憶した記憶部（第１記憶部５２または第２記憶部５４）から再配置する。
【０２５８】
なお、優先度の判定方法として、上記方法３または上記方法４を用いる場合には、過去の判断情報は制御部５０で管理するものとし、ＮＷＩ／Ｆ部５６に対して保存先を指示しておくことで、記憶先が特定できるようになる。
【０２５９】
（実施の形態５）
実施の形態１〜実施の形態４では、情報処理装置１０、情報処理装置１０Ａ、情報処理装置１０Ｂ、及び情報処理装置１０Ｃは、各々、ネットワークに接続された装置に適用した場合を説明した。
【０２６０】
しかし、これらの情報処理装置１０、情報処理装置１０Ａ、情報処理装置１０Ｂ、及び情報処理装置１０Ｃは、ルータや無線ＬＡＮアクセスポイントなどの、中継装置として実現してもよい。具体的には、これらの情報処理装置（情報処理装置１０、情報処理装置１０Ａ、情報処理装置１０Ｂ、及び情報処理装置１０Ｃ）を、装置制御部を介して電気的に接続した構成とすればよい。
【０２６１】
図１７は、中継装置１０００の一例を示す模式図である。中継装置１０００は、２台の情報処理装置１０Ｂを、各情報処理装置１０ＢのホストＩ／Ｆ２２Ｂを介して装置制御部１２Ｂに電気的に接続した構成である。このように、２台の情報処理装置１０Ｂを、各情報処理装置１０ＢのホストＩ／Ｆ２２Ｂを介して装置制御部１２Ｂに電気的に接続した構成の中継装置１０００とすることで、ＮＷＩ／Ｆ２４Ｂ間でパケットの転送が可能となる。
【０２６２】
なお、図１７に示す中継装置１０００は、装置制御部１２Ｂが２つのＮＷＩ／Ｆ２４Ｂを中継した構成であるが、２つのＮＷＩ／Ｆ２４Ｂ間で直接データ転送を行う構成としてもよい。図１８は、中継装置１０１０の一例を示す模式図である。中継装置１０１０では、２台の情報処理装置１０Ｂが、各情報処理装置１０ＢのホストＩ／Ｆ２２Ｂ間で直接データ転送を行うように構成されている。そして、装置制御部１２Ｂは、各種指示情報を各ホストＩ／Ｆ２２Ｂを介して制御部１８Ｂに送信する構成としている。
【０２６３】
なお、図１７及び図１８では、２つのＮＷＩ／Ｆ２４Ｂ間でデータ転送を行う場合を示したが、３以上のＮＷＩ／Ｆ２４Ｂ間でデータ転送してもよい。
【０２６４】
なお、実施の形態１〜実施の形態５における、情報処理装置１０、情報処理装置１０Ａ、情報処理装置１０Ｂ、及び情報処理装置１０Ｃで実行する送受信処理の各々を実行するためのプログラムは、ＲＯＭ等に予め組み込まれて提供される。
【０２６５】
実施の形態１〜実施の形態５における、情報処理装置１０、情報処理装置１０Ａ、情報処理装置１０Ｂ、及び情報処理装置１０Ｃで実行する送受信処理を実行するためのプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【０２６６】
さらに、実施の形態１〜実施の形態５における、情報処理装置１０、情報処理装置１０Ａ、情報処理装置１０Ｂ、及び情報処理装置１０Ｃで実行する送受信処理の各々を実行するためのプログラムを、インターネット等のネットワークに接続されたコンピュータ上に記憶し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、実施の形態１〜実施の形態５における、情報処理装置１０、情報処理装置１０Ａ、情報処理装置１０Ｂ、及び情報処理装置１０Ｃで実行する送受信処理の各々を実行するためのプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０２６７】
実施の形態１〜実施の形態５における、情報処理装置１０、情報処理装置１０Ａ、情報処理装置１０Ｂ、及び情報処理装置１０Ｃで実行する送受信処理を実行するためのプログラムは、上述した各部を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記ＲＯＭからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、これらの各機能部が主記憶装置上に生成されるようになっている。
【０２６８】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。
【０２６９】
なお、実施の形態１〜実施の形態５における、情報処理装置１０、情報処理装置１０Ａ、情報処理装置１０Ｂ、及び情報処理装置１０Ｃにおける各記憶部（第１記憶部１７Ａ、第２記憶部１９Ａ、第１記憶部２６、第２記憶部２８、第１記憶部３０、第２記憶部３２）は、制御部１８、制御部１８Ａ、制御部１８Ｂによって制御されるものとした。実際には、制御部１８、制御部１８Ａ、制御部１８Ｂの他に、各部へ電力を供給する電源の電圧を制御する種々の部品（電源制御ＩＣ等）が必要になる場合がある。このような部品を搭載している場合であっても、本実施の形態の本質は失われず適用できる。
【符号の説明】
【０２７０】
１０、１０Ａ、１０Ｂ、１０Ｃ  情報処理装置
１８、１８Ａ、１８Ｂ  制御部
１７Ａ、２６、３０  第１記憶部
１９Ａ、２８、３２  第２記憶部
３８  状態制御部
３９  判別部
【図１】
0006021975.tif 000002
【図２】
0006021975.tif 000003
【図３】
0006021975.tif 000004
【図４】
0006021975.tif 000005
【図５】
0006021975.tif 000006
【図６】
0006021975.tif 000007
【図７】
0006021975.tif 000008
【図８】
0006021975.tif 000009
【図９】
0006021975.tif 000010
【図１０】
0006021975.tif 000011
【図１１】
0006021975.tif 000012
【図１２】
0006021975.tif 000013
【図１３】
0006021975.tif 000014
【図１４】
0006021975.tif 000015
【図１５】
0006021975.tif 000016
【図１６】
0006021975.tif 000017
【図１７】
0006021975.tif 000018
【図１８】
0006021975.tif 000019