JP2016115286A - 情報処理装置及び情報処理方法 - Google Patents

情報処理装置及び情報処理方法 Download PDF

Info

Publication number
JP2016115286A
JP2016115286A JP2014255586A JP2014255586A JP2016115286A JP 2016115286 A JP2016115286 A JP 2016115286A JP 2014255586 A JP2014255586 A JP 2014255586A JP 2014255586 A JP2014255586 A JP 2014255586A JP 2016115286 A JP2016115286 A JP 2016115286A
Authority
JP
Japan
Prior art keywords
information
processing
storage area
file system
processing target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014255586A
Other languages
English (en)
Inventor
滋也 千田
Shigeya Senda
滋也 千田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2014255586A priority Critical patent/JP2016115286A/ja
Priority to US14/972,744 priority patent/US20160179559A1/en
Publication of JP2016115286A publication Critical patent/JP2016115286A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45545Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/188Virtual file systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】仮想化に伴う処理負荷を抑えることができる情報処理装置及び情報処理方法を提供する。【解決手段】実環境上で動作し、主記憶部60の所定記憶領域に処理対象の情報を読み出して処理し、実環境上で所定の機能を実現するホストOS20と、実環境上に構築される仮想環境上で動作し、ホストOS20に主記憶部60の所定記憶領域へ処理対象の情報を読み出させ、所定記憶領域へ読み出された処理対象の情報を処理し、仮想環境上で所定の機能を実現するゲストOS30と、を備える。【選択図】図2

Description

