補助記憶装置に格納されているプログラムの主記憶装置への配置を制御するとともに、プログラムの命令部分を前記主記憶装置に配置する容量を制限するメモリ管理部を備えるメモリ管理装置。前記メモリ管理部は、前記主記憶装置に配置する命令部分の容量をプログラム毎に制限する請求項1に記載のメモリ管理装置。所定の条件に基づいて、前記主記憶装置に配置する命令部分の容量の上限値をプログラム毎に動的に設定する設定部をさらに備える請求項2に記載のメモリ管理装置。前記メモリ管理部は、前記命令部分を前記主記憶装置に配置するアルゴリズムをプログラム毎に設定する請求項1に記載のメモリ管理装置。前記メモリ管理部は、将来実行される前記命令部分を予測し、当該命令部分が必要になる前に前記主記憶装置に配置する請求項1に記載のメモリ管理装置。メモリ管理装置が、補助記憶装置に格納されているプログラムの主記憶装置への配置を制御するとともに、プログラムの命令部分を前記主記憶装置に配置する容量を制限するステップを含むメモリ管理方法。補助記憶装置に格納されているプログラムの主記憶装置への配置を制御するとともに、プログラムの命令部分を前記主記憶装置に配置する容量を制限するステップを含む処理をプログラムに実行させるためのプログラム。メモリ解放処理の実行時には、システム全体がその処理に費やされるため、例えば、システムのレスポンスが低下したり、動作が不安定例えば、画像や音声の乱れ等になったりする。特に、組み込み機器など搭載するメモリの容量が小さい場合には、メモリ解放処理の実行頻度が高くなり、システムの能力が大きく低下する。本技術は、システムの能力の低下を抑制しつつ、メモリ解放処理の実行頻度を抑えることができるようにするものである。本技術の一側面のメモリ管理装置は、補助記憶装置に格納されているプログラムの主記憶装置への配置を制御するとともに、プログラムの命令部分を前記主記憶装置に配置する容量を制限するメモリ管理部を備える。前記メモリ管理部は、前記主記憶装置に配置する命令部分の容量をプログラム毎に制限させることができる。所定の条件に基づいて、前記主記憶装置に配置する命令部分の容量の上限値をプログラム毎に動的に設定する設定部をさらに設けることができる。前記メモリ管理部には、前記命令部分を前記主記憶装置に配置するアルゴリズムをプログラム毎に設定させることができる。前記メモリ管理部には、将来実行される前記命令部分を予測させ、当該命令部分が必要になる前に前記主記憶装置に配置させることができる。本技術の一側面のメモリ管理方法は、メモリ管理装置が、補助記憶装置に格納されているプログラムの主記憶装置への配置を制御するとともに、プログラムの命令部分を前記主記憶装置に配置する容量を制限するステップを含む。本技術の一側面のプログラムは、補助記憶装置に格納されているプログラムの主記憶装置への配置を制御するとともに、プログラムの命令部分を前記主記憶装置に配置する容量を制限するステップを含む処理をコンピュータに実行させる。本技術の一側面においては、補助記憶装置に格納されているプログラムの主記憶装置への配置が制御されるとともに、プログラムの命令部分が前記主記憶装置に配置する容量を制限される。本技術の一側面によれば、システムの能力の低下を抑制しつつ、メモリ解放処理の実行頻度を抑えることができる。以下、本技術を実施するための形態以下、実施の形態というについて説明する。なお、説明は以下の順序で行う。1.実施の形態2.変形例<1.実施の形態>[情報処理システムの構成例]図3は、本技術を適用した情報処理システム101の一実施の形態を示すブロック図である。情報処理システム101は、例えば、テレビジョン受像機、携帯電話機等の各種の組み込み機器や、コンピュータ等に適用可能なシステムである。なお、以下、情報処理システム101が適用される装置やシステム等を、単にシステムと称する。情報処理システム101は、メモリマネージャ111、補助記憶装置112、および、主記憶装置113を含むように構成される。メモリマネージャ111は、情報処理システム101のメモリ管理を行う。例えば、メモリマネージャ111は、補助記憶装置112に格納されているプログラムやデータの主記憶装置113への配置を制御する。なお、メモリマネージャ111は、ソフトウエアまたはハードウエアのいずれで実現してもよいし、あるいは、その両方の組み合わせにより実現してもよい。ソフトウエアにより実現される場合、例えば、メモリマネージャ111は、図示せぬCPUCentralProcessingUnit等のプロセッサにより実行されるOSオペレーティングシステムの機能の一部として実現される。一方、ハードウエアにより実現される場合、メモリマネージャ111は、例えば、メモリ管理ユニットMMU等により実現される。補助記憶装置112は、例えば、ROMReadOnlyMemory、ハードディスクドライブ、フラッシュメモリ等、主記憶装置113より容量が大きく、一般にアクセス速度が遅い記憶装置により構成される。なお、補助記憶装置112は、データの書き込みが可能なものであってもよいし、データの書き込みができないものであってもよい。主記憶装置113は、例えば、RAMRandomAccessMemory等、データの書き込みが可能な記憶装置により構成される。なお、以下、主記憶装置113を単にメモリとも称する。また、以下、主記憶装置113の領域をメモリ領域、使用量をメモリ使用量とも称する。ここで、メモリマネージャ111の機能の構成例について説明する。メモリマネージャ111は、設定部121およびメモリ管理部122を含むように構成される。設定部121は、外部から入力される情報等に基づいて、補助記憶装置112に格納されている各プログラムの命令部分を主記憶装置113に配置することができる容量の上限値以下、最大命令メモリ割当量と称するをプログラム毎に設定する。設定部121は、設定した最大命令メモリ割当量をメモリ管理部122に通知したり、主記憶装置113に記憶させたりする。メモリ管理部122は、図示せぬCPU等のプロセッサにより実行されるプログラムからの要求や、主記憶装置113の使用状況等に応じて、補助記憶装置112に格納されているプログラムやデータの主記憶装置113への配置を制御する。例えば、メモリ管理部122は、必要に応じて、補助記憶装置112に格納されているプログラムやデータを主記憶装置113に配置したり、主記憶装置113に格納されているプログラムやデータを破棄したりする。また、例えば、メモリ管理部122は、補助記憶装置112が書き込み可能な場合、必要に応じて、主記憶装置113に格納されているプログラムやデータを補助記憶装置112に退避させる。さらに、メモリ管理部122は、補助記憶装置112に格納されている各プログラムの命令部分について、主記憶装置113に配置する容量が最大命令メモリ割当量以下になるように制限する。[最大命令メモリ割当量設定処理]次に、図4のフローチャートを参照して、情報処理システム101により実行される最大命令メモリ割当量設定処理について説明する。なお、この処理は、例えば、情報処理システム101の起動時などの所定のタイミング、あるいは、最大命令メモリ割当量の設定値がメモリマネージャ111に入力されたとき等に開始される。ステップS1において、設定部121は、設定条件等を取得する。ステップS2において、設定部121は、取得した設定条件等に基づいて、プログラム毎に最大命令メモリ割当量を設定する。そして、設定部121は、設定した最大命令メモリ割当量をメモリ管理部122に通知したり、主記憶装置113に記憶させたりする。その後、最大命令メモリ割当量設定処理は終了する。ここで、最大命令メモリ割当量の設定方法の具体例について説明する。例えば、設定部121は、情報処理システム101の起動時に、各プログラムの最大命令メモリ割当量の初期値を補助記憶装置112から読み込む。そして、設定部121は、各プログラムの最大命令メモリ割当量を初期値に設定する。各プログラムの最大命令メモリ割当量の初期値は、例えば、各プログラムの優先度や規模などに基づいて設定される。例えば、優先して実行する必要があるプログラムについては、初期値が大きい値に設定され、実行を遅らせることが可能なプログラムについては、初期値が小さい値に設定される。また、例えば、規模が大きいプログラムについては、初期値が大きい値に設定され、規模が小さいプログラムについては、初期値が小さい値に設定される。また、例えば、設定部121は、実行中のプログラムからの要求により、当該プログラムの最大命令メモリ割当量を変更する。例えば、各プログラムは、実行される頻度が高くなると予測される場合に、最大命令メモリ割当量を増やすように要求し、実行される頻度が低くなると予測される場合に、最大命令メモリ割当量を減らすように要求する。さらに、例えば、設定部121は、情報処理システム101の状態や動作環境等に基づいて、各プログラムの最大命令メモリ割当量を変更する。例えば、設定部121は、所定の機能が実行される場合に、その機能を実現するのに必要なプログラムの最大命令メモリ割当量を増やし、必要のないプログラムの最大命令メモリ割当量を減らす。あるいは、例えば、設定部121は、所定の時刻になったときに、その時刻付近に実行されることが想定される機能を実現するのに必要なプログラムの最大命令メモリ割当量を増やし、必要のないプログラムの最大命令メモリ割当量を減らす。なお、以上に述べた最大命令メモリ割当量を変更する条件は、その一例であり、他の条件に基づいて変更するようにしてもよい。また、最大命令メモリ割当量を動的に設定せずに、固定値とすることも可能である。[メモリ割り当て処理]次に、図5のフローチャートを参照して、情報処理システム101により実行されるメモリ割り当て処理について説明する。なお、この処理は、例えば、メモリ管理部122に対してメモリの割り当てが要求されたとき開始される。このメモリ割り当ての要求は、例えば、実行中のプログラムが明示的に行ったり、あるいは、OSなどがプログラムを介さずに行ったりする場合がある。また、以下、メモリの割り当てを行う対象となるプログラムを割当対象プログラムと称する。ステップS51において、メモリ管理部122は、命令部分の割り当てが要求されたか否かを判定する。命令部分の割り当てが要求されたと判定された場合、処理はステップS52に進む。ステップS52において、メモリ管理部122は、割当対象プログラムの命令部分のメモリ使用量が上限を超えるか否かを判定する。具体的には、メモリ管理部122は、割り当てが要求された命令部分の容量と、現在の割当対象プログラムの命令部分のメモリ使用量割当対象プログラムの命令部分が主記憶装置113に配置されている容量の合計値を求める。メモリ管理部122は、求めた合計値が割当対象プログラムの最大命令メモリ割当量を超える場合、割当対象プログラムの命令部分のメモリ使用量が上限を超えると判定し、処理はステップS53に進む。ステップS53において、メモリ管理部122は、割当対象プログラムの命令部分が使用しているメモリ領域を解放する。具体的には、メモリ管理部122は、割当対象プログラムのメモリ割当量の残量が、割り当てが要求された命令部分の容量以上となるように、割当対象プログラムの命令部分が使用しているメモリ領域の少なくとも一部を解放する。ここで、メモリ割当量の残量とは、割当対象プログラムの最大命令メモリ割当量からメモリ使用量を引いた値である。なお、このとき解放するメモリ領域を決定するためのアルゴリズムには、例えば、LRULeastRecentlyUsedやリングバッファ等、任意のものを採用することができる。その後、処理はステップS54に進む。一方、ステップS52において、割当対象プログラムの命令部分のメモリ使用量が上限を超えないと判定された場合、ステップS53の処理はスキップされ、処理はステップS54に進む。ステップS54において、メモリ管理部122は、命令部分のメモリの割り当てを行う。すなわち、メモリ管理部122は、割当対象プログラムの割り当てが要求された命令部分を補助記憶装置112から読み出し、主記憶装置113の空き領域に配置する。その後、処理はステップS56に進む。一方、ステップS51において、データ部分の割り当てが要求されていると判定された場合、処理はステップS55に進む。ステップS55において、メモリ管理部122は、通常のメモリ割り当て処理を行う。例えば、割当対象プログラムの割り当てが要求されたデータ部分の容量が、主記憶装置113の空き容量以下である場合、メモリ管理部122は、そのデータ部分を補助記憶装置112から読み出し、主記憶装置113の空き領域に配置する。一方、割り当てが要求されたデータ部分の容量が、主記憶装置113の空き容量を超える場合、メモリ管理部122は、主記憶装置113の空き容量が、そのデータ部分の容量以上になるように、主記憶装置113の使用領域の解放を行う。なお、このときメモリ領域を解放するアルゴリズムには、例えば、LRULeastRecentlyUsed、FIFOFirstInFirstOut等、任意のものを採用することができる。そして、メモリ管理部122は、割り当てが要求されたデータ部分を補助記憶装置112から読み出し、主記憶装置113の空き領域に配置する。その後、処理はステップS56に進む。ステップS56において、メモリ管理部122は、メモリの使用状態を示す情報を更新する。例えば、メモリ管理部122は、主記憶装置113の使用領域および空き領域を示す情報を更新したり、各プログラムの命令部分のメモリ使用量を示す情報を更新したりする。その後、メモリ割り当て処理は終了する。ここで、図5のメモリ割り当て処理の具体例として、図6および図7を参照して、補助記憶装置112に格納されているプログラムPの命令部分に対してメモリの割り当てを行う場合について説明する。なお、プログラムPの命令部分は、命令ブロック1乃至6の6つのブロックに分割されるものとする。この命令ブロックは、例えば、仮想記憶システムにおけるページに相当し、全て同じサイズであり、プログラムPの複数の命令を含むものとする。さらに、以下、命令ブロック1から昇順に逐次実行されるものとする。また、プログラムPの最大命令メモリ割当量が3ブロックに設定されているものとする。例えば、図7の左端に示されるように、命令ブロック1乃至3が主記憶装置113に配置されるまでは最大命令メモリ割当量を超えないため、命令ブロック1、命令ブロック2、命令ブロック3が、順に主記憶装置113に配置される。そして、命令ブロック4を主記憶装置113に配置する場合、そのまま配置すれば、プログラムPの命令部分のメモリ使用量が最大命令メモリ割当量を超えてしまう。そこで、例えば、最初に主記憶装置113に配置された命令ブロック1の領域が解放され、解放された領域が命令ブロック4に割り当てられる。その結果、図7の中央に示されるように、命令ブロック2乃至4が主記憶装置113に配置された状態となる。同様にして、命令ブロック2の領域が解放され、解放された領域が命令ブロック5に割り当てられ、命令ブロック3の領域が解放され、解放された領域が命令ブロック6に割り当てられる。そして、最終的に、図7の右端に示されるように、命令ブロック4乃至6が主記憶装置113に配置された状態となる。以上のようにして、プログラム毎に命令部分のメモリ使用量が制限され、命令部分以外のデータ部分については、従来のようにシステム全体でメモリ使用量が制限される。その結果、システム全体のメモリ使用量を抑制することができ、メモリ解放処理の実行頻度を抑えることができる。これについて、図8乃至図10を参照して説明する。図8は、上述した図1でメモリ使用量の推移を示したグループに含まれるプログラム以下、比較対象プログラムと称するを、情報処理システム101を適用したシステムで実行させた場合のメモリ使用量の推移の例を示している。図9は、上述した図2と同様のグラフであり、図8のメモリ使用量の推移を、命令部分とそれ以外のデータ部分とに分けて示している。図10は、図1のグラフと図8のグラフとを比較するものであり、cgroupを用いたシステムと情報処理システム101を用いたシステムにおける比較対象プログラムのメモリ使用量の推移を比較したグラフである。なお、図8乃至図10のL1は、図1および図2のL1と同じ値である。また、図9のL2は、比較対象プログラムの命令部分のメモリ使用量の上限値を示している。さらに、図10の実線のグラフは、情報処理システム101を用いたシステムにおける比較対象プログラムのメモリ使用量の推移を示し、点線のグラフは、cgroupを用いたシステムにおける比較対象プログラムからなるグループのメモリ使用量の推移を示している。なお、この例は、補助記憶装置112が書き込み不可であり、主記憶装置113上のデータを補助記憶装置112に退避できない場合の例を示している。図8乃至図10に示されるように、システムの稼働時間が長くなるにつれて、比較対象プログラムのメモリ使用量は増加する。ただし、時刻t11において、命令部分のメモリ使用量が上限値L2に達すると、命令部分のメモリ使用量がそれ以上増加しなくなる。そのため、cgroupを用いたシステムと比較して、比較対象プログラムのメモリ使用量の増加が抑制される。このように、情報処理システム101を用いたシステムでは、プログラム毎にメモリ使用量の増加を抑制することにより、システム全体のメモリ使用量を抑制し、メモリ解放処理の実行頻度を抑制することができる。従って、メモリ解放処理の実行によるシステムの能力の低下を抑制することができる。その結果、例えば、一時的にシステムが高負荷になり、システムのレスポンスが低下したり、動作が不安定例えば、画像や音声の乱れ等になったりすることを防止することができる。また、例えば、システムの起動時のプログラムの起動順が決まっている場合、先に起動する必要があるが、優先度の低いプログラムの最大命令メモリ割当量を小さく設定することにより、システムの起動時に当該プログラムがメモリを占有し、メモリ解放処理が実行され、起動が遅くなることを回避することができる。さらに、主記憶装置113に命令部分の以外のデータをより多く配置することができ、システムの動作を高速化したり、安定化したりすることができる。また、cgroupを用いたシステムでは、上述したように、グループのメモリ使用量が制限値を越えた場合、たとえシステム全体としてはメモリの空き領域が存在しても、当該グループ内のプログラムの強制終了などのエラー処理が実行されてしまう。一方、情報処理システム101では、プログラムの命令部分のメモリ使用量が制限値を超えても、主記憶装置113に空き領域があれば、当該プログラムのデータ部分については、主記憶装置113に配置することができ、上述したようなエラー処理は実行されない。その結果、システムの動作を安定化することができる。さらに、情報処理システム101では、最大命令メモリ割当量をプログラム毎に適切な値に設定することができ、命令部分の再配置の実行頻度を抑え、システムの能力の低下を抑制することができる。また、上述したように最大命令メモリ割当量を動的に変更することにより、さらに命令部分の再配置の実行頻度を抑え、システムの能力の低下を抑制することができる。<2.変形例>以下、本技術の実施の形態の変形例について説明する。[変形例1]以上の説明では、プログラム毎にそれぞれ最大命令メモリ割当量を設定する例を示したが、例えば、各プログラムを複数のグループに分類し、グループ毎に最大命令メモリ割当量を設定するようにしてもよい。すなわち、グループ毎に、グループに属するプログラム全体の命令部分のメモリ使用量が、最大命令メモリ割当量を超えないように制限するようにしてもよい。また、例えば、システム全体で1つの最大命令メモリ割当量を設定するようにしてもよい。すなわち、システムで実行されるプログラム全体の命令部分のメモリ使用量が、最大命令メモリ割当量を超えないように制限するようにしてもよい。[変形例2]また、プログラム毎または上述したグループ毎に、命令部分を主記憶装置113に配置するアルゴリズム命令部分のメモリ割り当てのアルゴリズムを設定するようにしてもよい。例えば、プログラム毎またはグループ毎にアルゴリズムを使い分けて、命令部分の再配置を行う頻度を調整するようにしてもよい。また、例えば、プログラム毎またはグループ毎にアルゴリズムを使い分けて、命令部分のメモリ領域を解放する基準例えば、メモリ領域の使用頻度、メモリ領域が確保されている時間等を変えるようにしてもよい。さらに、プログラム全体が実行バイナリと共有ライブラリから構成される場合、実行バイナリの命令部分と共有ライブラリの命令部分とで、アルゴリズムを使い分けて、共有ライブラリの命令部分の再利用性を高めるようにしてもよい。[変形例3]また、例えば、実行速度をより速くするために、命令部分の先読みを行うようにしてもよい。すなわち、将来実行される命令部分を予測して、当該命令部分が必要になる前に補助記憶装置112から読み出し、主記憶装置113に配置するようにしてもよい。なお、将来実行される命令部分の予測は、例えは、事前にシステムを動作させたときの各プログラムの命令部分の実行順を示すプロファイルを取得しておき、そのプロファイルに基づいて行うようにすることが考えられる。[変形例4]また、図6および図7の例では、プログラムの命令部分を、一定のサイズのブロック単位で主記憶装置113に配置する例を示したが、本技術は、主記憶装置113に配置する命令部分のブロックのサイズが一定でない場合にも適用できる。また、本技術は、例えば、命令単位、あるいは、セグメント単位など、ブロックとは異なる単位で命令部分を主記憶装置113に配置する場合にも適用できる。[変形例5]さらに、上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。なお、一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。コンピュータが実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディアに記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。その他、プログラムは、装置に組み込まれている記憶装置例えば、補助記憶装置112に、あらかじめインストールしておくことができる。なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。また、本明細書において、システムの用語は、複数の装置、手段などより構成される全体的な装置を意味するものとする。さらに、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。また、例えば、本技術は以下のような構成も取ることができる。1補助記憶装置に格納されているプログラムの主記憶装置への配置を制御するとともに、プログラムの命令部分を前記主記憶装置に配置する容量を制限するメモリ管理部を備えるメモリ管理装置。2前記メモリ管理部は、前記主記憶装置に配置する命令部分の容量をプログラム毎に制限する前記1に記載のメモリ管理装置。3所定の条件に基づいて、前記主記憶装置に配置する命令部分の容量の上限値をプログラム毎に動的に設定する設定部をさらに備える前記2に記載のメモリ管理装置。4前記メモリ管理部は、前記命令部分を前記主記憶装置に配置するアルゴリズムをプログラム毎に設定する前記1乃至3のいずれかに記載のメモリ管理装置。5前記メモリ管理部は、将来必要になる前記命令部分を予測し、当該命令部分が必要になる前に前記主記憶装置に配置する前記1乃至4のいずれかに記載のメモリ管理装置。6メモリ管理装置が、補助記憶装置に格納されているプログラムの主記憶装置への配置を制御するとともに、プログラムの命令部分を前記主記憶装置に配置する容量を制限するステップを含むメモリ管理方法。7補助記憶装置に格納されているプログラムの主記憶装置への配置を制御するとともに、プログラムの命令部分を前記主記憶装置に配置する容量を制限するステップを含む処理をプログラムに実行させるためのプログラム。