(57)【要約】【課題】  ページ単位で管理しているメモリに対するページごとの初期化処理は、システム全体に占めるページの初期化処理のオーバヘッドが大きいという課題があった。【解決手段】  メモリのページごとに安全かどうかを判定する仕組みを持ち、安全でないページをアプリケーションに割り当てる場合のみ、初期化処理を行うので安全でないデータの保護を行うことができるとともに、ページの初期化オーバヘッドの減少させることが可能である。【選択図】  図１
2006048436.tif 000002
【特許請求の範囲】
【請求項１】
ページで管理されるメモリと、
システム内の未使用ページの識別子の一覧を管理し、アプリケーションからの前記ページの獲得要求時に未使用ページの識別子を取得する未使用ページ管理部と、
システム内のページごとの安全性の情報を保持しているページ安全性保持部と、
前記ページ安全性保持部に問い合わせ、前記取得した未使用ページが安全なページであるか否かを判定するページ安全性判定部と、
前記ページ安全性判定部において、前記取得した未使用ページが安全でないと判定した場合には、前記取得した未使用ページに対して初期化処理を行うことを特徴とするページ初期化処理部
を備え、アプリケーションに対してページ割り当てを行うページ割り当てシステム。
【請求項２】
ページで管理されるメモリと、
システム内の未使用ページの識別子の一覧を管理し、アプリケーションからの前記ページの解放要求時に解放するページの識別子を未使用ページの識別子として管理する未使用ページ管理部と、
システム内のページごとの安全性の情報を保持しているページ安全性保持部と、
前記解放する未使用ページの安全性を前記ページ安全性保持部に反映するページ区分設定部
を備えるページ割り当てシステム。
【請求項３】
ページで管理されるメモリと、
システム内の未使用ページの識別子の一覧を管理し、アプリケーションからの前記ページの獲得要求時に、未使用ページの識別子を取得し、
また、
アプリケーションからのページ解放要求時に、解放するページの識別子を未使用ページの識別子として管理する
未使用ページ管理部と、
システム内のページごとの安全性の情報を保持しているページ安全性保持部と、
ページ取得時に、
前記ページ安全性保持部に問い合わせ、前記取得する未使用ページが安全であるか否かを判定するページ安全性判定部と、
ページ取得時に、
前記ページ安全性判定部により、前記取得した未使用ページが安全でないと判定された場合には、前記取得した未使用ページに対して初期化処理を行うことを特徴としたページ初期化処理部と、
前記ページ解放時に、
前記解放する未使用ページの安全性を前記ページ安全性保持部に反映するページ区分設定部
を備え、アプリケーションに対してページの割り当て、および、解放を行うページ割り当てシステム。
【請求項４】
ページで管理されるメモリと、
システム内の未使用ページの識別子の一覧を管理し、アプリケーションからの前記ページの獲得要求時に、未使用ページの識別子を取得し、
また、
アプリケーションからのページ解放要求時に、解放するページの識別子を未使用ページの識別子として管理する
未使用ページ管理部と、
システム内のページごとの安全性の情報を保持しているページ安全性保持部と、
ページ取得時に、
前記ページ安全性保持部に問い合わせ、前記取得する未使用ページが安全であるか否かを判定するページ安全性判定部と、
前記ページ安全性判定部により、前記取得した未使用ページが安全でないと判定された場合には、前記取得した未使用ページに対して初期化処理を行うことを特徴とした前記ページ初期化処理部と、
前記ページ安全性判定部での未使用ページの安全性の判定後に、
前記取得する未使用ページの安全性を前記ページ安全性保持部に反映するページ区分設定部
を備え、アプリケーションに対してページの割り当て、および、解放を行うページ割り当てシステム。
【請求項５】
前記ページ解放時に、
ページを解放する予定であるアプリケーションの属性により安全であるか否かを判定し、その結果を前記ページ区分設定部に通知する入力データ判定部
を備えるアプリケーションに対してページ割り当て、および、解放を行う請求項３記載のページ割り当てシステム。
【請求項６】
前記ページ取得時に、
ページに割り当てられる予定であるアプリケーションの属性により安全であるか否かを判定し、その結果を前記ページ区分設定部に通知する入力データ判定部
を備えるアプリケーションに対してページの割り当て、および、解放を行う請求項４記載のページ割り当てシステム。
【請求項７】
ページで管理されるメモリと、
システム内の未使用ページの識別子の一覧を管理し、アプリケーションからの前記ページの獲得要求時に、未使用ページの識別子を取得し、
また、
アプリケーションからのページ解放要求時に、解放するページの識別子を未使用ページの識別子として管理する
未使用ページ管理部と、
システム内のページごとの安全性の情報を保持しているページ安全性保持部と、
ページ取得時に、
前記ページ安全性保持部に問い合わせ、前記取得する未使用ページが安全であるか否かを判定するページ安全性判定部と、
前記ページ安全性判定部により、前記取得した未使用ページが安全でないと判定された場合には、前記取得した未使用ページに対して初期化処理を行うことを特徴としたページ初期化処理部と、
アプリケーションからの指示で書き込みを行うページの安全性を前記ページ安全性保持部に反映するページ区分設定部
を備え、アプリケーションに対してページの割り当て、および、解放を行うページ割り当てシステム。
【請求項８】
システムの低負荷時に、
前記ページ安全性判定部において未使用ページが安全でないと判断された場合には初期化処理を行う前記ページ初期化処理部
を備える請求項３、請求項４、および、請求項７記載のページ割り当てシステム。
【請求項９】
ページで管理されるメモリと、
システム内の未使用ページの識別子の一覧を管理し、アプリケーションからの前記ページ解放要求時に解放するページを未使用ページとする未使用ページ管理部と、
システム内のページごとの安全性の情報を保持している前記ページ安全性保持部と、
前記ページ安全性保持部に問い合わせ、前記解放する未使用ページが安全であるか否かを判定するページ安全性判定部と、
前記ページ安全性判定部より前記解放する未使用ページが安全でないと判定された場合には、未使用ページに対して初期化処理を行うページ初期化処理部
を備えたページ割り当てシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機システムにおいて用いられるページ割り当てシステムに関する発明である。
【背景技術】
【０００２】
従来、ページ単位で管理されるメモリを保持する計算機システムでは、アプリケーションの実行のために必要なページが取得され、アプリケーションの実行の終了に伴い必要でなくなったページは解放される。アプリケーションの実行の終了に伴い解放されたページにユーザ情報などのデータが残っており、悪意あるアプリケーションが実行されたときに、ページに残されているユーザ情報を取得してしまい、重要な情報が流出してしまうという問題があった。そこで、重要情報の流出を防ぐために、システム内の全てのページの初期化処理を行うという技術がある。しかし、ページを初期化する処理時間は、ページ割り当て処理時間の中で大きな割合を占めており、プログラムの応答性能を低下させる要因の一つとなっていた。このことに、着目し、ページの初期化処理をシステムの負荷が低いときにまとめて行っておくという発明があった（特許文献１参照）。
【特許文献１】特開平１１−３２７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ページ単位で管理しているメモリのページの割り当て時に必ずページ内容の初期化処理を行うため、ページ割り当てのオーバヘッドが大きいという課題があった。
【課題を解決するための手段】
【０００４】
この課題を解決するために本発明は、ページで管理されるメモリについて、アプリケーションからのページ取得要求時、アプリケーションからのページ解放要求時、もしくは、ページを確保しているアプリケーションからのページに対するデータ設定時に、データの流出を防ぐ必要がある安全でないページを検出し、検出した安全でないページのみに対して初期化処理を行う手段を有するページ割り当てシステムを提供する。
【発明の効果】
【０００５】
本発明によれば、データの流出を防がなければならない安全でないページに対してのみページの初期化処理を行い、その他の安全なページの初期化を行う必要がないので、システム全体に占める初期化処理にかかるオーバヘッドを削減することが可能である。
【発明を実施するための最良の形態】
【０００６】
（実施の形態１）
以下、本発明の実施の形態を図１を用いて説明する。図１は、本発明の実施の形態によるページ獲得、解放時のページ割り当ての構成を示した図である。
【０００７】
まず、アプリケーションからのページ獲得要求発生時の処理について説明する。アプリケーションからのページ獲得要求発生時には、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００より未使用ページを取得する。未使用ページ管理部１００より取得した未使用ページに含まれている内容が安全であるか否かを、システム内のページごとの安全性を保持しているページ安全性保持部１０４にアクセスし、未使用ページ管理部１００より取得した未使用ページが、ページ安全性保持部１０４において安全なページとして保持されているか、それとも、安全でないページとして保持されているかを判定することにより取得した未使用ページの安全性をページ安全性判定部１０１において判定する。ページ安全性判定部１０１において、未使用ページ管理部１００より取得した未使用ページがユーザ情報などのデータの流出を防止しなければならない安全でないページであると判定されたならば、ページ初期化処理部１０２において、安全でないページの初期化処理を行う。そして、アプリケーションに対してページの割り当てを実施する。
【０００８】
次に、アプリケーションからのページ解放要求発生時の処理について説明する。アプリケーションからのページ解放要求発生時には、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００に対して解放するページを未使用ページとしてそのページの識別子を格納する。そして、ページ区分設定部１０５において、アプリケーションから指定された解放するページの安全性をページ安全性保持部１０４に反映する。アプリケーションから安全性を指定するページ解放の例としては、メモリ解放の関数に対して、安全である、もしくは、安全でないという識別子を付加することなどがあげられる。そして、アプリケーションに対してページの解放を実施する。
【０００９】
なお、ページ安全性保持部１０４での未使用ページの安全性を判定する方法としては、以下の方法が挙げられる。
【００１０】
ページ安全性保持部１０４には、安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページ、もしくは、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全でないページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページ、もしくは、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全性保持部１０４に含まれていないならば、取得した未使用ページは安全なページであると判定できる。
【００１１】
もしくは、ページ安全性保持部１０４には、安全なページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページ、もしくは、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全なページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページ、もしくは、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全保持部１０４に含まれていないならば、取得した未使用ページは安全でないページであると判定できる。
【００１２】
もしくは、ページ安全性保持部１０４には、安全なページの情報と安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページ、もしくは、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全性保持部１０４において安全なページとして管理されているならば、取得した未使用ページは安全であると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページ、もしくは、未使用ページ管理部１００に対して未使用ページとして格納したページが安全でないページとして管理されているならば、取得した未使用ページは安全でないと判定できる。
【００１３】
このように、ページ解放時に解放したページの安全性を設定することを特徴とするとともに、ページ取得時には、安全でないページとして設定されているページに対してのみ初期化処理を行うことで、安全でない情報の漏洩を防ぐことが可能とするとともに、初期化処理に伴うシステムのオーバヘッドを削減することを可能とする。
【００１４】
（実施の形態２）
以下、本発明の実施の形態を図１を用いて説明する。図１は、本発明の実施の形態によるページ獲得、解放時のページ割り当ての構成を示した図である。
【００１５】
まず、アプリケーションからのページ獲得要求発生時の処理について説明する。アプリケーションからのページ獲得要求発生時には、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００より未使用ページを取得する。未使用ページ管理部１００より取得した未使用ページに含まれている内容が安全であるか否かを、システム内のページごとの安全性を保持しているページ安全性保持部１０４にアクセスし、未使用ページ管理部１００より取得した未使用ページが、ページ安全性保持部１０４において安全なページとして保持されているか、それとも、安全でないページとして保持されているかを判定することにより取得した未使用ページの安全性をページ安全性判定部１０１において判定する。ページ安全性判定部１０１において、未使用ページ管理部１００より取得した未使用ページがユーザ情報などのデータの流出を防止しなければならない安全でないページであると判定されたならば、ページ初期化処理部１０２において、安全でないページの初期化処理を行う。このとき、ページ区分設定部１０５において、アプリケーションから指定された割り当てるページの安全性をページ安全性保持部１０４に反映する。アプリケーションから安全性を指定するページ割り当ての例としては、メモリ割り当て関数に対して、安全である、もしくは、安全でないという識別子を付加することなどがあげられる。その後、アプリケーションに対してページの割り当てを実施する。
【００１６】
次に、アプリケーションからのページ解放要求発生時の処理について説明する。アプリケーションからのページ解放要求発生時には、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００に対して解放するページを未使用ページとしてそのページの識別子を格納し、アプリケーションに対してページの解放を実施する。
【００１７】
なお、ページ安全性保持部１０４での未使用ページの安全性を判定する方法としては、以下の方法が挙げられる。
【００１８】
ページ安全性保持部１０４には、安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全でないページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれていないならば、取得した未使用ページは安全なページであると判定できる。
【００１９】
もしくは、ページ安全性保持部１０４には、安全なページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全なページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページがページ安全保持部１０４に含まれていないならば、取得した未使用ページは安全でないページであると判定できる。
【００２０】
もしくは、ページ安全性保持部１０４には、安全なページの情報と安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４において安全なページとして管理されているならば、取得した未使用ページは安全であると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページが安全でないページとして管理されているならば、取得した未使用ページは安全でないと判定できる。
【００２１】
このように、実施の形態１と違い、ページ取得時に取得した未使用ページの安全性を設定することを特徴とするとともに、ページ取得時に、安全でないページとして設定されているページに対してのみ初期化処理を行うことで、安全でない情報の漏洩を防ぐことが可能とするとともに、初期化処理に伴うシステムのオーバヘッドを削減することを可能とする。
【００２２】
（実施の形態３）
以下、本実施の形態を図２を用いて説明する。図２は、本発明の実施の形態によるアプリケーションのデータ特性に依存したページ獲得、解放要求時のページ割り当ての構成を示した図である。
【００２３】
まず、アプリケーションからのページ獲得要求発生時の処理について説明する。アプリケーションからのページで管理されるメモリ１０３に対するページ獲得要求発生時に、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００より未使用ページを取得する。未使用ページ管理部１００より取得した未使用ページに含まれている内容が安全であるか否かを、システム内のページごとの安全性を保持しているページ安全性保持部１０４にアクセスし、未使用ページ管理部１００より取得した未使用ページが、ページ安全性保持部１０４において安全なページとして保持されているか、それとも、安全でないページとして保持されているかを判定することにより取得した未使用ページの安全性をページ安全性判定部１０１において判定する。未使用ページ管理部１００より取得した未使用ページがページ安全性判定部１０１において安全でないと判定された場合には、そのページの初期化処理をページ初期化処理部１０２において行い、逆に、取得した未使用ページがページ安全性判定部１０１において安全であると判定された場合には、そのページの初期化処理を行う必要がない。
【００２４】
次に、アプリケーションからのページ解放要求発生時の処理について説明する。アプリケーションからのページ解放要求発生時には、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００に対して解放するページを未使用ページとしてそのページの識別子を格納する。その後、解放する予定であるアプリケーションに付加されている属性により、アプリケーションの扱うデータが安全であるか否かを入力データ安全性判定部２００において判定する。例えば、アプリケーションのデータの内容にユーザ情報などの安全でない情報が含まれているならば、そのアプリケーションの扱うデータが安全でないことを示す属性が付加されているため、そのアプリケーションは安全でないと判定できる。逆に、アプリケーションの扱うデータが安全であることを示す属性が付加されている場合には、そのアプリケーションの扱うデータは安全であると判定できる。そして、ページ取得時に入力データ安全性判定部２００において判定した結果より、ページ区分設定部１０５において、アプリケーションが解放するページの安全性をページ安全性保持部１０４に反映する。そして、アプリケーションに対してページの解放を実施する。
【００２５】
なお、ページ安全性判定部１０１での未使用ページの安全性を判定する方法としては、以下の方法が挙げられる。
【００２６】
ページ安全性保持部１０４には、安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全でないページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれていないならば、取得した未使用ページは安全なページであると判定できる。
【００２７】
もしくは、ページ安全性保持部１０４には、安全なページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全なページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページがページ安全保持部１０４に含まれていないならば、取得した未使用ページは安全でないページであると判定できる。
【００２８】
もしくは、ページ安全性保持部１０４には、安全なページの情報と安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４において安全なページとして管理されているならば、取得した未使用ページは安全であると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページが安全でないページとして管理されているならば、取得した未使用ページは安全でないと判定できる。
【００２９】
このように、ページに割り当てられる予定であるアプリケーションのデータの安全性を判定することよって、アプリケーションのデータごとに割り当てられるページの安全性が決定される。さらに、本実施例では、ページの解放時にページの区分を設定することを可能としている。また、ページ取得時に、安全でないページとして設定されているページに対してのみ初期化処理を行うことで、安全でない情報の漏洩を防ぐことが可能とするとともに、初期化処理に伴うシステムのオーバヘッドを削減することを可能とする。
【００３０】
（実施の形態４）
以下、本実施の形態を図３を用いて説明する。図３は、本発明の実施の形態によるアプリケーションのデータ特性に依存したページ獲得、解放要求時のページ割り当ての構成を示した図である。
【００３１】
まず、アプリケーションからのページ獲得要求発生時の処理について説明する。アプリケーションからのページで管理されるメモリ１０３に対するページ獲得要求発生時に、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００より未使用ページを取得する。未使用ページ管理部１００より取得した未使用ページに含まれている内容が安全であるか否かを、システム内のページごとの安全性を保持しているページ安全性保持部１０４にアクセスし、未使用ページ管理部１００より取得した未使用ページが、ページ安全性保持部１０４において安全なページとして保持されているか、それとも、安全でないページとして保持されているかを判定することにより取得した未使用ページの安全性をページ安全性判定部１０１において判定する。未使用ページ管理部１００より取得した未使用ページがページ安全性判定部１０１において安全でないと判定された場合には、そのページの初期化処理をページ初期化処理部１０２において行い、逆に、取得した未使用ページがページ安全性判定部１０１において安全であると判定された場合には、そのページの初期化処理を行う必要がない。このとき、割り当てられる予定であるアプリケーションに付加されている属性により、アプリケーションの扱うデータが安全であるか否かを入力データ安全性判定部２００において判定する。例えば、アプリケーションのデータの内容にユーザ情報などの安全でない情報が含まれているならば、そのアプリケーションの扱うデータが安全でないことを示す属性が付加されているため、そのアプリケーションの扱うデータは安全でないと判定できる。逆に、アプリケーションの扱うデータが安全であることを示す属性が付加されている場合には、そのアプリケーションの扱うデータは安全であると判定できる。そして、安全なデータが割り当てられるページは安全であり、逆に、安全でないデータが割り当てられるページは安全でない。このような、アプリケーションに付加されているアプリケーションの安全性を示す属性により決まるページの安全性をページ区分設定部１０５より、ページ安全性保持部１０４に反映する。そして、アプリケーションに対してページの割り当てを実施する。
【００３２】
次に、アプリケーションからのページ解放要求発生時の処理について説明する。アプリケーションからのページ解放要求発生時には、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００に対して解放するページを未使用ページとしてそのページの識別子を格納する。そして、アプリケーションに対してページの解放を実施する。
【００３３】
なお、ページ安全性判定部１０１での未使用ページの安全性を判定する方法としては、以下の方法が挙げられる。
【００３４】
ページ安全性保持部１０４には、安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全でないページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれていないならば、取得した未使用ページは安全なページであると判定できる。
【００３５】
もしくは、ページ安全性保持部１０４には、安全なページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全なページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページがページ安全保持部１０４に含まれていないならば、取得した未使用ページは安全でないページであると判定できる。
【００３６】
もしくは、ページ安全性保持部１０４には、安全なページの情報と安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４において安全なページとして管理されているならば、取得した未使用ページは安全であると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページが安全でないページとして管理されているならば、取得した未使用ページは安全でないと判定できる。
【００３７】
このように、ページに割り当てられる予定であるアプリケーションに付加されているアプリケーションの安全性を示す属性によって、アプリケーションごとに割り当てられるページの安全性が決定される。さらに、本実施例では、ページの取得時にページの区分を設定することを可能としている。また、ページ取得時に、安全でないページとして設定されているページに対してのみ初期化処理を行うことで、安全でない情報の漏洩を防ぐことが可能とするとともに、初期化処理に伴うシステムのオーバヘッドを削減することを可能とする。
【００３８】
（実施の形態５）
以下、本実施の形態を図４を用いて説明する。図４は、本発明の実施の形態によるアプリケーションからの書き込み要求時のページ割り当ての構成を示した図である。
【００３９】
既にページを割り当てたアプリケーションからの書き込み要求発生時には、アプリケーションから書き込みされる情報がユーザ情報などを含む安全でないデータであるか否かを入力データ安全性判定部２００において判定する。入力データ安全性判定部２００より、アプリケーションから書き込まれる情報が安全でないと判定された場合には、アプリケーションから書き込みを行うページを安全でないページとしてページ区分設定部１０５より、ページ安全性保持部１０４に反映する。例えば、安全なページに対して、アプリケーションから安全でない情報が書き込まれると入力データ判定部２００において判定された場合には、ページ区分設定部１０５において、その情報が書き込まれるページを安全でないページとしてページ安全性保持部１０４に反映する。
【００４０】
なお、ページ安全性判定部１０１での未使用ページの安全性を判定する方法としては、以下の方法が挙げられる。
【００４１】
ページ安全性保持部１０４には、安全でないページの情報を保持しており、データの設定を行う予定であるページがページ安全性保持部１０４に含まれているならば、データの設定を行う予定であるページは安全でないページであると判定でき、逆に、データの設定を行う予定であるページがページ安全性保持部１０４に含まれていないならば、データの設定を行う予定であるページは安全なページであると判定できる。
【００４２】
もしくは、ページ安全性保持部１０４には、安全なページの情報を保持しており、データの設定を行う予定であるページがページ安全性保持部１０４に含まれているならば、データの設定を行う予定であるページは安全なページであると判定でき、逆に、データの設定を行う予定であるページがページ安全保持部１０４に含まれていないならば、データの設定を行う予定であるページは安全でないページであると判定できる。
【００４３】
もしくは、ページ安全性保持部１０４には、安全なページの情報と安全でないページの情報を保持しており、データの設定を行う予定であるページがページ安全性保持部１０４において安全なページとして管理されているならば、データの設定を行う予定であるページは安全であると判定でき、逆に、データの設定を行う予定であるページが安全でないページとして管理されているならば、データの設定を行う予定であるページは安全でないと判定できる。
【００４４】
このように、アプリケーションからの書き込み要求発生時に、書き込まれる情報の安全性を判定することで、ページの割り当て、および、解放時にページ区分を設定すること以外にも、アプリケーションからの書き込み要求時に、ページの区分を設定することを可能としている。
【００４５】
（実施の形態６）
以下、本実施の形態を図５を用いて説明する。図５は、本発明の実施の形態によるシステム低負荷時にページの初期化処理を実施するページ割り当ての構成を示した図である。
【００４６】
システムが低負荷であることを検出した場合、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００より未使用ページを取得する。未使用ページ管理部１００より取得した未使用ページに含まれている内容が安全であるか否かを、システム内のページごとの安全性を保持しているページ安全性保持部１０４にアクセスし、未使用ページ管理部１００より取得した未使用ページが、ページ安全性保持部１０４において安全なページとして保持されているか、それとも、安全でないページとして保持されているかを判定することにより取得した未使用ページの安全性をページ安全性判定部１０１において判定する。システム低負荷時に、ページ安全性判定部１０１より検出した安全でないページに対して初期化処理をページ初期化処理部１０２において実施し、システム内の安全でないページを削減する。
【００４７】
なお、ページ安全性判定部１０１での未使用ページの安全性を判定する方法としては、以下の方法が挙げられる。
【００４８】
ページ安全性保持部１０４には、安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全でないページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれていないならば、取得した未使用ページは安全なページであると判定できる。
【００４９】
もしくは、ページ安全性保持部１０４には、安全なページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４に含まれているならば、取得した未使用ページは安全なページであると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページがページ安全保持部１０４に含まれていないならば、取得した未使用ページは安全でないページであると判定できる。
【００５０】
もしくは、ページ安全性保持部１０４には、安全なページの情報と安全でないページの情報を保持しており、未使用ページ管理部１００より取得した未使用ページがページ安全性保持部１０４において安全なページとして管理されているならば、取得した未使用ページは安全であると判定でき、逆に、未使用ページ管理部１００より取得した未使用ページが安全でないページとして管理されているならば、取得した未使用ページは安全でないと判定できる。
【００５１】
このように、システムが低負荷時に、できる限り、未使用ページで、かつ、安全でないページの初期化処理を行い、安全でないページを削減することで、システム全体の負荷を削減することを可能とする。
【００５２】
（実施の形態７）
以下、本発明の実施の形態を図６を用いて説明する。図６は、本発明の実施の形態によるページ解放時に安全でないページの初期化処理を実施するページ割り当ての構成を示したものである。
【００５３】
アプリケーションからのページで管理されるメモリ１０３に対するページ解放要求発生時に、システム内の未使用ページのアドレスなどの識別子の一覧を管理している未使用ページ管理部１００に対して解放するページを未使用ページとしてそのページの識別子を格納する。未使用ページ管理部１００に対して未使用ページとして格納したページに含まれている内容が安全であるか否かを、システム内のページごとの安全性を保持しているページ安全性保持部１０４にアクセスし、未使用ページ管理部１００より取得した未使用ページが、ページ安全性保持部１０４において安全なページとして保持されているか、それとも、安全でないページとして保持されているかを判定することにより取得した未使用ページの安全性をページ安全性判定部１０１において判定する。ページ安全性判定部１０１の判定の結果、未使用ページ管理部１００に対して未使用ページとしたページがユーザ情報などのデータの流出を防止しなければならない安全でないページであると判定されたならば、そのページの初期化処理をページ初期化処理部１０２で実施する。
【００５４】
なお、ページ安全性判定部１０１での未使用ページの安全性を判定する方法としては、以下の方法が挙げられる。
【００５５】
ページ安全性保持部１０４には、安全でないページの情報を保持しており、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全性保持部１０４に含まれているならば、未使用ページとして格納したページは安全でないページであると判定でき、逆に、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全性保持部１０４に含まれていないならば、未使用ページとして格納したページは安全なページであると判定できる。
【００５６】
もしくは、ページ安全性保持部１０４には、安全なページの情報を保持しており、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全性保持部１０４に含まれているならば、未使用ページとして格納したページは安全なページであると判定でき、逆に、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全性保持部１０４に含まれていないならば、未使用ページとして格納したページは安全でないページであると判定できる。
【００５７】
もしくは、ページ安全性保持部１０４には、安全なページの情報と安全でないページの情報を保持しており、未使用ページ管理部１００に対して未使用ページとして格納したページがページ安全性保持部１０４において安全なページとして管理されているならば、未使用ページとして格納したページは安全であると判定でき、逆に、未使用ページ管理部１００に対して未使用ページとして格納したページが安全でないページとして管理されているならば、未使用ページとして格納したページは安全でないと判定できる。
【００５８】
このように、ページ取得要求時に安全でないページの初期化処理を行うだけでなく、本実施の形態で示すように、ページ解放要求時にもページの初期化処理を行うことを可能とする。
【００５９】
（実施の形態８）
以下、本発明の実施の形態を図７、図８を用いて説明する。本実施の形態では、実施の形態３、および、実施の形態４で示した入力データ安全性判定部におけるアプリケーションの扱うデータの安全性を判定するための手段の例を示す。
【００６０】
入力データ安全性判定部においてアプリケーションの扱うデータの安全性を判定するための手段として、アプリケーションの扱うデータについて安全でないデータには、安全でないデータであることを表す属性を付加する。その例として、図８で示すように、安全でないデータとしたい変数には、ｓｅｃｕｒｅという安全でないことを表す属性を付加する。ｓｅｃｕｒｅという属性が付加されているデータは安全でないデータであることを意味し、ｓｅｃｕｒｅという属性が付加されていないデータは安全なデータであることを意味する。
【００６１】
そして、上記ｓｅｃｕｒｅという属性が付加されている安全でないデータは、図７で示すように、変数を格納する領域７０２内の安全でない領域７０３に配置し、安全でない領域７０３にページを割り当てる。逆に、上記ｓｅｃｕｒｅという属性が付加されていない安全なデータは、図７で示すように、変数を格納する領域７０２内の安全な領域に配置し、安全な領域にページを割り当てる。
【００６２】
上記安全でないデータのために割り当てたページを安全でないページとし、上記安全なデータのために割り当てたページを安全なページとしてページ区分設定部で設定する。
【００６３】
なお、本実施の形態では、データの安全性について述べてきたが、同様にプログラムコードについても、安全性を考慮することも可能であり、それに伴い、初期化処理を削減することを可能とする。
【００６４】
このように、アプリケーション設計時に明示的に安全でない情報を宣言することで、データの漏洩を防ぎたいデータの保護を可能とする。
【産業上の利用可能性】
【００６５】
本発明は、オペレーティングシステムや機器全般に利用できる。
【図面の簡単な説明】
【００６６】
【図１】本発明の実施の形態によるページ獲得・解放時のページ割り当ての構成を示す図
【図２】本発明の実施の形態によるアプリケーションのデータ特性に依存したページ獲得・解放要求時において、ページ取得時にページ区分を設定するページ割り当ての構成を示す図
【図３】本発明の実施の形態によるアプリケーションのデータ特性に依存したページ獲得・解放要求時において、ページの解放時にページ区分を設定するページ割り当ての構成を示す図
【図４】本発明の実施の形態によるアプリケーションのデータの読み出し、および、書き込み要求時のページ割り当ての構成を示す図
【図５】本発明の実施の形態によるシステム低負荷時にページ初期化処理を実施するページ割り当ての構成を示す図
【図６】本発明の実施の形態によるページ解放時に安全でないページの初期化処理を実施するページ割り当ての構成を示す図
【図７】本発明の実施の形態によるプログラムの実行を行うためのファイルシステムを示す図
【図８】本発明の実施の形態による安全な情報であることを示す識別子を付加したアプリケーションの例を示す図
【符号の説明】
【００６７】
１００  未使用ページ管理部
１０１  ページ安全性判定部
１０２  ページ初期化処理部
１０３  ページ単位で管理されるメモリ
１０４  ページ安全性保持部
１０５  ページ区分設定部
２００  入力データ安全性判定部
７０１  コードを格納する領域
７０２  変数を格納する領域
７０３  変数を格納する領域内の安全でない領域
【図１】
2006048436.tif 000003
【図２】
2006048436.tif 000004
【図３】
2006048436.tif 000005
【図４】
2006048436.tif 000006
【図５】
2006048436.tif 000007
【図６】
2006048436.tif 000008
【図７】
2006048436.tif 000009
【図８】
2006048436.tif 000010