(57)【要約】【課題】強制終了を避けたいプロセスが、強制終了の順番を決定するための強制終了設定値を一時的に変更し、強制終了を避けることができるようにすることを目的とする。【解決手段】強制終了設定値テーブル１９３は、複数のプロセスのプロセス毎に強制終了の順番を決定するための強制終了設定値を記憶する。設定値パラメータテーブル１９４は、強制終了設定値が変更された状態を維持する変更上限時間を記憶する。プロセス要求受付部２１０は、要求プロセスから強制終了設定値の変更要求を受け取る。設定値変更部２２０は、変更要求に基づいて要求プロセスの強制終了設定値を要求設定値に変更する。変更時間計測部２３０は、要求プロセスの強制終了設定値が変更された後に要求プロセスの変更上限時間が経過したか否かを判定する。設定値変更部２２０は、要求プロセスの変更上限時間が経過したときに、要求プロセスの強制終了設定値を初期設定値に戻す。【選択図】図７
2014160295.tif 000002
【特許請求の範囲】
【請求項１】
複数のプロセスのプロセス毎に、プロセスを識別するためのプロセス識別子と、前記複数のプロセスを強制終了させる順番を決定するための強制終了設定値と、を記憶する強制終了設定値記憶部と、
前記複数のプロセスのプロセス毎に、プロセス識別子と、強制終了設定値が変更された場合に強制終了設定値が変更された状態を維持する時間の長さを示す変更維持時間と、を記憶する変更維持時間記憶部と、
前記複数のプロセスに含まれるプロセスである要求プロセスから、前記要求プロセスの強制終了設定値を要求設定値に変更するための変更要求を受け取る変更要求受付部と、
前記変更要求受付部によって受け取られた前記変更要求に基づいて、前記強制終了設定値記憶部に記憶された強制終了設定値のうち、前記要求プロセスのプロセス識別子に対応付けられた強制終了設定値を、前記要求設定値に変更する設定値変更部と、
前記設定値変更部によって前記強制終了設定値が前記要求設定値に変更された後に経過した時間を変更時間として計測する変更時間計測部と、
前記変更時間計測部によって計測された前記変更時間が、前記変更維持時間記憶部に記憶された変更維持時間のうち前記要求プロセスの前記プロセス識別子に対応付けられた変更維持時間を超えたか否かを判定する変更時間判定部とを備え、
前記設定値変更部は、前記変更時間判定部によって前記変更時間が前記変更維持時間を超えたと判定されたときに、前記要求プロセスの前記強制終了設定値を、前記強制終了設定値の初期値である初期設定値に戻す
ことを特徴とするプロセス管理装置。
【請求項２】
前記変更要求受付部は、第一の変更要求を前記変更要求として前記要求プロセスから受け取った後、前記変更時間が前記変更維持時間を超える前に第二の変更要求を前記要求プロセスから受け取り、
前記設定値変更部は、前記第一の変更要求に基づいて前記要求プロセスの前記強制終了設定値を変更した後、前記第二の変更要求に基づいて前記要求プロセスの前記強制終了設定値を変更し、
前記変更時間計測部は、前記要求プロセスの前記強制終了設定値が前記第一の変更要求に基づいて変更されたときに前記変更時間の計測を開始し、前記要求プロセスの前記強制終了設定値が前記第二の変更要求に基づいて変更されたときに前記変更時間の計測をやり直さずに前記変更時間の計測を継続する
ことを特徴とする請求項１記載のプロセス管理装置。
【請求項３】
前記プロセス管理装置は、
前記複数のプロセスのプロセス毎に、プロセス識別子と、強制終了設定値が初期設定値に戻された後に強制終了設定値の変更を禁止する時間の長さを示す変更禁止時間と、を記憶する変更禁止時間記憶部と、
前記設定値変更部によって前記要求プロセスの前記強制終了設定値が前記初期設定値に戻された後に経過した時間をインターバル時間として計測するインターバル時間計測部と、
前記インターバル時間計測部によって計測された前記インターバル時間が、前記変更禁止時間記憶部に記憶された変更禁止時間のうち前記要求プロセスの前記プロセス識別子に対応付けられた変更禁止時間を超えたか否かを判定するインターバル時間判定部とを備え、
前記変更要求受付部は、前記要求プロセスから新たな変更要求を受け取り、
前記設定値変更部は、前記インターバル時間判定部によって前記インターバル時間が前記変更禁止時間を超えたと判定された後に前記変更要求受付部によって前記新たな変更要求が受け取られた場合、前記新たな変更要求に基づいて前記要求プロセスの前記強制終了設定値を変更する
ことを特徴とする請求項１または請求項２記載のプロセス管理装置。
【請求項４】
前記設定値変更部によって前記要求プロセスの前記強制終了設定値が変更された場合、前記強制終了設定値が変更されたことを通知するための変更通知を前記要求プロセスに送る変更通知部を備える
ことを特徴とする請求項１から請求項３いずれかに記載のプロセス管理装置。
【請求項５】
前記プロセス管理装置は、
前記複数のプロセスのプロセス毎に、プロセス識別子と、変更通知の要否を示す変更通知要否フラグ値と、を記憶する変更通知要否記憶部を備え、
前記変更通知部は、前記設定値変更部によって前記要求プロセスの前記強制終了設定値が変更された場合、前記変更通知要否記憶部に記憶された変更通知要否フラグ値のうち前記要求プロセスのプロセス識別子に対応付けられた変更通知要否フラグ値に基づいて、前記変更通知の要否を判定し、
前記変更通知部は、前記変更通知が必要であると判定した場合に前記変更通知を前記要求プロセスに送る
ことを特徴とする請求項４記載のプロセス管理装置。
【請求項６】
前記プロセス管理装置は、
前記複数のプロセスのプロセス毎に、プロセス識別子と、強制終了設定値の上限値である設定上限値と、を記憶する設定上限値記憶部を備え、
前記設定値変更部は、前記設定上限値記憶部に記憶された設定上限値のうち前記要求プロセスのプロセス識別子に対応付けられた設定上限値と前記要求設定値とを比較し、
前記設定値変更部は、前記要求設定値が前記要求プロセスの前記設定上限値以下であることを条件として、前記要求プロセスの前記強制終了設定値を前記要求設定値に変更する
ことを特徴とする請求項１から請求項５いずれかに記載のプロセス管理装置。
【請求項７】
コンピュータリソースの使用量を表すシステム特性値がプロセスの強制終了が開始される強制終了開始値より小さい警告発生値以上であるか否かを判定する警告発生値判定部と、
前記警告発生値判定部によって前記システム特性値が前記警告発生値以上であると判定された場合、前記強制終了設定値記憶部に記憶された前記複数のプロセスのそれぞれの強制終了設定値に基づいて、前記複数のプロセスのうち前記システム特性値が前記強制終了開始値以上になった場合に強制終了されるプロセスを警告対象プロセスとして特定する警告対象特定部と、
前記警告対象特定部によって特定された前記警告対象プロセスに、前記システム特性値が前記強制終了開始値以上になった場合に強制終了されることを通知するための警告通知を送る警告通知部とを備える
ことを特徴とする請求項１から請求項６いずれかに記載のプロセス管理装置。
【請求項８】
前記プロセス管理装置は、
前記複数のプロセスのプロセス毎に、プロセス識別子と、前記警告通知の要否を示す警告通知要否フラグ値と、を記憶する警告通知要否記憶部を備え、
前記警告通知部は、前記警告通知要否記憶部に記憶された警告通知要否フラグ値のうち前記警告対象プロセスのプロセス識別子に対応付けられた警告通知要否フラグ値に基づいて、前記警告通知の要否を判定し、
前記警告通知部は、前記警告通知が必要であると判定した場合に前記警告通知を前記警告対象プロセスに送る
ことを特徴とする請求項７記載のプロセス管理装置。
【請求項９】
強制終了設定値記憶部と、変更維持時間記憶部と、変更要求受付部と、設定値変更部と、変更時間計測部と、変更時間判定部とを備えるプロセス管理装置を用いるプロセス管理方法であって、
前記強制終了設定値記憶部は、複数のプロセスのプロセス毎に、プロセスを識別するためのプロセス識別子と、前記複数のプロセスを強制終了させる順番を決定するための強制終了設定値と、を記憶する記憶部であり、
前記変更維持時間記憶部は、前記複数のプロセスのプロセス毎に、プロセス識別子と、強制終了設定値が変更された場合に強制終了設定値が変更された状態を維持する時間の長さを示す変更維持時間と、を記憶する記憶部であり、
前記変更要求受付部が、前記複数のプロセスに含まれるプロセスである要求プロセスから、前記要求プロセスの強制終了設定値を要求設定値に変更するための変更要求を受け取り、
前記設定値変更部が、前記変更要求受付部によって受け取られた前記変更要求に基づいて、前記強制終了設定値記憶部に記憶された強制終了設定値のうち、前記要求プロセスのプロセス識別子に対応付けられた強制終了設定値を、前記要求設定値に変更し、
前記変更時間計測部が、前記設定値変更部によって前記強制終了設定値が前記要求設定値に変更された後に経過した時間を変更時間として計測し、
前記変更時間判定部が、前記変更時間計測部によって計測された前記変更時間が、前記変更維持時間記憶部に記憶された変更維持時間のうち前記要求プロセスの前記プロセス識別子に対応付けられた変更維持時間を超えたか否かを判定し、
前記設定値変更部が、前記変更時間判定部によって前記変更時間が前記変更維持時間を超えたと判定されたときに、前記要求プロセスの前記強制終了設定値を、前記強制終了設定値の初期値である初期設定値に戻す
ことを特徴とするプロセス管理方法。
【請求項１０】
請求項１から請求項８いずれかに記載のプロセス管理装置としてコンピュータを機能させるためのプロセス管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、プロセスを管理するためのプロセス管理装置、プロセス管理方法およびプロセス管理プログラムに関するものである。
【背景技術】
【０００２】
従来、複数のプロセスが並列で実行される情報処理システムにおいて、システムがメモリ不足に陥った場合、システム全体が異常終了してしまうのを避けるため、決められた基準に従っていくつかのプロセスを強制終了してメモリを開放する技術がある（例えば非特許文献１）。
【０００３】
例えば、プロセスを強制終了させる順番は、プロセスの特性値および設定値に基づいて決定される。
プロセスの特性値とは、メモリ使用量またはＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）の使用率など、プロセスの実行状態によって変化する動的な値である。
プロセスの設定値とは、プロセスを強制終了させる順番を決めるために予め設定された値である。
【０００４】
従来技術において、設定値を変更するための変更権が与えられたプロセスは設定値を変更することができるが、変更権が与えられていないプロセスは設定値を変更することができない。
そのため、変更権が与えられていないプロセスは、重要な処理を実行している場合など、強制終了を避けたい理由がある場合であっても、強制終了させられてしまう可能性がある。
【０００５】
他の従来技術として、メモリ不足が発生したときに、システムが操作者に対してプロセスを強制終了しても良いか否かを確認する方法がある。操作者から許可が得られた場合、システムは、メモリを最も多く使用しているプロセスを強制終了する（例えば特許文献１）。
つまり、メモリ不足が発生する度に、システムの操作者は強制終了させるプロセスを判断しなくてはならない。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１１−００３３０８号公報
【非特許文献】
【０００７】
【非特許文献１】ＤＡＮＩＥＬ  Ｐ．ＢＯＶＥＴ・ＭＡＲＣＯ  ＣＥＳＡＴＩ著、「詳解  Ｌｉｎｕｘカーネル  第３版」株式会社オーム社、２００７年２月２２日発行、ｐ．７５９〜７６０
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、例えば、強制終了を避けたいプロセスが、強制終了の順番を決定するための強制終了設定値を一時的に変更し、強制終了を避けることができるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明のプロセス管理装置は、
複数のプロセスのプロセス毎に、プロセスを識別するためのプロセス識別子と、前記複数のプロセスを強制終了させる順番を決定するための強制終了設定値と、を記憶する強制終了設定値記憶部と、
前記複数のプロセスのプロセス毎に、プロセス識別子と、強制終了設定値が変更された場合に強制終了設定値が変更された状態を維持する時間の長さを示す変更維持時間と、を記憶する変更維持時間記憶部と、
前記複数のプロセスに含まれるプロセスである要求プロセスから、前記要求プロセスの強制終了設定値を要求設定値に変更するための変更要求を受け取る変更要求受付部と、
前記変更要求受付部によって受け取られた前記変更要求に基づいて、前記強制終了設定値記憶部に記憶された強制終了設定値のうち、前記要求プロセスのプロセス識別子に対応付けられた強制終了設定値を、前記要求設定値に変更する設定値変更部と、
前記設定値変更部によって前記強制終了設定値が前記要求設定値に変更された後に経過した時間を変更時間として計測する変更時間計測部と、
前記変更時間計測部によって計測された前記変更時間が、前記変更維持時間記憶部に記憶された変更維持時間のうち前記要求プロセスの前記プロセス識別子に対応付けられた変更維持時間を超えたか否かを判定する変更時間判定部とを備える。
前記設定値変更部は、前記変更時間判定部によって前記変更時間が前記変更維持時間を超えたと判定されたときに、前記要求プロセスの前記強制終了設定値を、前記強制終了設定値の初期値である初期設定値に戻す。
【発明の効果】
【００１０】
本発明は、例えば、強制終了を避けたいプロセスが、強制終了の順番を決定するための強制終了設定値を一時的に変更し、強制終了を避けることができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１における情報処理装置１００の機能構成図である。
【図２】実施の形態１における強制終了テーブル１９１の一例を示す図である。
【図３】実施の形態１におけるプロセス特性値テーブル１９２の一例を示す図である。
【図４】実施の形態１における強制終了設定値テーブル１９３の一例を示す図である。
【図５】実施の形態１におけるプロセス強制終了処理の概要図である。
【図６】実施の形態１における設定値パラメータテーブル１９４の一例を示す図である。
【図７】実施の形態１における強制終了設定値管理部２００の構成図である。
【図８】実施の形態１における強制終了設定値管理処理を示すフローチャートである。
【図９】実施の形態１における強制終了設定値管理処理を示すフローチャートである。
【図１０】実施の形態１における強制終了設定値管理処理を示すフローチャートである。
【図１１】実施の形態１における変更時間計測処理（Ｓ２００）を示すフローチャートである。
【図１２】実施の形態１におけるインターバル時間計測処理（Ｓ２４０）を示すフローチャートである。
【図１３】実施の形態１におけるプロセス状態遷移図である。
【図１４】実施の形態１におけるプロセス管理処理の概要図である。
【図１５】実施の形態１におけるプロセス管理処理の概要図である。
【図１６】実施の形態１におけるプロセス管理処理の概要図である。
【図１７】実施の形態１におけるプロセス管理処理の概要図である。
【図１８】実施の形態１における情報処理装置１００のハードウェア資源の一例を示す図である。
【図１９】実施の形態１における設定値パラメータテーブル１９４の別例を示す図である。
【図２０】実施の形態１における設定値パラメータテーブル１９４の別例を示す図である。
【図２１】実施の形態１における設定値パラメータテーブル１９４の別例を示す図である。
【図２２】実施の形態２における設定値パラメータテーブル１９４の一例を示す図である。
【図２３】実施の形態２における強制終了設定値管理処理の一部を示すフローチャートである。
【図２４】実施の形態３における情報処理装置１００の機能構成図である。
【図２５】実施の形態３における終了警告テーブル１９５の一例を示す図である。
【図２６】実施の形態３における強制終了警告部３００の構成図である。
【図２７】実施の形態３における強制終了警告処理を示すフローチャートである。
【図２８】実施の形態３における警告対象特定処理（Ｓ３２０）を示すフローチャートである。
【発明を実施するための形態】
【００１２】
実施の形態１．
強制終了を避けたいプロセスが、強制終了の順番を決定するための強制終了設定値を一時的に変更し、強制終了を避ける形態について説明する。
【００１３】
図１は、実施の形態１における情報処理装置１００の機能構成図である。
実施の形態１における情報処理装置１００の機能構成について、図１に基づいて説明する。
【００１４】
情報処理装置１００（プロセス管理装置の一例）は、複数のプロセスを実行するコンピュータである。
プロセスは実行されるプログラムの単位であり、プロセスにはメモリの記憶領域またはＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）の使用時間などのコンピュータリソースが割り当てられる。
情報処理装置１００は、プロセス実行部１１０と、システム特性値取得部１２０と、プロセス強制終了部１３０と、強制終了設定値管理部２００と、装置記憶部１９０とを備える。
【００１５】
プロセス実行部１１０は、複数のプロセスを実行する構成である。
プロセス実行部１１０は、複数のプロセスのそれぞれに対してメモリの記憶領域またはＣＰＵの使用時間などのコンピュータリソースを割り当て、割り当てたコンピュータリソースを用いて複数のプロセスを実行する。
【００１６】
システム特性値取得部１２０は、メモリの使用量またはＣＰＵの使用率など、コンピュータリソースの使用状態を表す値をＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）またはハードウェアから取得する構成である。
以下、コンピュータリソースの使用状態を表す値を「特性値」という。また、情報処理装置１００の特性値を「システム特性値」といい、プロセス毎の特性値を「プロセス特性値」という。
システム特性値取得部１２０は、定期的に、情報処理装置１００のシステム特性値およびプロセス毎のプロセス特性値を取得する。
【００１７】
プロセス強制終了部１３０は、メモリ不足またはＣＰＵの過負荷など、コンピュータリソースの過負荷が発生した場合に、複数のプロセスを順番に強制終了させる構成である。
プロセス強制終了部１３０は、プロセス毎にプロセス特性値および強制終了設定値を用いて強制終了順位式を計算し、計算によって得られた複数のプロセスのそれぞれの強制終了順位値に基づいて強制終了の順番を決定し、決定した順番でプロセスを強制終了させる。
強制終了設定値は、プロセスを強制終了させる順番を決定するための値であり、強制終了順位値を算出するために用いられる。強制終了設定値はプロセス毎に設定される。
強制終了順位値は、プロセスを強制終了させる順番の大小を示す値であり、強制終了順位式を計算することによって算出される。強制終了順位式は、強制終了順位値を計算するための式である。
【００１８】
強制終了設定値管理部２００は、複数のプロセスのそれぞれの強制終了設定値を管理する構成である。
【００１９】
装置記憶部１９０は、情報処理装置１００で使用されるデータを記憶する構成である。
例えば、装置記憶部１９０は、強制終了テーブル１９１、プロセス特性値テーブル１９２、強制終了設定値テーブル１９３および設定値パラメータテーブル１９４を記憶する。各テーブルの内容については以下で説明する。
【００２０】
図２は、実施の形態１における強制終了テーブル１９１の一例を示す図である。
実施の形態１における強制終了テーブル１９１の一例について、図２に基づいて説明する。
【００２１】
強制終了テーブル１９１は、プロセスを強制終了する条件に関するデータが格納される。
【００２２】
例えば、強制終了テーブル１９１は、「メモリ使用量」「強制終了開始値」「強制終了停止値」を対応付ける。
「メモリ使用量」は、情報処理装置１００が使用しているメモリの使用量（例えば、パーセンテージ）を示し、システム特性値取得部１２０によって定期的に更新される。情報処理装置１００のメモリの使用量はシステム特性値の一例である。
「強制終了開始値」は、プロセスの強制終了を開始するときの条件値を示す。
「強制終了停止値」は、プロセスの強制終了を停止するときの条件値を示す。
【００２３】
図３は、実施の形態１におけるプロセス特性値テーブル１９２の一例を示す図である。
実施の形態１におけるプロセス特性値テーブル１９２の一例について、図３に基づいて説明する。
【００２４】
プロセス特性値テーブル１９２は、プロセス毎のメモリの使用量を管理するためのデータが格納される。
【００２５】
例えば、プロセス特性値テーブル１９２は、「プロセス」「メモリ使用量」を対応付ける。
「プロセス」は、プロセスを識別するプロセス識別子（例えば、プロセス名）を示す。
「メモリ使用量」は、プロセスが使用しているメモリの使用量（例えば、パーセンテージ）を示し、システム特性値取得部１２０によって定期的に更新される。プロセスのメモリの使用量はプロセス特性値の一例である。
【００２６】
図４は、実施の形態１における強制終了設定値テーブル１９３の一例を示す図である。
実施の形態１における強制終了設定値テーブル１９３の一例について、図４に基づいて説明する。
【００２７】
強制終了設定値テーブル１９３（強制終了設定値記憶部の一例）は、プロセス毎の強制終了設定値を管理するためのデータが格納される。
【００２８】
例えば、強制終了設定値テーブル１９３は、「プロセス」「強制終了設定値」「初期設定値」を対応付ける。
「プロセス」は、プロセスを識別するプロセス識別子を示す。
「強制終了設定値」は、現在の強制終了設定値を示す。
「初期設定値」は、予め定義された強制終了設定値、つまり、強制終了設定値の初期値を示す。以下、強制終了設定値の初期値を「初期設定値」という。
【００２９】
図５は、実施の形態１におけるプロセス強制終了処理の概要図である。
実施の形態１におけるプロセス強制終了処理の概要について、図５に基づいて説明する。
【００３０】
（１）システム特性値取得部１２０は、情報処理装置１００のメモリ使用量をＯＳ等から定期的に取得し、取得したメモリ使用量を強制終了テーブル１９１に格納する。
また、システム特性値取得部１２０は、プロセス毎のメモリ使用量をＯＳ等から定期的に取得し、取得したプロセス毎のメモリ使用量をプロセス特性値テーブル１９２に設定する。
（２）プロセス強制終了部１３０は、定期的に強制終了テーブル１９１を参照し、情報処理装置１００のメモリ使用量が強制終了開始値以上であるか否か判定する。
ここで、情報処理装置１００のメモリ使用量が強制終了開始値以上であったものとする。
（３）プロセス強制終了部１３０は、プロセス毎にプロセス識別子に対応付けられたメモリ使用量をプロセス特性値テーブル１９２から取得する。
また、プロセス強制終了部１３０は、プロセス毎にプロセス識別子に対応付けられた強制終了設定値を強制終了設定値テーブル１９３から取得する。
（４）プロセス強制終了部１３０は、プロセス毎にメモリ使用量と強制終了設定値とを用いて強制終了順位式を計算し、プロセス毎の強制終了順位値を算出する。
例えば、強制終了順位式は、メモリ使用量Ｍと強制終了設定値Ｓと強制終了順位値Ｏとを用いて「Ｏ＝Ｍ−（Ｓ×５）」で表すことができる。但し、強制終了順位式はこの式以外の式であっても構わない。
（５）プロセス強制終了部１３０は、プロセス毎の強制終了順位値に基づいてプロセスの強制終了順位を決定する。例えば、強制終了順位値が大きいほどプロセスの強制終了順位が上位になり、強制終了順位値が小さいほどプロセスの強制終了順位が下位になる。
（６）プロセス強制終了部１３０は、強制終了順位の順番でプロセスを１つずつ強制終了させる。
また、システム特性値取得部１２０は、プロセスが強制終了される毎に情報処理装置１００のメモリ使用量を取得し、取得したメモリ使用量を強制終了テーブル１９１に設定する。
プロセス強制終了部１３０は、プロセスを強制終了する毎に強制終了テーブル１９１を参照し、メモリ使用量が強制終了停止値以下になるまでプロセスの強制終了を続ける。
【００３１】
図６は、実施の形態１における設定値パラメータテーブル１９４の一例を示す図である。
実施の形態１における設定値パラメータテーブル１９４の一例について、図６に基づいて説明する。
【００３２】
設定値パラメータテーブル１９４（変更維持時間記憶部、変更禁止時間記憶部、変更通知要否記憶部の一例）は、プロセスの強制終了設定値を変更する条件に関するデータである。
【００３３】
例えば、設定値パラメータテーブル１９４は、「プロセス」「条件パラメータ」「動的パラメータ」を対応付ける。
「プロセス」は、プロセスを識別するプロセス識別子を示す。
「条件パラメータ」は、強制終了設定値を変更する条件に関して設定されるパラメータであり、「変更上限時間」「変更禁止時間」「変更通知要否フラグ」を含む。
「変更上限時間」は、強制終了設定値が変更された状態を維持する時間の上限を示す（変更維持時間の一例）。初期設定値から変更された強制終了設定値は、変更上限時間が経過したときに初期設定値に戻される。
「変更禁止時間」は、変更された強制終了設定値が初期設定値に戻された後に強制終了設定値の変更を禁止する時間を示す。初期設定値に戻された強制終了設定値は、変更禁止時間が経過するまで変更されない。
「変更通知要否フラグ」は、強制終了設定値が変更されたことをプロセスに通知する必要があるか否かを示す。
「動的パラメータ」は、強制終了設定値を変更する条件に関して更新されるパラメータであり、「変更時間」「インターバル時間」「プロセス状態」を含む。
「変更時間」は、強制終了設定値が変更された後に経過した時間を示す。
「インターバル時間」は、変更された強制終了設定値が初期設定値に戻された後に経過した時間を示す。
「プロセス状態」は、強制終了設定値が変更されていない「初期設定値状態」と、強制終了設定値が変更された「設定値変更状態」と、初期設定値に戻された強制終了設定値の変更が禁止されている「インターバル状態」とのいずれかを示す。
【００３４】
次に、プロセスの強制終了設定値を管理する方法について説明する。
【００３５】
図７は、実施の形態１における強制終了設定値管理部２００の構成図である。
実施の形態１における強制終了設定値管理部２００の構成について、図７に基づいて説明する。
【００３６】
強制終了設定値管理部２００は、プロセス要求受付部２１０（変更要求受付部の一例）と、設定値変更部２２０と、変更時間計測部２３０（変更時間判定部の一例）と、インターバル時間計測部２４０（インターバル時間判定部の一例）と、変更通知登録部２５０と、変更通知部２６０とを備える。
【００３７】
プロセス要求受付部２１０はプロセスからプロセス要求を受け取る。
例えば、プロセス要求には、強制終了設定値の変更を要求する「設定値変更要求」と、強制終了設定値を初期設定値に戻すことを要求する「設定値初期化要求」と、強制終了設定値が変更されたことを通知するための変更通知を要求する「変更通知登録要求」とがある。
【００３８】
設定値変更部２２０は、設定値パラメータテーブル１９４を参照し、強制終了設定値を変更するか否かを判定する。
強制終了設定値を変更すると判定した場合、設定値変更部２２０は、強制終了設定値テーブル１９３に設定されている強制終了設定値を変更する。
【００３９】
変更時間計測部２３０は、強制終了設定値が変更された後に経過した時間（変更時間）を計測し、計測した時間を設定値パラメータテーブル１９４に設定する。
インターバル時間計測部２４０は、強制終了設定値が初期設定値に戻された後に経過した時間（インターバル時間）を計測し、計測した時間を設定値パラメータテーブル１９４に設定する。
変更通知登録部２５０は、設定値パラメータテーブル１９４に設定されている変更通知要否フラグを変更通知登録要求に応じて設定する。
【００４０】
変更通知部２６０は、プロセスの強制終了設定値が変更されたときに設定値パラメータテーブル１９４に設定されている変更通知要否フラグを参照し、プロセスへの変更通知を行うか否か判定する。
プロセスへの変更通知を行うと判定した場合、変更通知部２６０は、強制終了設定値が変更されたことをプロセスに通知する。
【００４１】
図８、図９および図１０は、実施の形態１における強制終了設定値管理処理を示すフローチャートである。
実施の形態１における強制終了設定値管理処理について、図８から図１０に基づいて説明する。
【００４２】
強制終了設定値管理部２００（図７参照）は、複数のプロセスのいずれかからプロセス要求が送られる毎に強制終了設定値管理処理を実行する。以下、プロセス要求を送ったプロセスを「要求プロセス」という。
例えば、各プロセスは、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を用いてプロセス要求を送る。
【００４３】
Ｓ１１０（図８参照）において、プロセス要求受付部２１０は、要求プロセスからプロセス要求を受け取る。
プロセス要求には、「設定値変更要求」「設定値初期化要求」「変更通知登録要求」の３種類がある。
各種類のプロセス要求は、プロセス要求を通知したプロセスを識別するプロセス識別子を含む。また、設定値変更要求は変更後の強制終了設定値を含む。以下、設定値変更要求に含まれる変更後の強制終了設定値を「要求設定値」という。
Ｓ１１０の後、処理はＳ１１１に進む。
【００４４】
Ｓ１１１において、プロセス要求受付部２１０は、プロセス要求が「設定値変更要求」「設定値初期化要求」「変更通知登録要求」のいずれの要求であるかを判定する。
プロセス要求の種類が「設定値変更要求」である場合、処理はＳ１２０に進む。
プロセス要求の種類が「設定値初期化要求」である場合、処理はＳ１３０（図９参照）に進む。
プロセス要求の種類が「変更通知登録要求」である場合、処理はＳ１１９に進む。
【００４５】
Ｓ１１９において、変更通知登録部２５０は、要求プロセスの変更通知要否フラグの値を変更する。
つまり、変更通知登録部２５０は、設定値パラメータテーブル１９４（図６参照）に設定されている変更通知要否フラグのうち、変更通知登録要求に含まれるプロセス識別子と同じプロセス識別子（プロセスの欄を参照）に対応付けられた変更通知要否フラグを「不要（初期値）」から「要」に変更する。
Ｓ１１９の後、強制終了設定値管理処理は終了する。
【００４６】
Ｓ１２０において、設定値変更部２２０は要求プロセスのプロセス状態を判定する。
つまり、設定値変更部２２０は、設定値パラメータテーブル１９４（図６参照）に設定されているプロセス状態のうち、設定値変更要求に含まれるプロセス識別子と同じプロセス識別子（プロセスの欄を参照）に対応付けられたプロセス状態を参照する。
そして、設定値変更部２２０は、参照したプロセス状態が「初期設定値状態」「設定値変更状態」「インターバル状態」のいずれの状態であるかを判定する。
要求プロセスのプロセス状態が「初期設定値状態」である場合、処理はＳ１２１に進む。
要求プロセスのプロセス状態が「設定値変更状態」である場合、処理はＳ１２１に進む。
要求プロセスのプロセス状態が「インターバル状態」である場合、設定値変更部２２０は要求プロセスの強制終了設定値を変更せず、強制終了設定値管理処理は終了する。
【００４７】
Ｓ１２１において、設定値変更部２２０は、要求プロセスの強制終了設定値を要求設定値に変更する。要求設定値は設定値変更要求に含まれる値である。
つまり、設定値変更部２２０は、強制終了設定値テーブル１９３（図４参照）に設定されている強制終了設定値のうち、設定値変更要求に含まれるプロセス識別子と同じプロセス識別子（プロセスの欄を参照）に対応付けられた強制終了設定値を、要求設定値に変更する。
Ｓ１２１の後、処理はＳ１２２に進む。
【００４８】
Ｓ１２２において、設定値変更部２２０は、要求プロセスのプロセス状態が「初期設定値状態」「設定値変更状態」のいずれの状態であるかを判定する。
要求プロセスのプロセス状態が「初期設定値状態」である場合、処理はＳ１２３に進む。
要求プロセスのプロセス状態が「設定値変更状態」である場合、処理はＳ１４０（図１０参照）に進む。
【００４９】
Ｓ１２３において、設定値変更部２２０は、要求プロセスのプロセス状態を「初期設定値状態」から「設定値変更状態」に変更する。
Ｓ１２３の後、処理はＳ２００に進む。
【００５０】
Ｓ２００において、変更時間計測部２３０は、後述する変更時間計測処理（Ｓ２００）を開始する。
変更時間計測処理（Ｓ２００）が開始された後、処理はＳ１４０（図１０参照）に進む。
【００５１】
Ｓ１４０（図１０参照）において、変更通知部２６０は、強制終了設定値を変更したことを要求プロセスに通知するか否かを判定する。
つまり、変更通知部２６０は、設定値パラメータテーブル１９４（図６参照）に設定されている変更通知要否フラグのうち、設定値変更要求に含まれるプロセス識別子と同じプロセス識別子（プロセスの欄を参照）に対応付けられた変更通知要否フラグを参照する。
そして、変更通知部２６０は、参照した変更通知要否フラグの値が「要」「不要」のいずれであるかを判定する。
変更通知要否フラグの値が「要」である場合、処理はＳ１４１に進む。
変更通知要否フラグの値が「不要」である場合、変更通知部２６０は強制終了設定値を変更したことを要求プロセスに通知せず、強制終了設定値管理処理は終了する。
【００５２】
Ｓ１４１において、変更通知部２６０は、強制終了設定値を変更したことを示す変更通知を要求プロセスに送る。
例えば、情報処理装置１００は要求プロセスに変更通知を送るためのコールバック関数を予め登録し、変更通知部２６０はコールバック関数を実行することによって要求プロセスに変更通知を送る。
Ｓ１４１の後、強制終了設定値管理処理は終了する。
【００５３】
次に、Ｓ１１１（図８参照）でプロセス要求が「設定値初期化要求」であった場合の処理について説明する。
【００５４】
Ｓ１３０（図９参照）において、設定値変更部２２０は、要求プロセスのプロセス状態を判定する。判定方法は図８で説明したＳ１２０と同様である。
要求プロセスのプロセス状態が「設定値変更状態」である場合、処理はＳ１３１に進む。
要求プロセスのプロセス状態が「初期設定値状態」「インターバル状態」である場合、設定値変更部２２０は要求プロセスの強制終了設定値を変更せず、強制終了設定値管理処理は終了する。
【００５５】
Ｓ１３１において、設定値変更部２２０は、要求プロセスの強制終了設定値を初期設定値に変更する。
つまり、設定値変更部２２０は、強制終了設定値テーブル１９３（図４参照）に含まれるレコード（行）のうち、設定値初期化要求に含まれるプロセス識別子と同じプロセス識別子（プロセスの欄を参照）が設定されているレコードを参照する。ここで、参照するレコードを「対象レコード」という。
そして、設定値変更部２２０は、対象レコードに設定されている強制終了設定値を対象レコードに設定されている初期設定値と同じ値に変更する。
Ｓ１３１の後、処理はＳ１３２に進む。
【００５６】
Ｓ１３２において、設定値変更部２２０は、要求プロセスのプロセス状態を「設定値変更状態」から「インターバル状態」に変更する。
Ｓ１３２の後、処理はＳ２４０に進む。
【００５７】
Ｓ２４０において、インターバル時間計測部２４０は、後述するインターバル時間計測処理を開始する。
インターバル時間計測処理（Ｓ２４０）が開始された後、強制終了設定値管理処理は終了する。
【００５８】
図１１は、実施の形態１における変更時間計測処理（Ｓ２００）を示すフローチャートである。
実施の形態１における変更時間計測処理（Ｓ２００）について、図１１に基づいて説明する。
【００５９】
Ｓ２１０において、変更時間計測部２３０は、要求プロセスの変更時間を初期化する。
つまり、変更時間計測部２３０は、設定値パラメータテーブル１９４（図６参照）に設定されている変更時間のうち、要求プロセスのプロセス識別子（プロセスの欄を参照）に対応付けられた変更時間を「０秒」にする。
Ｓ２１０の後、処理はＳ２２０に進む。
【００６０】
Ｓ２２０において、変更時間計測部２３０は、単位経過時間（例えば、１秒）の経過を待ち、単位経過時間が経過したときに要求プロセスの変更時間に単位経過時間を加算する。
Ｓ２２０の後、処理はＳ２２１に進む。
【００６１】
Ｓ２２１において、変更時間計測部２３０は、要求プロセスの変更時間が要求プロセスの変更上限時間以上であるか否かを判定する。
要求プロセスの変更上限時間は、設定値パラメータテーブル１９４（図６参照）に設定されている変更上限時間のうち、要求プロセスのプロセス識別子（プロセスの欄を参照）に対応付けられた変更上限時間である。
要求プロセスの変更時間が要求プロセスの変更上限時間以上である場合（ＹＥＳ）、変更時間計測部２３０は設定値変更部２２０を呼び出し、処理はＳ２３０に進む。
要求プロセスの変更時間が要求プロセスの変更上限時間未満である場合（ＮＯ）、処理はＳ２２０に戻る。
【００６２】
Ｓ２３０において、設定値変更部２２０は、要求プロセスの強制終了設定値を初期設定値に変更する。
つまり、設定値変更部２２０は、強制終了設定値テーブル１９３（図４参照）に含まれるレコード（行）のうち、要求プロセスのプロセス識別子（プロセスの欄を参照）が設定されているレコードを参照する。ここで、参照するレコードを「対象レコード」という。
そして、設定値変更部２２０は、対象レコードに設定されている強制終了設定値を対象レコードに設定されている初期設定値と同じ値に変更する。
Ｓ２３０の後、処理はＳ２３１に進む。
【００６３】
Ｓ２３１において、設定値変更部２２０は、要求プロセスのプロセス状態を「設定値変更状態」から「インターバル状態」に変更する。
要求プロセスのプロセス状態は、設定値パラメータテーブル１９４（図６参照）に設定されているプロセス状態のうち、要求プロセスのプロセス識別子（プロセスの欄を参照）に対応付けられたプロセス状態である。
Ｓ２３１の後、処理はＳ２４０に進む。
【００６４】
Ｓ２４０において、インターバル時間計測部２４０は、後述するインターバル時間計測処理を開始する。
インターバル時間計測処理（Ｓ２４０）が開始された後、変更時間計測処理（Ｓ２００）は終了する。
【００６５】
図１２は、実施の形態１におけるインターバル時間計測処理（Ｓ２４０）を示すフローチャートである。
実施の形態１におけるインターバル時間計測処理（Ｓ２４０）について、図１２に基づいて説明する。
【００６６】
Ｓ２４１において、インターバル時間計測部２４０は、要求プロセスのインターバル時間を初期化する。
つまり、インターバル時間計測部２４０は、設定値パラメータテーブル１９４（図６参照）に設定されているインターバル時間のうち、要求プロセスのプロセス識別子（プロセスの欄を参照）に対応付けられたインターバル時間を「０秒」にする。
Ｓ２４１の後、処理はＳ２４２に進む。
【００６７】
Ｓ２４２において、インターバル時間計測部２４０は、単位経過時間（例えば、１秒）の経過を待ち、単位経過時間が経過したときに要求プロセスのインターバル時間に単位経過時間を加算する。
Ｓ２４２の後、処理はＳ２４３に進む。
【００６８】
Ｓ２４３において、インターバル時間計測部２４０は、要求プロセスのインターバル時間が要求プロセスの変更禁止時間以上であるか否かを判定する。
要求プロセスの変更禁止時間は、設定値パラメータテーブル１９４（図６参照）に設定されている変更禁止時間のうち、要求プロセスのプロセス識別子（プロセスの欄を参照）に対応付けられた変更禁止時間である。
要求プロセスのインターバル時間が要求プロセスの変更禁止時間以上である場合（ＹＥＳ）、インターバル時間計測部２４０は設定値変更部２２０を呼び出し、処理はＳ２４４に進む。
要求プロセスのインターバル時間が要求プロセスの変更禁止時間未満である場合（ＮＯ）、処理はＳ２４２に戻る。
【００６９】
Ｓ２４４において、設定値変更部２２０は、要求プロセスのプロセス状態を「インターバル状態」から「初期設定値状態」に変更する。
要求プロセスのプロセス状態は、設定値パラメータテーブル１９４（図６参照）に設定されているプロセス状態のうち、要求プロセスのプロセス識別子（プロセスの欄を参照）に対応付けられたプロセス状態である。
Ｓ２４４の後、インターバル時間計測処理（Ｓ２４０）は終了する。
【００７０】
図１３は、実施の形態１におけるプロセス状態遷移図である。
プロセス状態と、プロセス要求と、強制終了設定値との関係について、図１３に基づいて説明する。
【００７１】
図１３のプロセス状態遷移図は、角が丸い長方形内にプロセス状態を示し、吹き出し内の上段にプロセス要求または時間経過を示し、吹き出し内の下段に強制終了設定値の変更の有無を示している。
【００７２】
（１）初期設定値状態で設定値初期化要求が発生した場合、強制終了設定値は初期設定値から変更されない。また、プロセス状態は初期設定値状態のままである。
（２）初期設定値状態で設定値変更要求が発生した場合、強制終了設定値が要求設定値に変更され、変更時間の計測が開始される。また、プロセス状態は初期設定値状態から設定値変更状態に遷移する。
【００７３】
（３）設定値変更状態で設定値初期化要求が発生した場合、強制終了設定値は初期設定値に変更され、インターバル時間の計測が開始される。また、プロセス状態は設定値変更状態からインターバル状態に遷移する。
（４）設定値変更状態で設定値変更要求が発生した場合、強制終了設定値が要求設定値に変更され、変更時間の計測が継続される。また、プロセス状態は設定値変更状態から変更されない。
（５）設定値変更状態で変更時間が変更上限時間以上になった場合、強制終了設定値は初期設定値に変更され、インターバル時間の計測が開始される。また、プロセス状態は設定値変更状態からインターバル状態に遷移する。
【００７４】
（６）インターバル状態で設定値初期化要求が発生した場合、強制終了設定値が初期設定値から変更されず、インターバル時間の計測が継続される。また、プロセス状態はインターバル状態から変更されない。
（７）インターバル状態で設定値変更要求が発生した場合、強制終了設定値が初期設定値から変更されず、インターバル時間の計測が継続される。また、プロセス状態はインターバル状態から変更されない。
（８）インターバル状態でインターバル時間が変更禁止時間以上になった場合、強制終了設定値は初期設定値から変更されない。また、プロセス状態はインターバル状態から初期設定値状態に遷移する。
【００７５】
図１４、図１５、図１６および図１７は、実施の形態１におけるプロセス管理処理の概要図である。
実施の形態１におけるプロセス管理処理の概要について、図１４から図１７に基づいて説明する。
【００７６】
ここで、強制終了順位式は、メモリ使用量Ｍと強制終了設定値Ｓと強制終了順位値Ｏとを用いて「Ｏ＝Ｍ−（Ｓ×５）」で表されるものとする。
また、プロセス特性値テーブル１９２に設定されているプロセスＡ・Ｂ・Ｃのそれぞれのメモリ使用量が「５０」「２０」「１０」であるものとする。
【００７７】
図１４において、強制終了設定値テーブル１９３に設定されている各プロセスＡ・Ｂ・Ｃの強制終了設定値は初期設定値「０」から変更されていない。
このとき、プロセスＡの強制終了順位値は「５０（＝５０−（０×５））」であり、プロセスＢの強制終了順位値は「２０（＝２０−（０×５））」であり、プロセスＣの強制終了順位値は「１０（＝１０−（０×５））」である。ここで、強制終了順位値が大きい順にプロセスＡ・Ｂ・Ｃを並べると「プロセスＡ」「プロセスＢ」「プロセスＣ」になる。
したがって、強制終了順位は、上位から順に「プロセスＡ」「プロセスＢ」「プロセスＣ」である。強制終了テーブル１９１に設定されているメモリ使用量が強制終了開始値以上になった場合、プロセス強制終了部１３０は強制終了順位に従って「プロセスＡ」「プロセスＢ」「プロセスＣ」の順にプロセスの強制終了を行う。
【００７８】
図１５において、重要な処理を開始したプロセスＡ・Ｂが強制終了設定値の変更を要求したものとする。プロセスＡの要求設定値は「１５」であり、プロセスＢの要求設定値は「５」である。
強制終了設定値管理部２００は、プロセスＡの強制終了設定値を要求設定値「１５」に変更し、プロセスＢの強制終了設定値を要求設定値「５」に変更する。
このとき、プロセスＡの強制終了順位値は「−２５（＝５０−（１５×５）」であり、プロセスＢの強制終了順位値は「−５（＝２０−（５×５））」であり、プロセスＣの強制終了順位値は「１０（＝１０−（０×５））」である。
したがって、強制終了順位は「プロセスＣ」「プロセスＢ」「プロセスＡ」である。
【００７９】
図１６において、強制終了設定値管理部２００は、設定値パラメータテーブル１９４を参照し、プロセスＢの変更上限時間「３秒」が経過したときにプロセスＢの強制終了設定値を初期設定値「０」に戻す。
このとき、プロセスＡの強制終了順位値は「−２５（＝５０−（１５×５）」であり、プロセスＢの強制終了順位値は「２０（＝２０−（０×５））」であり、プロセスＣの強制終了順位値は「１０（＝１０−（０×５））」である。
したがって、強制終了順位は「プロセスＢ」「プロセスＣ」「プロセスＡ」である。
【００８０】
図１７において、強制終了設定値管理部２００は、設定値パラメータテーブル１９４を参照し、プロセスＡの変更上限時間「１０秒」が経過したときにプロセスＡの強制終了設定値を初期設定値「０」に戻す。
このとき、プロセスＡの強制終了順位値は「５０（＝５０−（０×５）」であり、プロセスＢの強制終了順位値は「２０（＝２０−（０×５））」であり、プロセスＣの強制終了順位値は「１０（＝１０−（０×５））」である。
したがって、強制終了順位は「プロセスＡ」「プロセスＢ」「プロセスＣ」である。
【００８１】
図１８は、実施の形態１における情報処理装置１００のハードウェア資源の一例を示す図である。
図１８において、情報処理装置１００（コンピュータの一例）は、ＣＰＵ９０１を備えている。ＣＰＵ９０１は、バス９０２を介してＲＯＭ９０３、ＲＡＭ９０４、通信ボード９０５（通信装置）、ディスプレイ９１１（表示装置）、キーボード９１２、マウス９１３、ドライブ９１４、磁気ディスク装置９２０などのハードウェアデバイスと接続され、これらのハードウェアデバイスを制御する。ドライブ９１４は、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）などの記憶媒体を読み書きする装置である。
ＲＯＭ９０３、ＲＡＭ９０４、磁気ディスク装置９２０およびドライブ９１４は記憶装置の一例である。キーボード９１２、マウス９１３および通信ボード９０５は入力装置の一例である。ディスプレイ９１１および通信ボード９０５は出力装置の一例である。
【００８２】
通信ボード９０５は、有線または無線で、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネット、電話回線などの通信網に接続している。
【００８３】
磁気ディスク装置９２０には、ＯＳ９２１（オペレーティングシステム）、プログラム群９２２、ファイル群９２３が記憶されている。
【００８４】
プログラム群９２２には、実施の形態において「〜部」として説明する機能を実行するプログラムが含まれる。プログラム（例えば、プロセス管理プログラム）は、ＣＰＵ９０１により読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。
【００８５】
ファイル群９２３には、実施の形態において説明する「〜部」で使用される各種データ（入力、出力、判定結果、計算結果、処理結果など）が含まれる。
【００８６】
実施の形態において構成図およびフローチャートに含まれている矢印は主としてデータや信号の入出力を示す。
フローチャートなどに基づいて説明する実施の形態の処理はＣＰＵ９０１、記憶装置、入力装置、出力装置などのハードウェアを用いて実行される。
【００８７】
実施の形態において「〜部」として説明するものは「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ファームウェア、ソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。
【００８８】
実施の形態１において、例えば、情報処理装置１００は以下のような効果を奏することができる。
情報処理装置１００は、プロセスからの設定値変更要求に従って強制終了設定値を変更する。これにより、重要な処理を行うプロセスは、強制終了順位を下げて、強制終了を一時的に回避することができる。
情報処理装置１００は、変更通知を要求するプロセスを予め登録する。そして、情報処理装置１００は、変更通知を要求するプロセスの強制終了設定値を変更した後に、強制終了設定値を変更したことをプロセスに通知する。これにより、変更通知を要求するプロセスは、強制終了設定値が変更された後に、重要な処理または要求した強制終了設定値に応じた処理（例えば、変更後の強制終了設定値を表示する処理）を行うことができる。また、変更通知を要求しないプロセスへの変更通知を防ぐことができる。
情報処理装置１００は、プロセスからの設定値初期化要求に従って強制終了設定値を初期化する。これにより、重要な処理を終えたプロセスは、強制終了設定値を元に戻すことができる。
情報処理装置１００は、強制終了設定値を変更してから変更上限時間が経過したときに強制終了設定値を初期値に戻す。これにより、プロセスが不必要に強制終了設定値を変更し続けてしまうことを回避できる。
情報処理装置１００は、強制終了設定値を変更してから変更上限時間が経過するまでの間、新たな設定値変更要求に従って強制終了設定値を変更するが、変更上限時間と比較する変更時間を初期化しない。つまり、情報処理装置１００は、強制終了設定値を新たに変更しても変更上限時間が経過するまで変更時間の計測を継続する。これにより、プロセスが定期的に設定値変更要求を行って強制終了設定値を変更し続けてしまうことを回避できる。
情報処理装置１００は、強制終了設定値を初期値に戻してから変更禁止時間が経過するまでの間、強制終了設定値を変更しない。これにより、プロセスが不必要に強制終了設定値を連続して変更させてしまうことを回避できる。
【００８９】
実施の形態１において、情報処理装置１００は、車載機器またはスマートフォンであっても構わない。
【００９０】
図１９は、実施の形態１における設定値パラメータテーブル１９４の別例を示す図である。図１９に示す設定値パラメータテーブル１９４は、条件パラメータテーブル１９４Ｃと動的パラメータテーブル１９４Ｄとを含む。
情報処理装置１００は、プロセスをグループ分けし、プロセスのグループ毎に変更上限時間、変更禁止時間または変更通知要否フラグを記憶してもよい（図１９の１９４Ｃ参照）。
例えば、情報処理装置１００が車載機器である場合、複数のプロセスは、経路案内を行うアプリケーションを実行するための「経路案内」グループまたは娯楽情報（例えば、音楽）を提供するアプリケーションを実行するための「娯楽」グループなどにグループ分けすることができる。
【００９１】
図２０は、実施の形態１における設定値パラメータテーブル１９４の別例を示す図である。図２０に示す設定値パラメータテーブル１９４は、「走行中」状態用の条件パラメータテーブル１９４Ｃ−１と、「停車中」状態用の条件パラメータテーブル１９４Ｃ−２と、動的パラメータテーブル１９４Ｄとを含む。
情報処理装置１００は、情報処理装置１００が使用されている使用状態とプロセス毎の変更上限時間、変更禁止時間または変更通知要否フラグとを対応付けて記憶してもよい（図２０の１９４Ｃ−１および１９４Ｃ−２参照）。
情報処理装置１００は、情報処理装置１００の使用状態を取得し、取得した使用状態に対応付けられた変更上限時間、変更禁止時間または変更通知要否フラグを使用する。
例えば、車載機器として機能する情報処理装置１００が搭載された車両が走行中の状態である場合、情報処理装置１００は走行中の状態用の条件パラメータテーブル１９４Ｃ−１に対応付けられた変更上限時間、変更禁止時間または変更通知要否フラグを使用する。例えば、経路案内を行うアプリケーション用のプロセスＡの変更上限時間は娯楽情報を提供するアプリケーション用のプロセスＢ・Ｃの変更上限時間より長い。
【００９２】
図２１は、実施の形態１における設定値パラメータテーブル１９４の別例を示す図である。図２１に示す設定値パラメータテーブル１９４は、重要度「Ａ」用の条件パラメータテーブル１９４Ｃ−１と、重要度「Ｂ」用の条件パラメータテーブル１９４Ｃ−２と、動的パラメータテーブル１９４Ｄとを含む。
情報処理装置１００は、アプリケーションプログラムの重要度を表すプログラム重要度と変更上限時間、変更禁止時間または変更通知要否フラグとを対応付けて記憶してもよい（図２１の１９４Ｃ−１および１９４Ｃ−２参照）。
情報処理装置１００は、プロセスによって実行されるアプリケーションプログラムに予め設定されるプログラム重要度を取得し、取得したプログラム重要度に対応付けられた変更上限時間、変更禁止時間または変更通知要否フラグを使用する。
例えば、スマートフォンを使用する使用者は、スマートフォンにアプリケーションプログラムをインストールするときにプログラム重要度「Ａ」を設定する。そして、スマートフォンとして機能する情報処理装置１００は、プロセスからアプリケーションプログラムに設定されたプログラム重要度「Ａ」を取得し、取得したプログラム重要度「Ａ」用の条件パラメータテーブル１９４Ｃ−１に対応付けられた変更上限時間、変更禁止時間または変更通知要否フラグを使用する。
【００９３】
実施の形態１において、例えば、以下のようなプロセス管理装置（１００）について説明した。括弧内に対応する構成の符号または名称を記す。
前記プロセス管理装置は、強制終了設定値記憶部（１９３）と、変更維持時間記憶部（１９４）と、変更要求受付部（２１０）と、設定値変更部（２２０）と、変更時間計測部（２３０）と、変更時間判定部（２３０）とを備える。
前記強制終了設定値記憶部は、複数のプロセスのプロセス毎に、プロセスを識別するためのプロセス識別子と、前記複数のプロセスを強制終了させる順番を決定するための強制終了設定値と、を記憶する。
前記変更維持時間記憶部は、前記複数のプロセスのプロセス毎に、プロセス識別子と、強制終了設定値が変更された場合に強制終了設定値が変更された状態を維持する時間の長さを示す変更維持時間（変更上限時間）と、を記憶する。
前記変更要求受付部は、前記複数のプロセスに含まれるプロセスである要求プロセスから、前記要求プロセスの強制終了設定値を要求設定値に変更するための変更要求を受け取る。
前記設定値変更部は、前記変更要求受付部によって受け取られた前記変更要求に基づいて、前記強制終了設定値記憶部に記憶された強制終了設定値のうち、前記要求プロセスのプロセス識別子に対応付けられた強制終了設定値を、前記要求設定値に変更する。
前記変更時間計測部は、前記設定値変更部によって前記強制終了設定値が前記要求設定値に変更された後に経過した時間を変更時間として計測する。
前記変更時間判定部は、前記変更時間計測部によって計測された前記変更時間が、前記変更維持時間記憶部に記憶された変更維持時間のうち前記要求プロセスの前記プロセス識別子に対応付けられた変更維持時間を超えたか否かを判定する。
前記設定値変更部は、前記変更時間判定部によって前記変更時間が前記変更維持時間を超えたと判定されたときに、前記要求プロセスの前記強制終了設定値を、前記強制終了設定値の初期値である初期設定値に戻す。
【００９４】
前記プロセス管理装置は、変更禁止時間記憶部（１９４）と、インターバル時間計測部（２４０）と、インターバル時間判定部（２４０）とを備える。
前記変更禁止時間記憶部は、前記複数のプロセスのプロセス毎に、プロセス識別子と、強制終了設定値が初期設定値に戻された後に強制終了設定値の変更を禁止する時間の長さを示す変更禁止時間と、を記憶する。
前記インターバル時間計測部は、前記設定値変更部によって前記要求プロセスの前記強制終了設定値が前記初期設定値に戻された後に経過した時間をインターバル時間として計測する。
前記インターバル時間判定部は、前記インターバル時間計測部によって計測された前記インターバル時間が、前記変更禁止時間記憶部に記憶された変更禁止時間のうち前記要求プロセスの前記プロセス識別子に対応付けられた変更禁止時間を超えたか否かを判定する。
前記変更要求受付部は、前記要求プロセスから新たな変更要求を受け取る。
前記設定値変更部は、前記インターバル時間判定部によって前記インターバル時間が前記変更禁止時間を超えたと判定された後に前記変更要求受付部によって前記新たな変更要求が受け取られた場合、前記新たな変更要求に基づいて前記要求プロセスの前記強制終了設定値を変更する。
【００９５】
前記プロセス管理装置は、前記設定値変更部によって前記要求プロセスの前記強制終了設定値が変更された場合、前記強制終了設定値が変更されたことを通知するための変更通知を前記要求プロセスに送る変更通知部（２６０）を備える。
【００９６】
前記プロセス管理装置は、前記複数のプロセスのプロセス毎に、プロセス識別子と、変更通知の要否を示す変更通知要否フラグ値と、を記憶する変更通知要否記憶部（１９４）を備える。
前記変更通知部は、前記設定値変更部によって前記要求プロセスの前記強制終了設定値が変更された場合、前記変更通知要否記憶部に記憶された変更通知要否フラグ値のうち前記要求プロセスのプロセス識別子に対応付けられた変更通知要否フラグ値に基づいて、前記変更通知の要否を判定する。
前記変更通知部は、前記変更通知が必要であると判定した場合に前記変更通知を前記要求プロセスに送る。
【００９７】
実施の形態２．
強制終了設定値に上限を設ける形態について説明する。
以下、実施の形態１と異なる事項について主に説明する。説明を省略する事項については実施の形態１と同様である。
【００９８】
情報処理装置１００の構成は実施の形態１（図１参照）と同様である。
また、強制終了設定値管理部２００の構成は実施の形態１（図７参照）と同様である。
【００９９】
図２２は、実施の形態２における設定値パラメータテーブル１９４の一例を示す図である。
実施の形態１における設定値パラメータテーブル１９４の一例について、図２２に基づいて説明する。
【０１００】
設定値パラメータテーブル１９４（設定上限値記憶部の一例）は、実施の形態１（図６参照）で説明した項目の他に、「設定上限値」を含む。
「設定上限値」は、強制終了設定値の上限の値を示す。
【０１０１】
図２３は、実施の形態２における強制終了設定値管理処理の一部を示すフローチャートである。
実施の形態２における強制終了設定値管理処理について、図２３に基づいて説明する。
【０１０２】
強制終了設定値管理部２００は、実施の形態１（図８から図１０参照）で説明した処理に加えて、Ｓ１２４を実行する。
【０１０３】
Ｓ１２４において、強制終了設定値管理部２００の設定値変更部２２０は、設定値変更要求に含まれる要求設定値と、要求プロセスの設定上限値とを比較する。
つまり、設定値変更部２２０は、設定値パラメータテーブル１９４（図２２参照）に含まれる設定上限値のうち要求プロセスのプロセス識別子に対応付けられた設定上限値と、要求設定値とを比較する。
要求設定値が要求プロセスの要求上限値より大きい場合、設定値変更部２２０は要求プロセスの強制終了設定値を変更せず、強制終了設定値管理処理は終了する。
要求設定値が要求プロセスの要求上限値以下である場合、処理はＳ１２１に進み、Ｓ１２１において設定値変更部２２０は要求プロセスの強制終了設定値を要求設定値に変更する。
他の処理は、実施の形態１と同様である。
【０１０４】
実施の形態２により、情報処理装置１００は、プロセスの強制終了設定値を必要以上に高い要求設定値に変更することを防ぐことができる。
【０１０５】
情報処理装置１００は、実施の形態１の図１９から図２１で説明した変更上限時間、変更禁止時間または変更通知要否フラグと同様に、プロセスのグループ毎、情報処理装置１００の使用状態毎またはプログラム重要度毎に、設定上限値を記憶してもよい。
【０１０６】
実施の形態２において、例えば、以下のようなプロセス管理装置（１００）について説明した。括弧内に対応する構成の符号または名称を記す。
前記プロセス管理装置は、前記複数のプロセスのプロセス毎に、プロセス識別子と、強制終了設定値の上限値である設定上限値と、を記憶する設定上限値記憶部（１９４）を備える。
前記設定値変更部（２２０）は、前記設定上限値記憶部に記憶された設定上限値のうち前記要求プロセスのプロセス識別子に対応付けられた設定上限値と前記要求設定値とを比較する。
前記設定値変更部は、前記要求設定値が前記要求プロセスの前記設定上限値以下であることを条件として、前記要求プロセスの前記強制終了設定値を前記要求設定値に変更する。
【０１０７】
実施の形態３．
プロセスを強制終了させる前にプロセスに強制終了を警告する形態について説明する。
以下、実施の形態１と異なる事項について主に説明する。説明を省略する事項については実施の形態１と同様である。
【０１０８】
図２４は、実施の形態３における情報処理装置１００の機能構成図である。
実施の形態３における情報処理装置１００の機能構成について、図２４に基づいて説明する。
【０１０９】
情報処理装置１００、実施の形態１（図１参照）で説明した構成に加えて、強制終了警告部３００を備える。
【０１１０】
強制終了警告部３００は、プロセス強制終了部１３０がプロセスを強制終了させる前に、プロセス強制終了部１３０がプロセスの強制終了を開始した場合に強制終了されるプロセスに、強制終了されることを通知する。
【０１１１】
装置記憶部１９０は終了警告テーブル１９５を記憶する。
【０１１２】
図２５は、実施の形態３における終了警告テーブル１９５の一例を示す図である。
実施の形態３における終了警告テーブル１９５の一例について、図２５に基づいて説明する。
【０１１３】
終了警告テーブル１９５（警告通知要否記憶部の一例）は、強制終了の警告を通知する条件に関するデータである。
【０１１４】
例えば、終了警告テーブル１９５は、「警告発生値」「警告時間」「警告計測時間」「警告通知要否フラグ」を対応付ける。
「警告発生値」は、強制終了の警告を通知するときのメモリ使用量を示す。
「警告時間」は、強制終了の警告を通知する時間間隔を示す。
「警告計測時間」は、前回の警告通知の後に経過した時間（警告計測時間）を示す。
「警告通知要否フラグ」は、プロセス毎に、プロセス識別子と、強制終了を警告する必要があるか否かを示すフラグ値とを示す。
【０１１５】
終了警告テーブル１９５に設定される警告発生値は、強制終了テーブル１９１に設定される強制終了開始値より小さい。
これにより、プロセスの強制終了が開始される前に強制終了の警告が通知される。
【０１１６】
図２６は、実施の形態３における強制終了警告部３００の構成図である。
実施の形態３における強制終了警告部３００の構成について、図２６に基づいて説明する。
【０１１７】
強制終了警告部３００は、警告対象特定部３１０（警告発生値判定部の一例）と、警告通知登録部３２０と、警告通知部３３０と、警告時間計測部３４０とを備える。
【０１１８】
警告対象特定部３１０は、プロセスが強制終了される前に、プロセスの強制終了が開始された場合に強制終了されるプロセスを特定する。
【０１１９】
警告通知登録部３２０は、終了警告テーブル１９５に設定されている警告通知要否フラグを警告通知登録要求に応じて設定する。
警告通知登録要求は、強制終了されることを通知するための警告通知を要求するプロセスから送られる。
【０１２０】
警告通知部３３０は、終了警告テーブル１９５に設定されている警告通知要否フラグのうち警告対象特定部３１０によって特定されたプロセスの警告通知要否フラグを参照し、プロセスへの警告通知を行うか否かを判定する。
プロセスへの警告通知を行うと判定した場合、警告通知部３３０は、強制終了されることをプロセスに通知する。
【０１２１】
警告時間計測部３４０は、前回の警告通知の後に経過した時間（警告時間）を計測する。
【０１２２】
図２７は、実施の形態３における強制終了警告処理を示すフローチャートである。
実施の形態３における強制終了警告処理について、図２７に基づいて説明する。
【０１２３】
Ｓ３１０において、警告時間計測部３４０は、警告計測時間を初期化する。
つまり、警告時間計測部３４０は、終了警告テーブル１９５（図２５参照）に設定されている警告計測時間を「０秒」にする。
Ｓ３１０の後、処理はＳ３１１に進む。
【０１２４】
Ｓ３１１において、警告時間計測部３４０は、単位経過時間（例えば、１秒）の経過を待ち、単位経過時間が経過したときに警告計測時間に単位経過時間を加算する。
Ｓ３１１の後、処理はＳ３１２に進む。
【０１２５】
Ｓ３１２において、警告時間計測部３４０は、終了警告テーブル１９５（図２５参照）を参照し、警告計測時間が警告時間以上であるか否かを判定する。
警告計測時間が警告時間以上である場合（ＹＥＳ）、警告時間計測部３４０は警告対象特定部３１０を呼び出し、処理はＳ３２０に進む。
警告計測時間が警告時間未満である場合（ＮＯ）、処理はＳ３１１に戻る。
【０１２６】
Ｓ３２０において、警告対象特定部３１０は、警告対象のプロセスを特定する。
警告対象特定処理（Ｓ４００）の詳細については別途説明する。
Ｓ３２０の後、警告対象特定部３１０は警告通知部３３０を呼び出し、処理はＳ３３０に進む。
【０１２７】
Ｓ３３０において、警告通知部３３０は、警告対象特定部３１０によって特定された警告対象のプロセスのうち、未選択のプロセスが有るか否かを判定する。
未選択のプロセスが有る場合、処理はＳ３３１に進む。
未選択のプロセスが無い場合、強制終了警告処理は終了する。
【０１２８】
Ｓ３３１において、警告通知部３３０は、警告対象特定部３１０によって特定された警告対象のプロセスのうち、未選択のプロセスを１つ選択する。
Ｓ３３１の後、処理はＳ３３２に進む。
【０１２９】
Ｓ３３２において、警告通知部３３０は、選択したプロセスに強制終了の警告を通知するか否かを判定する。
つまり、警告通知部３３０は、終了警告テーブル１９５（図２５参照）に設定されている警告通知要否フラグのうち、選択したプロセスのプロセス識別子に対応付けられた警告通知要否フラグを参照する。
そして、警告通知部３３０は、参照した警告通知要否フラグの値が「要」「不要」のいずれであるかを判定する。
警告通知要否フラグの値が「要」である場合、処理はＳ３３３に進む。
警告通知要否フラグの値が「不要」である場合、処理はＳ３３０に戻る。
【０１３０】
Ｓ３３３において、警告通知部３３０は、選択したプロセスに強制終了を警告するための警告通知を送る。
例えば、情報処理装置１００は警告通知を送るためのコールバック関数を予め登録し、警告通知部３３０はコールバック関数を実行することによって警告通知を送る。
Ｓ３３３の後、処理はＳ３３０に戻る。
【０１３１】
図２８は、実施の形態３における警告対象特定処理（Ｓ３２０）を示すフローチャートである。
実施の形態３における警告対象特定処理（Ｓ３２０）について、図２８に基づいて説明する。
【０１３２】
Ｓ３２１において、警告対象特定部３１０は、強制終了テーブル１９１から情報処理装置１００のメモリ使用量（システム特性値の一例）と強制終了停止値とを取得する。
また、警告対象特定部３１０は、終了警告テーブル１９５から警告発生値を取得する。
Ｓ３２１の後、処理はＳ３２２に進む。
【０１３３】
Ｓ３２２において、警告対象特定部３１０は、情報処理装置１００のメモリ使用量と警告発生値とを比較する。
情報処理装置１００のメモリ使用量が警告発生値以上である場合（ＹＥＳ）、処理はＳ３２３に進む。
情報処理装置１００のメモリ使用量が警告発生値未満である場合（ＮＯ）、警告対象特定処理（Ｓ３２０）は終了する。
【０１３４】
Ｓ３２３において、警告対象特定部３１０は、プロセス強制終了部１３０と同様に、プロセスの強制終了順位を決定する。
つまり、警告対象特定部３１０は、プロセス毎のメモリ使用量（プロセス特性値の一例）を設定値パラメータテーブル１９４から取得し、プロセス毎の強制終了設定値を強制終了設定値テーブル１９３から取得する。
次に、警告対象特定部３１０は、プロセス毎にメモリ使用量および強制終了設定値を用いて強制終了順位式を計算することにより、プロセス毎に強制終了順位値を算出する。
そして、警告対象特定部３１０は、プロセス毎の強制終了順位値に基づいてプロセスの強制終了順位を決定する。
Ｓ３２３の後、処理はＳ３２４に進む。
【０１３５】
Ｓ３２４において、警告対象特定部３１０は、プロセスの強制終了順位の順番に１つのプロセスを警告対象のプロセスとして選択する。
Ｓ３２４の後、処理はＳ３２５に進む。
【０１３６】
Ｓ３２５において、警告対象特定部３１０は、警告対象のプロセスとして選択した各プロセスが強制終了した場合の情報処理装置１００のメモリ使用量（システム特性値の一例）の予測値を算出する。
例えば、警告対象特定部３１０は、警告対象のプロセスとして選択した各プロセスのメモリ使用量の合計値を情報処理装置１００のメモリ使用量から減算した値を情報処理装置１００のメモリ使用量の予測値として算出する。
Ｓ３２５の後、処理はＳ３２６に進む。
【０１３７】
Ｓ３２６において、警告対象特定部３１０は、情報処理装置１００のメモリ使用量の予測値と強制終了停止値とを比較する。
情報処理装置１００のメモリ使用量の予測値が強制終了停止値より大きい場合（ＹＥＳ）、処理はＳ３２４に戻る。
情報処理装置１００のメモリ使用量の予測値が強制終了停止値以下である場合（ＮＯ）、警告対象特定処理（Ｓ３２０）は終了する。
【０１３８】
実施の形態３により、情報処理装置１００は、強制終了される可能性があるプロセスに強制終了を警告することができる。
強制終了を警告されたプロセスは、設定値変更要求で強制終了設定値を変更する、または、メモリ使用量（プロセス特性値の一例）を減らすことによって強制終了順位値を下げて、強制終了を避けることができる。また、強制終了を警告されたプロセスがメモリ使用量を減らすことにより、情報処理装置１００のメモリ不足を解消することができる。
【０１３９】
実施の形態３において、例えば、以下のようなプロセス管理装置（１００）について説明した。括弧内に対応する符号または名称を記す。
前記プロセス管理装置は、警告発生値判定部（３１０）と、警告対象特定部（３１０）と、警告通知部（３３０）とを備える。
前記警告発生値判定部は、コンピュータリソースの使用量を表すシステム特性値がプロセスの強制終了が開始される強制終了開始値より小さい警告発生値以上であるか否かを判定する。
前記警告対象特定部は、前記警告発生値判定部によって前記システム特性値が前記警告発生値以上であると判定された場合、前記強制終了設定値記憶部（１９３）に記憶された前記複数のプロセスのそれぞれの強制終了設定値に基づいて、前記複数のプロセスのうち前記システム特性値が前記強制終了開始値以上になった場合に強制終了されるプロセスを警告対象プロセスとして特定する。
前記警告通知部は、前記警告対象特定部によって特定された前記警告対象プロセスに、前記システム特性値が前記強制終了開始値以上になった場合に強制終了されることを通知するための警告通知を送る。
【０１４０】
前記プロセス管理装置は、前記複数のプロセスのプロセス毎に、プロセス識別子と、前記警告通知の要否を示す警告通知要否フラグ値と、を記憶する警告通知要否記憶部（１９５）を備える。
前記警告通知部は、前記警告通知要否記憶部に記憶された警告通知要否フラグ値のうち前記警告対象プロセスのプロセス識別子に対応付けられた警告通知要否フラグ値に基づいて、前記警告通知の要否を判定する。
前記警告通知部は、前記警告通知が必要であると判定した場合に前記警告通知を前記警告対象プロセスに送る。
【０１４１】
各実施の形態は、矛盾が生じない範囲で全体または一部を組み合わせても構わない。
【符号の説明】
【０１４２】
１００  情報処理装置、１０１  プロセスデータ、１１０  プロセス実行部、１２０  システム特性値取得部、１３０  プロセス強制終了部、１９０  装置記憶部、１９１  強制終了テーブル、１９２  プロセス特性値テーブル、１９３  強制終了設定値テーブル、１９４  設定値パラメータテーブル、１９４Ｃ  条件パラメータテーブル、１９４Ｄ  動的パラメータテーブル、１９５  終了警告テーブル、２００  強制終了設定値管理部、２１０  プロセス要求受付部、２２０  設定値変更部、２３０  変更時間計測部、２４０  インターバル時間計測部、２５０  変更通知登録部、２６０  変更通知部、３００  強制終了警告部、３１０  警告対象特定部、３２０  警告通知登録部、３３０  警告通知部、３４０  警告時間計測部、９０１  ＣＰＵ、９０２  バス、９０３  ＲＯＭ、９０４  ＲＡＭ、９０５  通信ボード、９１１  ディスプレイ、９１２  キーボード、９１３  マウス、９１４  ドライブ、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  プログラム群、９２３  ファイル群。
【図１】
2014160295.tif 000003
【図２】
2014160295.tif 000004
【図３】
2014160295.tif 000005
【図４】
2014160295.tif 000006
【図５】
2014160295.tif 000007
【図６】
2014160295.tif 000008
【図７】
2014160295.tif 000009
【図８】
2014160295.tif 000010
【図９】
2014160295.tif 000011
【図１０】
2014160295.tif 000012
【図１１】
2014160295.tif 000013
【図１２】
2014160295.tif 000014
【図１３】
2014160295.tif 000015
【図１４】
2014160295.tif 000016
【図１５】
2014160295.tif 000017
【図１６】
2014160295.tif 000018
【図１７】
2014160295.tif 000019
【図１８】
2014160295.tif 000020
【図１９】
2014160295.tif 000021
【図２０】
2014160295.tif 000022
【図２１】
2014160295.tif 000023
【図２２】
2014160295.tif 000024
【図２３】
2014160295.tif 000025
【図２４】
2014160295.tif 000026
【図２５】
2014160295.tif 000027
【図２６】
2014160295.tif 000028
【図２７】
2014160295.tif 000029
【図２８】
2014160295.tif 000030