本発明は、情報処理装置及び情報処理方法に関する。
従来からOS(Operating System)の完全仮想化や準仮想化などの仮想化技術が知られている(例えば、特許文献1参照)。
例えば、このような仮想化技術により、実環境上に構築される仮想環境上で動作するゲストOSが仮想環境上でファイルシステムを実現し、ファイルアクセスを行うとする。この場合、実環境上で動作するホストOSが、ゲストOSの指示を受け、アクセス対象のファイルをHDD(Hard Disk Drive)などの外部記憶装置からメモリなどの主記憶装置上のホストOS用のキャッシュ領域に読み出し、当該キャッシュ領域の内容をメモリ上のゲストOS用のキャッシュ領域にコピーして同期した上で、ゲストOSが、メモリ上のゲストOS用のキャッシュ領域からアクセス対象のファイルを読み出す。
上述したような従来技術では、仮想化を実現するために、ホストOS用のキャッシュ領域とゲストOS用のキャッシュ領域とを別々に用意し、両キャッシュ領域の内容を同期する必要があるため、オーバーヘッドが生じ、処理負荷が増大してしまう。
本発明は、上記事情に鑑みてなされたものであり、仮想化に伴う処理負荷を抑えることができる情報処理装置及び情報処理方法を提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明の一態様にかかる情報処理装置は、実環境上で動作し、主記憶部の所定記憶領域に処理対象の情報を読み出して処理し、前記実環境上で所定の機能を実現する第1の処理部と、前記実環境上に構築される仮想環境上で動作し、前記第1の処理部に前記主記憶部の前記所定記憶領域へ前記処理対象の情報を読み出させ、前記所定記憶領域へ読み出された前記処理対象の情報を処理し、前記仮想環境上で前記所定の機能を実現する第2の処理部と、を備える。
本発明によれば、仮想化に伴う処理負荷を抑えることができるという効果を奏する。
図1は、本実施形態の情報処理装置のハードウェア構成の一例を示すブロック図である。 図2は、本実施形態の情報処理装置の機能構成の一例を示すブロック図である。 図3は、本実施形態のオブジェクト間の一例を示す関係図である。 図4は、本実施形態のシステムコールとオブジェクト間の一例を示す関係図である。 図5は、本実施形態の情報処理装置で実行されるゲストOSのファイル読出処理の一例を示すシーケンス図である。
以下、添付図面を参照しながら、本発明にかかる情報処理装置及び情報処理方法の実施形態を詳細に説明する。
図1は、本実施形態の情報処理装置10のハードウェア構成の一例を示すブロック図である。図1に示すように、情報処理装置10は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などの制御装置11と、ROM(Read Only Memory)やRAM(Random Access Memory)などの主記憶装置12と、HDD(Hard Disk Drive)やSSD(Solid State Drive)などの補助記憶装置13と、ディスプレイなどの表示装置14と、マウス、キーボード、タッチパネル、又はキースイッチなどの入力装置15と、通信インタフェースなどの通信装置16と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。
但し、情報処理装置10のハードウェア構成は、これに限定されず、IC(Integrated Circuit)、ASIC(Application Specific Integrated Circuit)、及び各種センサなどを更に備えていてもよい。
情報処理装置10は、例えば、PC(Personal Computer)、スマートフォン、タブレット端末、ウェアラブル端末、画像形成装置、プロジェクタ、テレビ会議装置、電子黒板、蛍光灯、カメラ、エアコン、冷蔵庫、自販機、及び産業用機器などが挙げられる。画像形成装置は、例えば、印刷装置、複写機、複合機、スキャナ装置、及びファクシミリ装置などが挙げられる。複合機は、複写機能、印刷機能、スキャナ機能、及びファクシミリ機能のうち少なくとも2つの機能を有するものである。
図2は、本実施形態の情報処理装置10の機能構成の一例を示すブロック図である。図2に示すように、情報処理装置10は、ホストOS(Operating System)20(第1の処理部の一例)と、ゲストOS30(第2の処理部の一例)と、Virtio40と、補助記憶部50と、主記憶部60とを、含む。
ホストOS20、ゲストOS30、及びVirtio40は、例えば、制御装置11及び主記憶装置12により実現でき、補助記憶部50は、例えば、補助記憶装置13により実現でき、主記憶部60は、例えば、主記憶装置12により実現できる。
ホストOS20は、情報処理装置10の実環境上で動作するOSである。実環境とは、ハードウェアによって物理的に構築されたコンピュータ環境である。詳細には、ホストOS20は、情報処理装置10上の基盤となるOSであり、ゲストOS30を動作させるための仮想環境を構築するソフトウェアであるVM(Virtual Machine)を動作させる。
なお本実施形態では、ホストOS20が、LINUX(登録商標)やBSD(Berkeley Software Distribution)派生OSなど、バッファキャッシュ、ページキャッシュ、及びVFS(Virtual File System)等を有するOSである場合を例に取り説明するが、これに限定されるものではなく、バッファキャッシュ、ページキャッシュ、及びVFSと同等の機能を有する他のOSであってもよい。
ゲストOS30は、情報処理装置10の実環境上に構築される仮想環境上で動作するOSである。仮想環境とは、ホストOS20上で動作するVMによって仮想的に構築されたコンピュータ環境である。詳細には、ゲストOS30は、仮想マシン(ホストOS20)上で動作するOSである。
Virtio40は、ホストOS20及びゲストOS30間のVM間通信を実現するインタフェースである。但し、これに限定されず、例えば、VMにXenを用いる場合には、XenSocketを、VM間通信を実現するインタフェースに用いてもよいし、ベンダが独自に提供するインタフェースを、VM間通信を実現するインタフェースに用いてもよい。
補助記憶部50は、ファイルシステムに関する情報を複数記憶する。ファイルシステムに関する情報は、ファイルシステムを構成する1以上のファイル及び1以上のディレクトリを実環境上で管理する1以上の実管理情報、ファイルシステムを構成する1以上のファイル及び1以上のディレクトリを仮想環境上で管理する1以上の仮想管理情報、及び1以上のファイル毎に当該ファイル自身の情報であるファイル情報を含む。
1以上の実管理情報は、実環境上でのファイルシステム自体のメタ情報(例えば、スーパーブロックなど)、実環境上でのファイルシステムのオブジェクト(例えば、ファイルやディレクトリなど)に関する基本情報であるinode、及び実環境上でのファイルシステムのディレクトリエントリ(例えば、ファイルパス情報など)とinodeとを関連付けるdentryなどが挙げられる。なお、inodeは、inodeを更に抽象化したvnodeであってもよい。
1以上の仮想管理情報は、仮想環境上でのファイルシステム自体のメタ情報、仮想環境上でのファイルシステムのオブジェクトに関する基本情報であるinode、及び仮想環境上でのファイルシステムのディレクトリエントリとinodeとを関連付けるdentryなどが挙げられる。なお、inodeは、inodeを更に抽象化したvnodeであってもよい。なお、仮想管理情報のdentryは、実管理情報のdentryに対し、ゲストOS30のマウントポイントを含んだパスとなる。
主記憶部60は、所定記憶領域を有する。所定記憶領域は、補助記憶部50から処理対象の情報がキャッシュされるキャッシュ領域であり、実管理情報や仮想管理情報がキャッシュされるバッファキャッシュ領域や、ファイル情報がキャッシュされるページキャッシュ領域を含む。なお本実施形態では、ホストOS20及びゲストOS30は、所定記憶領域を共有する。つまり、所定記憶領域は、ホストOS20、ゲストOS30毎に用意されているのではなく、ホストOS20及びゲストOS30共通で用意されている。
ホストOS20は、主記憶部60の所定記憶領域に第1の処理対象の情報を読み出して処理し、実環境上で所定の機能を実現する。本実施形態では、所定の機能がファイルシステムである場合を例に取り説明するが、これに限定されず、ホストOS20の他の機能についても同様に適用できる。
所定の機能がファイルシステムである場合、ホストOS20は、補助記憶部50から、ファイルシステムに関する複数の情報のいずれかである第1の処理対象の情報を主記憶部60の所定記憶領域にキャッシュし、当該所定記憶領域にキャッシュした第1の処理対象の情報にアクセスして、実環境上でファイルシステムのアクセスを実現する。なお、第1の処理対象の情報は、例えば、実管理情報やファイル情報などが挙げられる。
ここで、ホストOS20の詳細構成について説明する。図2に示すように、ホストOS20は、ドライバ21と、具象ファイルシステム22と、VFS23と、VFSファサード24とを、含む。
ドライバ21は、補助記憶部50を制御するためのデバイスドライバである。具象ファイルシステム22は、ファイルシステムを実環境上で(補助記憶部50上で)直接扱うファイルシステム(例えば、extfsやufsなど)であり、VFS23は、具象ファイルシステム22を抽象化して一元的に扱うためのファイルシステムである。VFSファサード24は、ゲストOS30からVFS23を操作するためのインタフェースである。
例えば、ホストOS20のプロセス(図示省略)から、あるディレクトリへのアクセスが指示されることで、当該あるディレクトリのinodeがVFS23に通知されたとする。この場合、通知されるinodeは、実管理情報のinodeである。VFS23は、具象ファイルシステム22に、ドライバ21を介して補助記憶部50にアクセスさせ、通知されたinodeに基づいて、1以上の実管理情報の中から当該あるディレクトリの配下にあるディレクトリやファイルのinode及びdentryを読み出させ、主記憶部60の所定記憶領域(詳細には、バッファキャッシュ領域)にキャッシュする。なお、これらのinode及びdentryが既に主記憶部60の所定記憶領域にキャッシュされている場合には、この動作は省略される。そしてVFS23は、当該所定記憶領域にキャッシュしたinode及びdentryにアクセスし(を読み出し)、ホストOS20のプロセスに返却することで、実環境上でファイルシステムのディレクトリへのアクセスを実現する。
また例えば、ホストOS20のプロセス(図示省略)から、あるファイルへのアクセスが指示されることで、当該あるファイルのinodeがVFS23に通知されたとする。この場合、通知されるinodeは、実管理情報のinodeである。VFS23は、具象ファイルシステム22に、ドライバ21を介して補助記憶部50にアクセスさせ、通知されたinodeに基づいて、1以上の実管理情報の中から当該あるファイルのファイル情報を読み出させ、主記憶部60の所定記憶領域(詳細には、ページキャッシュ領域)にキャッシュする。なお、このファイル情報が既に主記憶部60の所定記憶領域にキャッシュされている場合には、この動作は省略される。そしてVFS23は、当該所定記憶領域にキャッシュしたファイル情報にアクセスし(を読み出し)、ホストOS20のプロセスに返却することで、実環境上でファイルシステムのファイルへのアクセスを実現する。
ゲストOS30は、ホストOS20に、主記憶部60の所定記憶領域へ第2の処理対象の情報を読み出させ、所定記憶領域へ読み出された第1の処理対象の情報を処理し、仮想環境上で所定の機能を実現する。本実施形態では、前述のように、所定の機能がファイルシステムである場合を例に取り説明するが、これに限定されず、ゲストOS30の他の機能についても同様に適用できる。
所定の機能がファイルシステムである場合、ゲストOS30は、ホストOS20に、補助記憶部50から、ファイルシステムに関する複数の情報のいずれかである第2の処理対象の情報を主記憶部60の所定記憶領域にキャッシュさせ、当該所定記憶領域にキャッシュされた第2の処理対象の情報にアクセスして、仮想環境上でファイルシステムのアクセスを実現する。なお、第2の処理対象の情報は、例えば、仮想管理情報やファイル情報などが挙げられる。
具体的には、ゲストOS30は、第2の処理対象の情報の仮想管理情報を実管理情報に変換し、当該実管理情報を用いて、ホストOS20に、補助記憶部50から第2の処理対象の情報を主記憶部60の所定記憶領域にキャッシュさせる。そしてゲストOS30は、ホストOS20から、第2の処理対象の情報がキャッシュされた所定記憶領域の物理アドレスを取得し、当該物理アドレスを用いて、所定記憶領域にキャッシュされた第2の処理対象の情報にアクセスする。
ここで、ゲストOS30の詳細構成について説明する。図2に示すように、ゲストOS30は、具象ファイルシステム31と、VFS32と、VFSファサード33と、Pager34とを、含む。
具象ファイルシステム31は、ファイルシステムを仮想環境上で(VM上で)直接扱うファイルシステムであり、通常のファイルシステムやNFS(Network File System)などの共有ファイルシステム同様、具象ファイルシステムの1種として動作する。
VFS32は、具象ファイルシステム31を抽象化して一元的に扱うためのファイルシステムである。詳細には、具象ファイルシステム31毎に、具象の操作関数群が用意されているので、この具象の操作関数群を用いて、該当する具象ファイルシステム31を操作する。なお、具象の操作関数群としては、例えば、スーパーブロックに対する操作関数、inodeに対する操作関数、及びアドレス空間に関する操作関数などが挙げられる。
VFSファサード33は、ゲストOS30からホストOS20のVFS23を操作するためのモジュールである。なお、ゲストOS30からホストOS20のVFS23を操作するためには、実環境上でのファイルシステムのオブジェクトを対象として操作を指定する必要がある。このため、VFSファサード33は、仮想環境上でのファイルシステムのオブジェクトの仮想管理情報を実想環境上でのファイルシステムのオブジェクトの実管理情報に変換して、操作を実行する。仮想管理情報の実管理情報への変換は、専用の変換関数を用いて行えばよい。
Pager34は、主記憶部60の所定記憶領域へのデータの読み書きを行うモジュールである。なお、Pager34は、所定記憶領域の物理アドレスをホストOS20から取得して、ゲストOS30のメモリ空間にマップし(詳細には、ゲストOS30のページング記憶管理領域外のルックアップテーブルに登録し)、メモリ空間において物理アドレスが対応付けられた論理アドレスを用いて、主記憶部60の所定記憶領域からデータを読み出す。なお本実施形態では、ゲストOS30は、物理アドレス取得時のホストOS20による主記憶部60の所定記憶領域の管理の振る舞いを熟知しており、メモリ破壊等は生じないものとする。
例えば、ゲストOS30のプロセス(図示省略)から、あるディレクトリへのアクセスが指示されることで、当該あるディレクトリのinode及びdentryがVFS32に通知されたとする。この場合、通知されるinode及びdentryは、仮想管理情報のinode及びdentryである。VFSファサード33は、VFS32から具象ファイルシステム31を介してinode及びdentryが通知されると、専用の変換関数を用いて、通知された仮想管理情報のdentryを実管理情報のdentryに変換する。なお、仮想管理情報のdentryは通知されたinodeを含むため、変換された実管理情報のdentryから、通知された仮想管理情報のinodeを変換した実管理情報のinodeも分かる。そしてVFSファサード33は、Virtio40を介したVM間通信を行い、ホストOS20のVFSファサード24を介してVFS23に変換されたinodeを通知する。
VFS23は、具象ファイルシステム22に、ドライバ21を介して補助記憶部50にアクセスさせ、通知されたinodeに基づいて、1以上の実管理情報の中から当該あるディレクトリの配下にあるディレクトリやファイルのinode及びdentryを読み出させ、主記憶部60の所定記憶領域(詳細には、バッファキャッシュ領域)にキャッシュする。なお、これらのinode及びdentryが既に主記憶部60の所定記憶領域にキャッシュされている場合には、この動作は省略される。そしてVFS23は、VFSファサード24に、Virtio40を介したVM間通信を行わせ、ゲストOS30のVFSファサード33を介して具象ファイルシステム31に、当該あるディレクトリの配下にあるディレクトリやファイルのinode及びdentryがキャッシュされた所定記憶領域の物理アドレスを通知する。
具象ファイルシステム31は、この物理アドレスをPager34に通知し、Pager34は、この物理アドレスを用いて、主記憶部60の所定記憶領域にキャッシュされたinode及びdentryにアクセスし(を読み出し)、ゲストOS30のプロセスに返却することで、仮想環境上でファイルシステムのディレクトリへのアクセスを実現する。
また例えば、ゲストOS30のプロセス(図示省略)から、あるファイルへのアクセスが指示されることで、当該あるファイルのinode及びdentryがVFS32に通知されたとする。この場合、通知されるinode及びdentryは、仮想管理情報のinode及びdentryである。VFSファサード33は、VFS32から具象ファイルシステム31を介してinode及びdentryが通知されると、専用の変換関数を用いて、通知された仮想管理情報のdentryを実管理情報のdentryに変換する。なお、仮想管理情報のdentryは通知されたinodeを含むため、変換された実管理情報のdentryから、通知された仮想管理情報のinodeを変換した実管理情報のinodeも分かる。そしてVFSファサード33は、Virtio40を介したVM間通信を行い、ホストOS20のVFSファサード24を介してVFS23に変換されたinodeを通知する。
VFS23は、具象ファイルシステム22に、ドライバ21を介して補助記憶部50にアクセスさせ、通知されたinodeに基づいて、1以上の実管理情報の中から当該あるファイルのファイル情報を読み出させ、主記憶部60の所定記憶領域(詳細には、バッファキャッシュ領域)にキャッシュする。なお、このファイル情報が既に主記憶部60の所定記憶領域にキャッシュされている場合には、この動作は省略される。そしてVFS23は、VFSファサード24に、Virtio40を介したVM間通信を行わせ、ゲストOS30のVFSファサード33を介して具象ファイルシステム31に、当該あるファイルのファイル情報がキャッシュされた所定記憶領域の物理アドレスを通知する。
具象ファイルシステム31は、この物理アドレスをPager34に通知し、Pager34は、この物理アドレスを用いて、主記憶部60の所定記憶領域にキャッシュされたファイル情報にアクセスし(を読み出し)、ゲストOS30のプロセスに返却することで、仮想環境上でファイルシステムのファイルへのアクセスを実現する。
図3及び図4は、ゲストOS30がファイルを読み出す場合の動作説明図の一例であり、図3は、オブジェクト間の関係図の一例を示し、図4は、システムコールとオブジェクト間の関係図の一例を示す。
例えば、ゲストOS30のプロセスがあるファイルを呼び出すためシステムコールのsys_read()を呼んだ場合、ゲストOS30の具象ファイルシステム31が、file_operationsにあるread()を呼ぶ。なお、具象ファイルシステム31は、実体としてgeneric_file_read()が登録されている場合、generic_file_read()を呼ぶ。
この結果、ホストOS20のVFSファサード33は、address_space_operations構造体に登録されているreadpage()を呼ぶ。なお、readpage()の変数であるinodeのポインタについては、ゲストOS30のVFSファサード33により、実管理情報のinodeのポインタに変換されている。
これにより、ホストOS20の具象ファイルシステム22は、実管理情報のinodeのi_fopを参照し、当該あるファイルの具体的な読取位置を把握し、補助記憶部50から当該あるファイルのファイル情報を読み出し、ホストOS20のVFS23は、主記憶部60の所定記憶領域にキャッシュし、当該ファイル情報がキャッシュされた所定記憶領域の物理アドレスをゲストOS30に返す。
なお、当該ファイル情報が既に主記憶部60の所定記憶領域にキャッシュされている場合は、所定記憶領域へキャッシュする動作は行われず、当該ファイル情報が既にキャッシュされた所定記憶領域の物理アドレスがゲストOS30に返される。
図5は、本実施形態の情報処理装置10で実行されるゲストOS30のファイル読出処理の一例を示すシーケンス図である。
まず、ゲストOS30のプロセスがあるファイルを呼び出すためシステムコールのsys_read()を呼ぶ(ステップS101)。
続いて、ゲストOS30の具象ファイルシステム31は、sys_read()が呼ばれると、file_operationsにあるread()を呼び、ゲストOS30のVFSファサード33は、read()の変数であるinodeのポインタを、実管理情報のinodeのポインタに変換してFacade_read()を呼ぶ(ステップS103)。
続いて、ホストOS20のVFSファサード24は、Facade_read()が呼ばれると、readpage()を呼ぶ(ステップS105)。
続いて、ホストOS20のVFS23は、readpage()が呼ばれると、ホストOS20の具象ファイルシステム22に、補助記憶部50から当該あるファイルのファイル情報であるページを読み出させ、主記憶部60の所定記憶領域にキャッシュし、当該ページがキャッシュされた所定記憶領域の物理アドレスを戻り値としてVFSファサード24に返す(ステップS109)。
続いて、VFSファサード24は、readpage()の戻り値をゲストOS30に返す(ステップS111)。
続いて、ゲストOS30のPager34は、readpage()の戻り値を用いて、主記憶部60の所定記憶領域にキャッシュされたページを読み出し(ステップS113)、ゲストOS30のプロセスに返す(ステップS115)。
以上のように本実施形態によれば、ホストOS用のキャッシュ領域とゲストOS用のキャッシュ領域とが共用され、両キャッシュ領域の内容を同期する必要がないため、同期に伴うオーバーヘッドが生じず、仮想化に伴う処理負荷を抑えることができる。
(プログラム)
上記実施形態の情報処理装置10で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、CD−R、メモリカード、DVD(Digital Versatile Disk)、フレキシブルディスク(FD)等のコンピュータで読み取り可能な記憶媒体に記憶されて提供される。
また、上記実施形態の情報処理装置10で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記実施形態の情報処理装置10で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、上記実施形態の情報処理装置10で実行されるプログラムを、ROM等に予め組み込んで提供するようにしてもよい。
上記実施形態の情報処理装置10で実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、例えば、CPUがROMからプログラムをRAM上に読み出して実行することにより、上記各機能部がコンピュータ上で実現されるようになっている。
10 情報処理装置
11 制御装置
12 主記憶装置
13 補助記憶装置
14 表示装置
15 入力装置
16 通信装置
20 ホストOS
21 ドライバ
22 具象ファイルシステム
23 VFS
24 VFSファサード
30 ゲストOS
31 具象ファイルシステム
32 VFS
33 VFSファサード
34 Pager
40 Virtio
50 補助記憶部
60 主記憶部
特開2012−38117号公報

