(57)【要約】【課題】仮想記憶管理にて主記憶を管理する場合に、スラッシングの発生を防止することができるようにする。【解決手段】ミッシング数超過検出部２１でミッシングが頻発するジョブを検出し、ミッシングが頻発するジョブをフリーズジョブクラスとして登録し、フリーズジョブクラスに属するジョブを、フリーズジョブクラス実行部２５でフリーズクラス定義の情報に従って、実行多重度を制限して実行させる。空きメモリ検出部２０により、空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいかどうかを判定し、空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいと判定された場合に、このジョブをフリーズジョブクラスから元のジョブクラスに戻して実行させる。【選択図】図１
2011175533.tif 000002
【特許請求の範囲】
【請求項１】
仮想記憶管理により主記憶を管理するようにしたデータ処理装置において、
ミッシングが頻発するジョブを検出する手段と、
前記ミッシングが頻発するジョブをフリーズジョブクラスとして登録する手段と、
前記フリーズジョブクラスに属するジョブを、フリーズクラス定義の情報に従って、実行多重度を制限して実行させる手段と、
空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいかどうかを判定する手段と、
前記空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいと判定された場合に、当該ジョブをフリーズジョブクラスから元のジョブクラスに戻して実行させる手段と
を備えることを特徴とするデータ処理システム。
【請求項２】
さらに、フリーズジョブクラスとした際に実行多重度待ちとなったジョブに対して、ページアウトのされた情報を記録する手段を備え、
前記ジョブをフリーズジョブクラスから元のジョブクラスに戻して実行させる際に、前記記録されたページアウトの情報に基づいて、当該ジョブをページインさせる
ことを特徴とする請求項１に記載のデータ処理システム。
【請求項３】
前記ミッシングが頻発するジョブを検出する手段は、ジョブ毎に、単位時間あたりのミッシング回数閾値を超えているか否かを判定することで、当該ジョブでミッシングが頻繁に発生しているかどうかを検出することを特徴とする請求項１に記載のデータ処理システム。
【請求項４】
仮想記憶管理により主記憶を管理するようにしたデータ処理方法において、
ミッシングが頻発するジョブを検出する工程と、
前記ミッシングが頻発するジョブをフリーズジョブクラスとして登録する工程と、
前記フリーズジョブクラスに属するジョブを、フリーズクラス定義の情報に従って、実行多重度を制限して実行させる工程と、
空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいかどうかを判定する工程と、
前記空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいと判定された場合に、当該ジョブをフリーズジョブクラスから元のジョブクラスに戻して実行させる工程と
を備えることを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想記憶管理にて主記憶を管理するデータ処理システム及びデータ処理方法に関する。
【背景技術】
【０００２】
仮想記憶管理にて主記憶を管理するデータ処理システムでは、主記憶容量が不足しているために、主記憶と仮想記憶装置とのページの入れ替えが頻繁に発生する状態になる場合がある。このような状態は、スラッシングと呼ばれている。このようなスラッシングが発生すると、同時に実行しているジョブだけでなく、オペレーティングシステム自体の処理能力が低下する。このようなスラッシング状態となった場合には、最悪システム停止に至る可能性があり、実行しているジョブを停止／終了させるか、主記憶容量を増やす必要がある。
【０００３】
このようなスラッシング状態を防止するシステムとしては、特許文献１に、ジョブのジョブ実行経過時間の累積に対するページフォルト処理経過時間の累積の比率が予め設定した閾値より大きいかどうかにより、スラッシングが発生しているかどうかを検出し、スラッシングが発生していたら、そのジョブをスラッシングモード状態としてスラッシングモード記録手段に記録するようにしたものが提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０８−２７２６８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述のように、このようなスラッシングが発生すると、同時に実行しているジョブだけでなく、オペレーティングシステム自体の処理能力が低下する。スラッシングが発生し、実行しているジョブを停止／終了させる場合に、停止／終了対象として選択されるジョブは、主記憶と仮想記憶装置とのページの入れ替え処理が頻繁に行われているジョブではなく、使用している主記憶容量の大きいジョブや最後に投入したジョブなど、その他のジョブとなる可能性がある。
【０００６】
特許文献１では、スラッシング状態と判断したプログラム間で、予め確保しておいたメモリ（スラッシングメモリプール）を分け合い、割り当てられたメモリを使用して実行するか、割り当てるメモリが不足していた場合にはメモリ待ちとさせて、ページフォルト処理を発生させないようにしている。しかしながら、特許文献１に示されているものの場合には、スラッシング状態と判断され、予め確保しておいたメモリを使用しているプログラムが終了しない間は、スラッシング状態のジョブに割り当てるメモリ量が増加しないため、メモリ待ちとなっているジョブのメモリ待ち状態が解除されない。また、特許文献１では、スラッシングの発生しやすいジョブだけを集めて、実行多重度を制限することが行われていない。
【０００７】
上述の課題を鑑み、本発明は、仮想記憶管理にて主記憶を管理する場合に、スラッシングの発生を防止することができるデータ処理システム及びデータ処理方法を提供することを目的とすることを目的とする。
【課題を解決するための手段】
【０００８】
上述の課題を解決するために、本発明は、仮想記憶管理により主記憶を管理するようにしたデータ処理装置において、ミッシングが頻発するジョブを検出する手段と、ミッシングが頻発するジョブをフリーズジョブクラスとして登録する手段と、フリーズジョブクラスに属するジョブを、フリーズクラス定義の情報に従って、実行多重度を制限して実行させる手段と、空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいかどうかを判定する手段と、空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいと判定された場合に、当該ジョブをフリーズジョブクラスから元のジョブクラスに戻して実行させる手段とを備えることを特徴とする。
【０００９】
本発明は、仮想記憶管理により主記憶を管理するようにしたデータ処理方法において、ミッシングが頻発するジョブを検出する工程と、ミッシングが頻発するジョブをフリーズジョブクラスとして登録する工程と、フリーズジョブクラスに属するジョブを、フリーズクラス定義の情報に従って、実行多重度を制限して実行させる工程と、空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいかどうかを判定する工程と、空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいと判定された場合に、当該ジョブをフリーズジョブクラスから元のジョブクラスに戻して実行させる工程とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、主記憶容量が不足しているために仮想記憶装置とのページの入れ替えが頻繁に発生しているジョブを、当該ジョブが本来属しているジョブクラスに加え、主記憶容量が不足しているために仮想記憶装置とのページの入れ替えが頻繁に発生しているジョブの多重度を管理するためのジョブクラスでも管理することにより、主記憶容量が不足していているために仮想記憶装置とのページ入れ替えが頻繁に発生しているジョブの実行多重度を抑えることによりスラッシングを防止することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態のコンピュータシステムを示すブロック図である。
【図２】システム情報提供部の一例の情報の説明図である。
【図３】ポリシー情報提供部の一例の情報の説明図である。
【図４】ジョブ情報提供部の情報の一例の説明図である。
【図５】ジョブクラス情報提供部の情報の一例の説明図である。
【図６】本発明の第１の実施形態におけるフリーズジョブクラスへの登録と実行の処理の流れを示すフローチャートである。
【図７】本発明の第１の実施形態におけるフリーズジョブクラスからの登録の削除の処理の流れを示すフローチャートである。
【図８】本発明の第２の実施形態のコンピュータシステムを示すブロック図である。
【図９】ジョブ情報提供部の情報の他の例の説明図である。
【図１０】本発明の第２の実施形態におけるフリーズジョブクラスからの登録の削除の処理の流れを示すフローチャートである。
【図１１】本発明の第２の実施形態におけるフリーズジョブクラスからの登録の削除の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図面を参照しながら説明する。図１は、本発明の第１の実施形態のコンピュータシステムを示すブロック図である。図１に示すように、本発明の第１の実施形態のコンピュータシステム１は、システム情報提供部１０と、ポリシー情報提供部１１と、ジョブ情報提供部１２と、ジョブクラス情報提供部１３と、空きメモリ検出部２０と、ミッシング数超過検出部２１と、ジョブ管理部２２と、フリーズジョブクラス管理部２３と、フリーズジョブクラス登録／削除部２４と、フリーズジョブクラスジョブ実行部２５を含む。
【００１３】
図２はシステム情報提供部の一例の情報の説明図であり、図３はポリシー情報提供部の一例の情報の説明図であり、図４はジョブ情報提供部の情報の一例の説明図であり、図５はジョブクラス情報提供部の情報の一例の説明図である。
【００１４】
図２に示されるように、システム情報提供部１０は、空きメモリ量情報ＩＮＦ１０１を提供する。空きメモリ量情報ＩＮＦ１０１は、ジョブに割り当て可能な主記憶容量である。
【００１５】
図３に示されるように、ポリシー情報提供部１１は、ミッシング回数閾値情報ＩＮＦ１１１を提供する。ミッシング回数閾値情報ＩＮＦ１１１は、システム管理者が決定した、ジョブのミッシングが頻繁に発生していると判断すべきジョブの単位時間あたりのミッシング回数閾値である。
【００１６】
図４に示されるとおり、ジョブ情報提供部１２は、ジョブ毎に、メモリ要求量情報ＩＮＦ１２１、単位時間あたりのミッシング回数情報ＩＮＦ１２２、フリーズクラス属性情報ＩＮＦ１２３を提供する。メモリ要求量情報ＩＮＦ１２１は、そのジョブが要求するメモリ量である。単位時間あたりのミッシング回数情報ＩＮＦ１２２は、そのジョブの単位時間あたりのミッシング回数である。フリーズクラス属性情報ＩＮＦ１２３は、そのジョブがフリーズクラスに属するか否かを示す情報である。
【００１７】
図５に示されるように、ジョブクラス情報提供部１３は、フリーズクラス定義情報ＩＮＦ１３１を提供している。フリーズクラス定義情報ＩＮＦ１３１は、システム管理者が決定した、主記憶と仮想記憶装置とのページの入れ替え処理が頻繁に行われているジョブの同時実行数を管理するための多重度情報ＩＮＦ１３１１を持つ。
【００１８】
図１において、空きメモリ検出部２０は、空きメモリ量と、フリーズクラス属性がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量とを監視し、空きメモリが要求メモリ量を超えているか否かを判定する。
【００１９】
ミッシング数超過検出部２１は、ジョブ毎の単位時間あたりのミッシング回数を監視し、ジョブの単位時間あたりのミッシング回数閾値を超えているか否かを判定することで、当該ジョブでミッシングが頻繁に発生しているかどうかを検出する。
【００２０】
ジョブ管理部２２は、ジョブ管理を行っている。より具体的には、ジョブ管理部２２は、ミッシング数超過検出部２１で、ジョブの単位時間あたりのミッシング回数が閾値を超えていると判定されると、当該ジョブでミッシングが頻繁に発生しているとして、当該ジョブをフリーズジョブクラスに変更する処理を行う。また、ジョブ管理部２２は、空きメモリ検出部２０で、空きメモリ容量がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量より大きいと判定された場合には、当該ジョブをフリーズジョブクラスから削除し、元のジョブクラスに戻して実行させる処理を行う。
【００２１】
フリーズジョブクラス管理部２３は、フリーズジョブクラスの管理を行っている。より具体的には、ジョブ管理部２２は、ミッシングが頻繁に発生しているとしてフリーズジョブクラスに変更するジョブがあると、本来属しているジョブクラスに属したまま、当該ジョブがフリーズジョブクラスに属するように変更させる。また、フリーズジョブクラス管理部２３は、ミッシングが頻繁に発生しているとしてフリーズジョブクラスに変更するジョブがあると、当該ジョブをフリーズジョブクラスのジョブとして実行させる。
【００２２】
フリーズジョブクラス登録／削除部２４は、ジョブをフリーズジョブクラスに変更したり、ジョブをフリーズジョブクラスから削除したりする処理を行う。
【００２３】
フリーズジョブクラスジョブ実行部２５は、フリーズジョブクラスのジョブの実行を行う。フリーズジョブクラスのジョブを実行させるときには、当該ジョブは、ジョブクラス情報提供部１３のフリーズクラス定義情報ＩＮＦ１３１の多重度情報ＩＮＦ１３１１に従って、実行多重度が抑えられて実行される。
【００２４】
本発明の第１の実施形態では、ミッシング数超過検出部２１で、ジョブの単位時間あたりのミッシング回数がジョブの単位時間あたりのミッシング回数閾値より大きいかどうかが判定され、ジョブの単位時間あたりのミッシング回数がジョブの単位時間あたりのミッシング回数閾値より大きいと判定されると、当該ジョブは、フリーズジョブクラスに変更されて実行される。フリーズジョブクラスに属するジョブは、フリーズジョブクラスの定義に従った多重度で実行される。
【００２５】
次に、本発明の第１の実施形態の動作について、フローチャートを参照しながら説明する。上述のように、本発明の第１の実施形態では、ミッシングが頻発しているジョブは本来属しているジョブクラスに属したまま、フリーズジョブクラスにも属するように変更され、フリーズジョブクラスの定義に従って実行多重度が制限される。図６は、本発明の第１の実施形態におけるフリーズジョブクラスへの登録と実行の処理の流れを示すフローチャートである。
【００２６】
図６において、ミッシング数超過検出部２１は、常にジョブ毎にあるジョブ情報提供部１２の単位時間あたりのミッシング回数情報ＩＮＦ１２２を監視しており、システム管理者が決定したポリシー情報提供部１１のジョブの単位時間あたりのミッシング回数閾値情報ＩＮＦ１１１を超えているか否かを判断する（ステップＳ１０１）。ミッシング数超過検出部２１は、ジョブの単位時間あたりのミッシング回数情報ＩＮＦ１２２がミッシング回数閾値情報ＩＮＦ１１１より小さいと判定した場合には、ミッシングが頻繁に発生していないとして、当該ジョブについてはそのままとする。
【００２７】
ステップＳ１０１で、ミッシング数超過検出部２１は、ジョブの単位時間あたりのミッシング回数情報ＩＮＦ１２２がジョブの単位時間あたりのミッシング回数閾値情報ＩＮＦ１１１より大きいと判定した場合には、当該ジョブでミッシングが頻繁に発生しているとして、当該ジョブをフリーズジョブクラスに変更して実行させるために、ジョブ管理部２２を起動する（ステップＳ１０２）。
【００２８】
次に、ジョブ管理部２２は、当該ジョブをフリーズジョブクラスに変更するために、フリーズジョブクラス管理部２３を起動する（ステップＳ１０３）。
【００２９】
次に、フリーズジョブクラス管理部２３は、フリーズジョブクラス登録／削除部２４を起動して、ジョブ情報提供部１２のフリーズクラス属性情報ＩＮＦ１２３にフリーズジョブクラスに属している情報を記録し、当該ジョブがフリーズジョブクラスにも属するように変更する（ステップＳ１０４）。
【００３０】
最後に、フリーズジョブクラス管理部２３は、フリーズジョブクラスジョブ実行部２５を起動して、当該ジョブをフリーズジョブクラスのジョブとして実行させる（ステップＳ１０５）。この際、当該ジョブは、フリーズジョブクラスの定義に従って実行されるため、ジョブクラス情報提供部１３のフリーズクラス定義情報ＩＮＦ１３１の多重度情報ＩＮＦ１３１１に従って、実行多重度が抑えられて実行される。
【００３１】
また、本発明の第１の実施形態では、前述したように、主記憶にフリーズジョブクラスで実行多重度の制限のために実行待ち状態となっているジョブが要求している以上の空きメモリ量が発生すると、フリーズジョブクラスに登録されていて実行待ち状態のジョブはフリーズジョブクラスから削除され、元のジョブクラスで実行される。図７は、本発明の第１の実施形態におけるフリーズジョブクラスからの登録の削除の処理の流れを示すフローチャートである。
【００３２】
図７において、空きメモリ検出部２０は、システム情報提供部１０の空きメモリ量情報ＩＮＦ１０１とジョブ情報提供部１２でフリーズクラス属性情報ＩＮＦ１２３がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量情報ＩＮＦ１２１とを監視しており、空きメモリ量情報ＩＮＦ１０１がメモリ要求量情報ＩＮＦ１２１を超えているか否かを判断する（ステップＳ２０１）。空きメモリ検出部２０は、空きメモリ量情報ＩＮＦ１０１がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量情報ＩＮＦ１２１より小さいと判定された場合には、当該ジョブについてはそのままとする。
【００３３】
次に、空きメモリ検出部２０は、空きメモリ量情報ＩＮＦ１０１がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量情報ＩＮＦ１２１より大きいと判定された場合には、当該ジョブをフリーズジョブクラスから削除し、元のジョブクラスに戻して実行させるために、ジョブ管理部２２を起動する（ステップＳ２０２）。
【００３４】
次に、ジョブ管理部２２は、当該ジョブをフリーズジョブクラスから削除するために  フリーズジョブクラス管理部２３を起動する（ステップＳ２０３）。
【００３５】
最後に、フリーズジョブクラス管理部２３は、フリーズジョブクラス登録／削除部２４を起動して、ジョブクラス情報提供部１３のフリーズクラス属性情報ＩＮＦ１２３にフリーズジョブクラスに属していないという情報を記録し、当該ジョブの属するクラスを元のジョブクラスのみに変更する（ステップＳ２０４）。この際、当該ジョブは元のジョブクラスの定義に従って実行される。
【００３６】
以上説明したように、本発明の第１の実施形態では、ミッシングが頻発しているジョブ群だけでフリーズジョブクラスを構成し、ミッシングが頻発しているジョブに対して多重度を抑えることにより、スラッシングを防止している。このため、ミッシングが頻発しているジョブ以外のジョブに影響を与えないでスラッシングを防止できる。
【００３７】
次に、本発明の第２の実施形態について説明する。図８は、本発明の第２の実施形態のコンピュータシステムを示すブロック図である。図８に示すように、本発明の第２の実施形態のコンピュータシステム２０１は、システム情報提供部２１０と、ポリシー情報提供部２１１と、ジョブ情報提供部２１２と、ジョブクラス情報提供部２１３と、空きメモリ検出部２２０と、ミッシング数超過検出部２２１と、ジョブ管理部２２２と、フリーズジョブクラス管理部２２３と、フリーズジョブクラス登録／削除部２２４と、フリーズジョブクラスジョブ実行部２２５と、ページアウト情報記録／読込部２２６と、ページイン制御部２２７を含んでいる。
【００３８】
システム情報提供部２１０、ポリシー情報提供部２１１、ジョブ情報提供部２１２、ジョブクラス情報提供部２１３、空きメモリ検出部２２０、ミッシング数超過検出部２２１、ジョブ管理部２２２、フリーズジョブクラス管理部２２３、フリーズジョブクラス登録／削除部２２４、フリーズジョブクラスジョブ実行部２２５は、本発明の第１の実施形態のシステム情報提供部１０、ポリシー情報提供部１１、ジョブ情報提供部１２、ジョブクラス情報提供部１３、空きメモリ検出部２０、ミッシング数超過検出部２１、ジョブ管理部２２、フリーズジョブクラス管理部２３、フリーズジョブクラス登録／削除部２４、フリーズジョブクラスジョブ実行部２５と同様に構成されている。
【００３９】
但し、ジョブ情報提供部２１２は、図９に示されるように、第１の実施形態のジョブ情報提供部１２（図４参照）の情報に加えて、さらに、ページアウト情報ＩＮＦ１２４を持つ。また、本発明の第２の実施形態は、第１の実施形態に加えて、さらに、ページアウト情報記録／読込部２２６と、ページイン制御部２２７とを含んでいる。
【００４０】
本発明の第２の実施形態では、ミッシングが頻発しているジョブは、本来属しているジョブクラスに属したまま、フリーズジョブクラスにも属するように変更され、フリーズジョブクラスの定義に従って実行多重度が制限される。図１０は、本発明の第２の実施形態におけるフリーズジョブクラスからの登録の削除の処理の流れを示すフローチャートである。
【００４１】
図１０において、ミッシング数超過検出部２２１は常にジョブ毎にあるジョブ情報提供部２１２の単位時間あたりのミッシング回数情報ＩＮＦ１２２を監視しており、システム管理者が決定したポリシー情報提供部２１１のジョブの単位時間あたりのミッシング回数閾値情報ＩＮＦ１１１を超えているか否かを判断する（ステップＳ３０１）。ミッシング数超過検出部２２１は、ジョブの単位時間あたりのミッシング回数情報ＩＮＦ１２２がミッシング回数閾値情報ＩＮＦ１１１より小さいと判定された場合には、ミッシングが頻繁に発生していないとして、当該ジョブについてはそのままとする。
【００４２】
次に、ミッシング数超過検出部２２１は、ジョブの単位時間あたりのミッシング回数情報ＩＮＦ１２２がジョブの単位時間あたりのミッシング回数閾値情報ＩＮＦ１１１より大きいと判定された場合には、当該ジョブでミッシングが頻繁に発生しているとして、当該ジョブをフリーズジョブクラスに変更して実行させるために、ジョブ管理部２２２を起動する（ステップＳ３０２）。
【００４３】
次に、ジョブ管理部２２２は、当該ジョブをフリーズジョブクラスに変更するために、フリーズジョブクラス管理部２２３を起動する（ステップＳ３０３）。
【００４４】
次に、フリーズジョブクラス管理部２２３は、フリーズジョブクラス登録／削除部２２４を起動して、ジョブ情報提供部２１２のフリーズクラス属性情報ＩＮＦ１２３にフリーズジョブクラスに属している情報を記録し、当該ジョブがフリーズジョブクラスにも属するように変更する（ステップＳ３０４）。
【００４５】
次に、フリーズジョブクラス管理部２２３は、フリーズジョブクラスジョブ実行部２２５を起動して当該ジョブをフリーズジョブクラスのジョブとして実行させる（ステップＳ３０５）。この際、当該ジョブはフリーズジョブクラスの定義に従って実行されるため、フリーズクラス定義情報ＩＮＦ１３１の多重度情報ＩＮＦ１３１１に従って実行される。
【００４６】
最後に、ページアウト情報記録／読込部２２６は、フリーズジョブクラスとした際に実行多重度待ちとなったジョブに対して、ページアウトのされた情報をジョブ情報提供部２１２のページアウト情報ＩＮＦ１２４に記録する（ステップＳ３０６）。
【００４７】
また、本発明の第２の実施形態では、主記憶にフリーズジョブクラスで実行多重度の制限のために実行待ち状態となっているジョブが要求している以上の空きメモリ量が発生すると、フリーズジョブクラスに登録されていて実行待ち状態のジョブはフリーズジョブクラスから削除され、元のジョブクラスで実行される。図１１は、本発明の第２の実施形態におけるフリーズジョブクラスからの登録の削除の処理の流れを示すフローチャートである。。
【００４８】
図１１において、空きメモリ検出部２２０はシステム情報提供部２１０の空きメモリ量情報ＩＮＦ１０１とジョブ情報提供部１２でフリーズクラス属性情報ＩＮＦ１２３がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量情報ＩＮＦ１２１を監視しており、空きメモリ量情報ＩＮＦ１０１がメモリ要求量情報ＩＮＦ１２１を超えているか否かを判断する（ステップＳ４０１）。空きメモリ検出部２２０は、空きメモリ量情報ＩＮＦ１０１がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量情報ＩＮＦ１２１より小さいと判定された場合には、当該ジョブについてはそのままとする。
【００４９】
次に、空きメモリ検出部２２０は、空きメモリ量情報ＩＮＦ１０１がフリーズジョブクラスに属しているジョブで実行待ちとなっているジョブのメモリ要求量情報ＩＮＦ１２１より大きいと判定された場合には、当該ジョブをフリーズジョブクラスから削除し、元のジョブクラスに戻して実行させるために、ジョブ管理部２２２を起動する（ステップＳ４０２）。
【００５０】
次に、ジョブ管理部２２２は、実行前にページイン制御部２２７の起動を行い、当該ジョブをフリーズジョブクラスから削除するために、フリーズクラス登録／削除部２２４を起動する（ステップＳ４０３）。
【００５１】
次に、フリーズジョブクラス管理部２２３は、フリーズジョブクラスで多重度待ちとなっていたジョブのページアウト情報ＩＮＦ１２４をジョブ情報提供部２１２から取得するためにページアウト情報記録／読込部２２６を起動し、ページアウト路情報を読み込む（ステップＳ４０４）。
【００５２】
次に、ページイン制御部２２７は、ページアウト情報記録／読込部２２６で取得したページアウト情報ＩＮＦ１２４を使用して当該ジョブに必要なページのページインを非同期に行う（ステップＳ４０５）。
【００５３】
最後に、フリーズジョブクラス登録／削除部２２４は、ジョブ情報提供部２１２のフリーズクラス属性情報ＩＮＦ１２３にフリーズジョブクラスに属していない情報を記録し、当該ジョブの属するクラスを元のジョブクラスのみに変更する（ステップＳ４０６）。この際、当該ジョブは元のジョブクラスの定義に従って実行される。
【００５４】
以上説明したように、本発明の第２の実施形態では、実行前に非同期ページイン処理を行うようにしているため、フリーズジョブクラスで実行待ち状態となっていたジョブを実行状態にする際に、使用していた主記憶がページアウトされていたことにより発生する実行直後のミッシングの発生を抑制することができる。
【符号の説明】
【００５５】
１，２０１：コンピュータシステム
１０，２１０：システム情報提供部
１１，２１１：ポリシー情報提供部
１２，２１２：ジョブ情報提供部
１３，２１３：ジョブクラス情報提供部
２０，２２０：メモリ検出部
２１，２２１：ミッシング数超過検出部
２２，２２２：ジョブ管理部
２３，２２３：フリーズジョブクラス管理部
２４，２２４：フリーズジョブクラス登録／削除部
２５．２２５：フリーズジョブクラスジョブ実行部
２２６：ページアウト情報記録／読込部
２２７：ページイン制御部
【図１】
2011175533.tif 000003
【図２】
2011175533.tif 000004
【図３】
2011175533.tif 000005
【図４】
2011175533.tif 000006
【図５】
2011175533.tif 000007
【図６】
2011175533.tif 000008
【図７】
2011175533.tif 000009
【図８】
2011175533.tif 000010
【図９】
2011175533.tif 000011
【図１０】
2011175533.tif 000012
【図１１】
2011175533.tif 000013