(57)【要約】  本発明は、周辺装置(3)およびそのドライバ(4)を含むコンピュータシステム内で、使用側アプリケーション(6、7)の仮想メモリ(1、2)にアクセスすることができる周辺装置(3)の使用側アプリケーション(6、7)の仮想メモリ(1、2)を管理する方法に関する。この管理方法は、使用側アプリケーション(6、7)の仮想メモリ(1、2)内に、周辺装置(3)がアクセス可能であるが、使用側アプリケーション(6、7)からはアクセス不可能な仮想メモリプール(12、14、22)を作成するステップと、使用側アプリケーション(6、7)とは別個であり、少なくともこの仮想メモリプール(12、14、22)の割り当ておよび少なくともこの仮想メモリプール(12、14、22)の解放に専用の管理アプリケーション(5)を作成するステップと、を含む。
2020503618.tif 000002
【特許請求の範囲】
【請求項１】
周辺装置(3)およびそのドライバ(4)を含むコンピュータシステム内で、使用側アプリケーション(6、7)の仮想メモリ(1、2)にアクセスすることができる前記周辺装置(3)の前記使用側アプリケーション(6、7)の前記仮想メモリ(1、2)を管理する方法において、前記管理方法が、
前記使用側アプリケーション(6、7)の前記仮想メモリ(1、2)内に、前記周辺装置(3)がアクセス可能であり、かつ前記使用側アプリケーション(6、7)がアクセス不可能な仮想メモリプール(12、14、22)を作成するステップと、
前記使用側アプリケーション(6、7)とは別個であり、少なくとも前記仮想メモリプール(12、14、22)の割り当ておよび少なくとも前記仮想メモリプール(12、14、22)の解放に専用の管理アプリケーション(5)を作成するステップと、
を含むことを特徴とする方法。
【請求項２】
前記管理アプリケーション(5)は、前記周辺装置(3)の前記ドライバ(4)によって作成される、請求項1に記載の仮想メモリを管理する方法。
【請求項３】
前記管理アプリケーション(5)は、前記周辺装置(3)の前記ドライバ(4)によって作成された時に前記周辺装置(3)に登録される、請求項2に記載の仮想メモリを管理する方法。
【請求項４】
前記仮想メモリプール(12、14、22)の前記割り当ておよび前記仮想メモリプール(12、14、22)の前記解放は、前記周辺装置(3)の前記ドライバ(4)の要求により動的に行われる、請求項1から3のいずれか一項に記載の仮想メモリを管理する方法。
【請求項５】
1つまたは複数の使用側アプリケーション(6、7)のための、前記使用側アプリケーション(6、7)の前記仮想メモリ(1、2)における前記仮想メモリプール(12、14、22)の前記割り当ておよび前記仮想メモリプール(12、14、22)の前記解放が、前記管理アプリケーション(5)の唯一の機能である、請求項1から4のいずれか一項に記載の仮想メモリを管理する方法。
【請求項６】
前記使用側アプリケーション(6、7)は、前記周辺装置(3)が前記使用側アプリケーション(6、7)の前記仮想メモリ(1、2)にアクセスすることを可能にするように、予め特別に構成されている、請求項1から5のいずれか一項に記載の仮想メモリを管理する方法。
【請求項７】
前記周辺装置(3)は、対応する前記使用側アプリケーション(6、7)の目的のためだけに前記仮想メモリプール(12、14、22)を使用する、請求項1から6のいずれか一項に記載の仮想メモリを管理する方法。
【請求項８】
同一の前記管理アプリケーション(5)が、同一の周辺装置(3)の複数の使用側アプリケーション(6、7)の、好ましくは前記同一の周辺装置(3)のすべての使用側アプリケーション(6、7)の、さらに好ましくは前記コンピュータシステムの前記周辺装置(3)のうち一部またはすべての周辺装置(3)のすべての使用側アプリケーション(6、7)の、前記仮想メモリプール(12、14、22)を管理する、請求項1から7のいずれか一項に記載の仮想メモリを管理する方法。
【請求項９】
前記仮想メモリプール(12、14、22)は、前記仮想メモリプールが記憶された前記仮想メモリ(1、2)のメモリ空間の1%未満を占める、請求項1から8のいずれか一項に記載の仮想メモリを管理する方法。
【請求項１０】
前記周辺装置(3)の前記ドライバ(4)は、前記仮想メモリプール(12、14、22)内に、前記使用側アプリケーション(6、7)に固有の情報であって、変更されると他の使用側アプリケーション(6、7)へのアクセスを可能にし得る情報を記憶する、請求項1から9のいずれか一項に記載の仮想メモリを管理する方法。
【請求項１１】
前記情報がコマンドおよび/またはテーブル項目である、請求項10に記載の仮想メモリを管理する方法。
【請求項１２】
前記周辺装置(3)は、使用側アプリケーション(6、7)間のデータ交換を可能にするネットワーク周辺装置である、請求項1から11のいずれか一項に記載の仮想メモリを管理する方法。
【請求項１３】
請求項1から12のいずれか一項に記載の周辺装置(3)の使用側アプリケーション(6、7)の仮想メモリ(1、2)を管理する方法を実行することが可能なように相互接続されたコンピュータメンバーを備える、コンピュータシステム。
【請求項１４】
周辺装置(3)と、
前記周辺装置(3)用のドライバ(4)と、
前記周辺装置(3)の使用側アプリケーション(6、7)と、
前記使用側アプリケーション(6、7)の仮想メモリ(1、2)と、
を備え、
前記使用側アプリケーション(6、7)は、前記周辺装置(3)が前記使用側アプリケーション(6、7)の前記仮想メモリ(1、2)にアクセスできるように、前記周辺装置(3)に関連付けられる、
コンピュータシステムにおいて、前記コンピュータシステムが、
前記使用側アプリケーション(6、7)とは別個であり、少なくとも1つの仮想メモリプール(12、14、22)の割り当ておよび少なくとも前記仮想メモリプール(12、14、22)の解放に専用の管理アプリケーション(5)、をさらに備え、
前記仮想メモリプール(12、14、22)は、前記使用側アプリケーション(6、7)の前記仮想メモリ(1、2)内に位置すると共に、前記周辺装置(3)がアクセス可能であり、前記使用側アプリケーション(6、7)がアクセス不可能であることを特徴とする、コンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、周辺装置およびそのドライバを含むコンピュータシステム内で、周辺装置の使用側アプリケーションの仮想メモリを管理する方法、ならびにそれに対応するコンピュータシステムの分野に関する。
【背景技術】
【０００２】
従来技術によれば、周辺装置およびそのドライバと、その周辺装置の使用側アプリケーションとを含むコンピュータシステム内で、この使用側アプリケーションが仮想メモリを有する場合に、装置の必要性のために別の仮想メモリを作成することが知られており、この別の仮想メモリは装置のドライバによって管理される。小さめのサイズであるとは言え、この別の仮想メモリは、この別の仮想メモリに必要とされる小さめのサイズを考えると過剰な設計である作成および管理ステップを必要とする。
【０００３】
したがって、この従来技術には、別の仮想メモリを必要とすることが、この別の仮想メモリの小さめのサイズを考えると過剰な設計である作成および管理ステップを必然的に要するという不都合点がある。
【０００４】
詳細には、周辺装置の使用側アプリケーションの動作中、少なくともこの使用側アプリケーションの目的のために動作する間には、この使用側アプリケーションの仮想メモリならびにドライバの別の仮想メモリが使用されることになる。したがって、単一の使用側アプリケーションの必要性のために2つの仮想メモリが継続的に管理されなければならない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、上記の不都合点を少なくとも部分的に克服する、仮想メモリを管理する方法を提供することである。
【課題を解決するための手段】
【０００６】
したがって、本発明は、単に使用側アプリケーションの仮想メモリを使用することにより、この別の仮想メモリを使わずに済ますことを提案する。何故ならば、使用側アプリケーションの仮想メモリは、すでに存在しており、相当のサイズであり、この仮想メモリのうちの限られた、一般には少量の部分のみが周辺装置ドライバ用に確保されるためである。
【０００７】
より詳細には、本発明は、使用側アプリケーションが一部分、一般には小さい部分を周辺装置ドライバのために使用することを可能にするように、使用側アプリケーションの仮想メモリを管理する方法を提供することを目的とする。
【０００８】
周辺装置の使用側アプリケーションの仮想メモリのうちこの部分が、適切に安全な形で装置ドライバによって使用されるようにするために、本発明は、使用側アプリケーションの仮想メモリに仮想メモリプールを確立することによって第1のセキュリティレベルを提案し、この仮想メモリプールは、使用側アプリケーションがアクセスできないようにされる。これを行うために、この仮想メモリプールを管理するための、使用側アプリケーションとは別個のアプリケーションが作成される。これにより、使用側アプリケーションが意図せずにまたは悪意を持ってこの仮想メモリプールにアクセスし、その内容を変更し、それが次いで周辺装置ドライバの動作に干渉し、この装置およびそのドライバを使用する他のアプリケーションに悪影響を及ぼすことを防止する。
【０００９】
本発明は同時に、この管理アプリケーションをこの仮想メモリプールの管理専用にすることにより、第2のセキュリティレベルも提案する。これにより、この仮想メモリの管理または他の仮想メモリの管理以外に、特に使用側アプリケーションのためにこの管理アプリケーションが行い得る他の動作が、意図せずにまたは悪意を持ってその他の形で仮想メモリプールにアクセスし、その内容を変更することを防止する。
【００１０】
それ故に、この管理アプリケーションはしたがって、単に第1の使用側アプリケーションと異なるだけで、それ故にやはり仮想メモリプールの内容に害を及ぼし得る、第1の使用側アプリケーションと同じ種類、または同様の種類、または同等である第2の使用側アプリケーションではない。そうではなく、管理アプリケーションは、この周辺装置を使用する1つまたは複数のアプリケーションのための、仮想メモリ管理に「特化」したアプリケーションである。
【００１１】
この専用の管理アプリケーションは、コンピュータシステムの外部のユーザによってより容易にアクセス可能な使用側アプリケーションの場合のように、コンピュータシステムの外部から容易にアクセスすることはできない。定義上、これらの外部ユーザは、コンピュータシステムの中核よりも少ない制御を受けるため、これらのユーザにとって誤りおよび/または悪意ある行為の危険性が著しく高くなる。
【００１２】
本発明は、したがって、周辺装置およびそのドライバを含むコンピュータシステム内で、使用側アプリケーションの仮想メモリにアクセスすることができる周辺装置の使用側アプリケーションの仮想メモリを管理する方法を提案し、この管理方法は、使用側アプリケーションの仮想メモリ内に、周辺装置がアクセス可能であり、かつ使用側アプリケーションがアクセス不可能な仮想メモリプールを作成するステップと、使用側アプリケーションとは別個であり、少なくともこの仮想メモリプールの割り当ておよび少なくともこの仮想メモリプールの解放に専用の管理アプリケーションを作成するステップと、を含むことを特徴とする。好ましくは、単一の使用側アプリケーションを管理する場合、管理アプリケーションは、使用側アプリケーションとは別個であり、この仮想メモリプールの割り当ておよびこの仮想メモリプールの解放に専用である。好ましくは、複数の使用側アプリケーションを管理する場合、管理アプリケーションは、使用側アプリケーションとは別個であり、この仮想メモリプールの割り当ておよびこの仮想メモリプールの解放と、1つまたは複数の他の仮想メモリプールの割り当ておよびそれら1つまたは複数の他の仮想メモリプールの解放とに専用であり、有利には、使用側アプリケーションあたり少なくとも1つの仮想メモリプールを有する。
【００１３】
このために、本発明はコンピュータシステムも提案し、このコンピュータシステムは、周辺装置と、この周辺装置用のドライバと、この周辺装置の使用側アプリケーションと、この使用側アプリケーションの仮想メモリと、を備え、使用側アプリケーションは、周辺装置がこの使用側アプリケーションの仮想メモリにアクセスできるように、周辺装置に関連付けられる、コンピュータシステムにおいて、使用側アプリケーションとは別個であり、少なくとも1つの仮想メモリプールの割り当ておよび少なくともこの仮想メモリプールの解放に専用の管理アプリケーションをコンピュータシステムがさらに備え、この仮想メモリプールは、使用側アプリケーションの仮想メモリ内に位置すると共に、周辺装置がアクセス可能であり、使用側アプリケーションがアクセス不可能であることを特徴とする。好ましくは、単一の使用側アプリケーションを管理する場合、その使用側アプリケーションとは別個の管理アプリケーションが、仮想メモリプールの割り当ておよびこの仮想メモリプールの解放に専用とされる。好ましくは、複数の使用側アプリケーションを管理する場合、それらすべての使用側アプリケーションとは別の管理アプリケーションが、複数の仮想メモリプールの割り当ておよびそれら仮想メモリプールの解放に専用とされ、有利には、使用側アプリケーションあたり少なくとも1つの仮想メモリプールを有する。
【００１４】
本発明の好ましい実施形態によれば、周辺装置の使用側アプリケーションの仮想メモリの1つまたは複数の領域は、セキュリティ上の理由からこの使用側アプリケーションによりもはやアクセスできないようにすることができ、一方で、使用側アプリケーションの仮想メモリのこれらの領域は、追加的なメモリプールとして、装置ドライバにより自由に使用可能なままである。
【００１５】
好ましい実施形態によれば、本発明は、単独で使用するか、または上述の本発明の目的のいずれかと部分的にもしくは完全に組み合わせて共に使用することが可能な以下の特徴の1つまたは複数を備える。
【００１６】
好ましくは、管理アプリケーションは、周辺装置のドライバによって作成される。したがって、動作がより単純かつ一貫性のあるものになる。何故ならば、この管理アプリケーションは、使用側アプリケーションがその周辺装置を使用する際の使用側アプリケーションの目的のために、装置ドライバ用に使用側アプリケーションの仮想メモリ内に確立された仮想メモリプールにアクセスするためである。
【００１７】
好ましくは、管理アプリケーションは、装置ドライバによって作成された時に周辺装置に登録される。よって、装置ドライバは、自身が作成した管理アプリケーションの制御を保ち続ける。
【００１８】
好ましくは、この仮想メモリプールの割り当ておよびこの仮想メモリプールの解放は、装置ドライバの要求により動的に行われる。よって、装置ドライバは、この仮想メモリプールを、この仮想メモリプールの作成時に意図されたように使用し、仮想メモリプールをリアルタイムまたは近リアルタイムで高速に使用することができる。
【００１９】
好ましくは、1つまたは複数の使用側アプリケーションのための、使用側アプリケーションの仮想メモリにおけるこの仮想メモリプールの割り当ておよびこの仮想メモリプールの解放が、管理アプリケーションの唯一の機能である。これにより、この仮想メモリの管理以外にこの管理アプリケーションによって行われる他の動作が、誤ってまたは悪意を持ってこのメモリプールにアクセスし、その内容を変更することを防止する。装置ドライバによって、言い換えると周辺装置を制御するドライバによって作成される、使用側アプリケーションとは異なるアプリケーションは、このドライバに登録され、このドライバとの対話を介して仮想メモリの領域を割り当て、および/または割り当てを解除するという唯一の機能を有する。
【００２０】
好ましくは、使用側アプリケーションは、周辺装置がこの使用側アプリケーションの仮想メモリにアクセスすることを可能にするように、予め特別に構成されている。これにより、装置ドライバが容易に管理アプリケーションを作成できるようになり、管理アプリケーションはそれ自体でこの仮想メモリの一部分を確保することになる。装置ドライバは、装置の使用側アプリケーションの仮想メモリのどの領域にもアクセスすることができ、この仮想のアプリケーションは、この目的のために予め特別に構成されている。
【００２１】
好ましくは、周辺装置は、対応する使用側アプリケーションの目的のためだけに仮想メモリプールを使用する。よって、プールのサイズは小さいままであり、他のアプリケーションに専用のデータがこの使用側アプリケーションの仮想メモリに混じることはない。周辺装置のドライバは、周辺装置の使用側アプリケーションの動作に厳密に関係する必要性のためにメモリを必要とするので、この使用側アプリケーションの仮想メモリの少なくとも一部にアクセスできることは有用である。
【００２２】
好ましくは、同一の管理アプリケーションが、同一の周辺装置の複数の使用側アプリケーションの、好ましくは当該同一の周辺装置のすべての使用側アプリケーションの、さらに好ましくは上記コンピュータシステムの周辺装置のうち一部またはすべての周辺装置のすべての使用側アプリケーションの、仮想メモリプールを管理する。よって、仮想メモリの管理「専用」のこの管理アプリケーションは非常にコスト効果が高い。
【００２３】
好ましくは、仮想メモリプールは、その仮想メモリプールが記憶される仮想メモリのメモリ空間の厳密に半分未満を占める。よって、使用側アプリケーションの仮想メモリのうち少量の部分だけが、使用側アプリケーションによる直接の使用から流用される。
【００２４】
好ましくは、仮想メモリプールは、当該仮想メモリプールが記憶された仮想メモリのメモリ空間の1%未満を占める。よって、使用側アプリケーションの仮想メモリのうちこの非常に小さな部分を確保することで、利用可能な仮想メモリの不足のために使用側アプリケーションの動作が破綻する危険性がない。何故ならば、使用側アプリケーションは、自身の仮想メモリをすべて使用することはなく、またいずれの場合も自身の仮想メモリのすべてを継続的に使用することはないためである。
【００２５】
好ましくは、装置ドライバは、仮想メモリプール内に、使用側アプリケーションに固有の情報であって、変更されると他の使用側アプリケーションへのアクセスを可能にし得る情報を記憶する。この場合、これにより、記憶されたデータの特に重要性の高い性質と、故意であるか否かに関わらず、使用側アプリケーションによるそれらデータの不正な変更から生じ得るコンピュータシステムへの損害の程度とが確定される。
【００２６】
好ましくは、この情報はコマンドおよび/またはテーブル項目である。これらは重要なデータであり、誤って変更されると情報の不正確なルーティングにつながる可能性がある。
【００２７】
好ましくは、周辺装置は、使用側アプリケーション間のデータ交換を可能にするネットワーク周辺装置である。よって、誤動作が発生すると、使用側アプリケーション間のすべての通信が低下または阻止される可能性があり、この通信を介して誤ったデータを受信した使用側アプリケーションは、次いで自身の動作を低下させるかまたは停止し、それによってコンピュータシステムの残りの部分も破綻させる。
【００２８】
本発明は、本発明による周辺装置の使用側アプリケーションの仮想メモリを管理する方法を実行することが可能なように相互接続されたコンピューティングメンバーを備える、コンピュータシステムにも関する。
【００２９】
本発明のその他の特徴および利点は、例として添付図面を参照しながら与えられる、以下の本発明の好ましい実施形態の説明を読むことから明らかになろう。
【図面の簡単な説明】
【００３０】
【図１】本発明の一実施形態による仮想メモリを管理する方法を使用するコンピュータシステムの第1の例の概略図である。
【図２】本発明の一実施形態による仮想メモリを管理する方法を使用する第2のコンピュータシステムの概略図である。
【発明を実施するための形態】
【００３１】
図1は、本発明の一実施形態による仮想メモリを管理する方法を使用するコンピュータシステムの第1の例の概略図である。
【００３２】
コンピュータシステムは、周辺装置3と、この装置3用のドライバ4と、この装置3の使用側アプリケーション6と、この使用側アプリケーション6の仮想メモリ1と、仮想メモリ1にアクセスするために、より正確には、この仮想メモリ1の一部分を、使用側アプリケーション6の目的のためのドライバ4の動作用に確保するために、ドライバ4によって作成される管理アプリケーション5と、を備える。
【００３３】
仮想メモリ1は、常に使用側アプリケーション6が直接アクセスすることが可能なままである領域、例えば領域11、13、および15を備える。
【００３４】
仮想メモリ1は、一時的または恒久的に使用側アプリケーション6がアクセスできないようにすることが可能な1つまたは複数の領域も備える。この1つまたは複数の領域は、好ましくは、少なくとも使用側アプリケーション6が周辺装置3を使用している時間中は、使用側アプリケーション6がアクセスできないようにされる。
【００３５】
所与の時点に、管理アプリケーションは、ドライバ4用の仮想メモリプールに領域12を割り当てる。その時点以降、領域12は、使用側アプリケーション6によって直接アクセスすることはもはやできなくなる。それに対して、領域14は、使用側アプリケーション6が直接アクセスすることが可能なままであり、領域11、13、および15も同様である。ドライバ4は、使用側アプリケーション6の目的のために領域12を直接使用するが、領域11および13〜15にはいずれもアクセスしない。
【００３６】
別の後の時点に、管理アプリケーションは、領域12を解放し、次いでドライバ4用の仮想メモリプールに領域14を割り当てる。その時点以降、領域14は、使用側アプリケーション6によって直接アクセスすることはもはやできなくなる。一方、領域12は再び使用側アプリケーション6が直接アクセスすることが可能になり、この時間の間ずっと、領域11、13、および15は、使用側アプリケーション6が直接アクセス可能なままである。ドライバ4は、使用側アプリケーション6の必要性のために領域14を直接使用するが、領域12にはもはやアクセスしなくなり、また領域11、13、および15にもアクセスしない。
【００３７】
図2は、本発明の一実施形態による仮想メモリを管理する方法を使用する第2のコンピュータシステムの概略図である。
【００３８】
コンピュータシステムは、周辺装置3と、この装置3用のドライバ4と、この装置3の第1の使用側アプリケーション6および第2の使用側アプリケーション7と、この第1の使用側アプリケーション6の第1の仮想メモリ1およびこの第2の使用側アプリケーション7の第2の仮想メモリ2と、第1の使用側アプリケーション6の第1の仮想メモリ1および第2の使用側アプリケーション7の第2の仮想メモリ2の両方にアクセスするため、より具体的には、第1の使用側アプリケーション6および第2の使用側アプリケーション7の各自の必要性のためのドライバ4の動作用に、これらの仮想メモリ1および2の一部分を確保するために、ドライバ4によって作成される管理アプリケーション5と、を備える。
【００３９】
仮想メモリ1は、常に第1の使用側アプリケーション6が直接アクセスすることが可能なままである領域、例えば領域11および13を備える。仮想メモリ1は、一時的または恒久的に第1の使用側アプリケーション6がアクセスできないようにされる領域12も備える。この領域12は、好ましくは、少なくともこの第1の使用側アプリケーション6が装置3を使用している時間の間、第1の使用側アプリケーション6がアクセスできないようにされる。
【００４０】
所与の時点に、管理アプリケーションは、ドライバ4用の仮想メモリプールに領域12を割り当てる。その時点以降、領域12は、第1の使用側アプリケーション6によって直接アクセスすることはもはやできなくなる。それに対して、領域11および13は、第1の使用側アプリケーション6が直接アクセス可能なままである。ドライバ4は、第1の使用側アプリケーション6の必要性のために領域12を直接使用するが、領域11および13はどちらにもアクセスしない。
【００４１】
仮想メモリ2は、常に第2の使用側アプリケーション7が直接アクセス可能なままである領域、例えば領域21を備える。仮想メモリ1は、一時的または恒久的に第2の使用側アプリケーション7がアクセスできないようにされる領域22も備える。この領域22は、好ましくは、少なくともこの第2の使用側アプリケーション7が装置3を使用している時間の間は、第2の使用側アプリケーション7がアクセスできないようにされる。あるいは、この領域22は解放され、領域21内の別の場所に仮想メモリプールが確立または再確立されてもよい。
【００４２】
所与の時点に、管理アプリケーションは、ドライバ4用の仮想メモリプールに領域22を割り当てる。その時点以降、領域22は、第2の使用側アプリケーション7によって直接アクセスすることはできなくなる。それに対して、領域21は、第2の使用側アプリケーション7が直接アクセス可能なままである。ドライバ4は、第2の使用側アプリケーション7の目的のために領域22を直接使用するが、領域21にはアクセスしない。
【００４３】
好ましい例として、仮想メモリプールのサイズは1MBであってよく、一方、仮想メモリのサイズは256GBであってよい。仮想メモリプールのサイズと使用側アプリケーションのための仮想メモリのサイズとの比は、有利には1000未満、さらには10,000未満、さらには100,000未満である。
【００４４】
好ましい例として、管理アプリケーションによって管理される使用側アプリケーションの数は512個であってよい。管理アプリケーションによって管理される使用側アプリケーションの数は、有利には10個より多く、さらには100個より多い。
【００４５】
言うまでもなく、本発明は、記載および図示される例および実施形態に制限されず、当業者に理解できる多数の変形が可能である。
【符号の説明】
【００４６】
1、2    仮想メモリ
3    周辺装置
4    ドライバ
5    管理アプリケーション
6、7    使用側アプリケーション
11、12、13、14、15、21、22    領域
【図１】
2020503618.tif 000003
【図２】
2020503618.tif 000004
【国際調査報告】
2020503618.tif 000005
2020503618.tif 000006
2020503618.tif 000007
2020503618.tif 000008
2020503618.tif 000009
2020503618.tif 000010