Claims (7)

  1. 実環境上で動作し、主記憶部の所定記憶領域に第1の処理対象の情報を読み出して処理し、前記実環境上で所定の機能を実現する第1の処理部と、
    前記実環境上に構築される仮想環境上で動作し、前記第1の処理部に、前記主記憶部の前記所定記憶領域へ第2の処理対象の情報を読み出させ、前記所定記憶領域へ読み出された前記第2の処理対象の情報を処理し、前記仮想環境上で前記所定の機能を実現する第2の処理部と、
    を備える情報処理装置。
  2. 前記所定の機能は、ファイルシステムであり、
    前記ファイルシステムに関する情報を複数記憶する補助記憶部を更に備え、
    前記第1の処理対象の情報は、前記複数の情報の少なくともいずれかであり、
    前記第2の処理対象の情報は、前記複数の情報の少なくともいずれかであり、
    前記第1の処理部は、前記補助記憶部から前記第1の処理対象の情報を前記所定記憶領域にキャッシュし、前記所定記憶領域にキャッシュした前記第1の処理対象の情報にアクセスして、前記実環境上で前記ファイルシステムのアクセスを実現し、
    前記第2の処理部は、前記第1の処理部に、前記補助記憶部から前記第2の処理対象の情報を前記所定記憶領域にキャッシュさせ、前記所定記憶領域にキャッシュされた前記第2の処理対象の情報にアクセスして、前記仮想環境上で前記ファイルシステムのアクセスを実現する請求項1に記載の情報処理装置。
  3. 前記ファイルシステムに関する情報は、前記1以上のファイル毎に、当該ファイル自身の情報であるファイル情報を含み、
    前記第1の処理対象の情報は、前記1以上のファイル情報のいずれかであり、
    前記第2の処理対象の情報は、前記1以上のファイル情報のいずれかである請求項2に記載の情報処理装置。
  4. 前記ファイルシステムに関する情報は、前記ファイルシステムを構成する1以上のファイル及び1以上のディレクトリを前記実環境上で管理する1以上の実管理情報、及び前記ファイルシステムを構成する1以上のファイル及び1以上のディレクトリを前記仮想環境上で管理する1以上の仮想管理情報を含み、
    前記第1の処理対象の情報は、前記1以上の実管理情報のいずれかであり、
    前記第2の処理対象の情報は、前記1以上の仮想管理情報のいずれかである請求項2又は3に記載の情報処理装置。
  5. 前記第2の処理部は、前記第2の処理対象の情報の仮想管理情報を実管理情報に変換し、当該実管理情報を用いて、前記第1の処理部に、前記補助記憶部から前記第2の処理対象の情報を前記所定記憶領域にキャッシュさせる請求項4に記載の情報処理装置。
  6. 前記第2の処理部は、前記第1の処理部から、前記第2の処理対象の情報がキャッシュされた前記所定記憶領域の物理アドレスを取得し、当該物理アドレスを用いて、前記所定記憶領域にキャッシュされた前記第2の処理対象の情報にアクセスする請求項5に記載の情報処理装置。
  7. 実環境上で動作する第1の処理部が、主記憶部の所定記憶領域に第1の処理対象の情報を読み出して処理し、前記実環境上で所定の機能を実現する第1の処理ステップと、
    前記実環境上に構築される仮想環境上で動作する第2の処理部が、前記第1の処理部に、前記主記憶部の前記所定記憶領域へ第2の処理対象の情報を読み出させ、前記所定記憶領域へ読み出された前記第2の処理対象の情報を処理し、前記仮想環境上で前記所定の機能を実現する第2の処理ステップと、
    を含む情報処理方法。
JP2014255586A 2014-12-17 2014-12-17 情報処理装置及び情報処理方法 Pending JP2016115286A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014255586A JP2016115286A (ja) 2014-12-17 2014-12-17 情報処理装置及び情報処理方法
US14/972,744 US20160179559A1 (en) 2014-12-17 2015-12-17 Information processing apparatus and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014255586A JP2016115286A (ja) 2014-12-17 2014-12-17 情報処理装置及び情報処理方法

Publications (1)

Publication Number Publication Date
JP2016115286A true JP2016115286A (ja) 2016-06-23

Family

ID=56129494

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014255586A Pending JP2016115286A (ja) 2014-12-17 2014-12-17 情報処理装置及び情報処理方法

Country Status (2)

Country Link
US (1) US20160179559A1 (ja)
JP (1) JP2016115286A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10318649B2 (en) 2017-04-18 2019-06-11 International Business Machines Corporation Implementing a secondary storage dentry cache
US11237963B2 (en) * 2019-02-01 2022-02-01 Red Hat, Inc. Shared filesystem metadata caching
KR20210045029A (ko) * 2019-10-16 2021-04-26 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 동작 방법

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10831721B2 (en) * 2009-03-23 2020-11-10 Riverbed Technology, Inc. Virtualized data storage system architecture
US9069596B2 (en) * 2009-11-17 2015-06-30 International Business Machines Corporation Hypervisor file system
KR101636878B1 (ko) * 2010-02-18 2016-07-06 삼성전자주식회사 가상화 환경에서의 데이터 처리 방법 및 드라이버
US8863117B2 (en) * 2010-07-19 2014-10-14 International Business Machines Corporation Optimizing a file system interface in a virtualized computing environment
US9069587B2 (en) * 2011-10-31 2015-06-30 Stec, Inc. System and method to cache hypervisor data
US9965490B2 (en) * 2013-07-31 2018-05-08 Oracle International Corporation Method and system for creating a virtual file system from a unified archive

Also Published As

Publication number Publication date
US20160179559A1 (en) 2016-06-23

Similar Documents

Publication Publication Date Title
TWI439939B (zh) 有效率的將資料載入計算系統之記憶體中
US20170322824A1 (en) Cloning Computing Device Containers
US11836112B2 (en) Path resolver for client access to distributed file systems
KR101517895B1 (ko) 어플리케이션 관련 데이터를 제공하는 단말기 및 방법
US8863117B2 (en) Optimizing a file system interface in a virtualized computing environment
WO2018176911A1 (zh) 一种虚拟磁盘文件格式转换方法和装置
US8897573B2 (en) Virtual machine image access de-duplication
US10216532B2 (en) Memory and resource management in a virtual computing environment
US9529618B2 (en) Migrating processes between source host and destination host using a shared virtual file system
US9612976B2 (en) Management of memory pages
US11372811B1 (en) Optimizing disk volume scanning using snapshot metadata
JP2016115286A (ja) 情報処理装置及び情報処理方法
CN111865649A (zh) 处理媒体内容的方法和装置、计算机设备和存储介质
US20170277632A1 (en) Virtual computer system control method and virtual computer system
CN112804375B (zh) 一种单网卡多ip的配置方法
CN115774701B (zh) 数据共享方法、装置、电子设备及存储介质
US9229757B2 (en) Optimizing a file system interface in a virtualized computing environment
US10319061B2 (en) Information processing apparatus and event management method
US11704408B1 (en) Threat scanning transplanted containers
TW202011233A (zh) 個人雲系統及其相關本地化方法
WO2015149407A1 (zh) 一种基于虚拟化技术的读写方法及系统
Bhatt et al. Performance consequence of user space file systems due to extensive CPU sharing in virtual environment
US20150116208A1 (en) Terminal apparatus, information processing apparatus, and display control method
CN111858967A (zh) 基于网络的媒体处理中处理媒体内容的方法、装置以及存储介质
KR20220038053A (ko) 커널 지원을 가진 지속 가능한 서비스들에 기초하여 회복성 운영 시스템을 구축하는 방법