JP2022077995A - 方法、コンピュータプログラム、およびコンピュータシステム(下層ホストシンボルレポジトリに基づくゲスト構成における特定の値の仮想化) - Google Patents
方法、コンピュータプログラム、およびコンピュータシステム(下層ホストシンボルレポジトリに基づくゲスト構成における特定の値の仮想化) Download PDFInfo
- Publication number
- JP2022077995A JP2022077995A JP2021183084A JP2021183084A JP2022077995A JP 2022077995 A JP2022077995 A JP 2022077995A JP 2021183084 A JP2021183084 A JP 2021183084A JP 2021183084 A JP2021183084 A JP 2021183084A JP 2022077995 A JP2022077995 A JP 2022077995A
- Authority
- JP
- Japan
- Prior art keywords
- symbol
- file
- virtual guest
- based file
- stage
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000004590 computer program Methods 0.000 title claims description 15
- 238000006467 substitution reaction Methods 0.000 claims abstract description 19
- 230000004044 response Effects 0.000 claims abstract description 5
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 230000006399 behavior Effects 0.000 claims description 2
- 230000001066 destructive effect Effects 0.000 claims 3
- 238000010586 diagram Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 101150016889 PARM1 gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
- G06F16/152—File search processing using file content signatures, e.g. hash values
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/156—Query results presentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/188—Virtual file systems
- G06F16/196—Specific adaptations of the file system to access devices and non-file objects via standard file system access operations, e.g. pseudo file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45545—Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox
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)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【課題】下層のホストシンボル置換値に基づいて、ゲスト構成の特定の値を仮想化する。
【解決手段】方法は、仮想ゲストのトラディショナルファイルシステムに位置するシンボリックリンクを開く。シンボルベースのファイルの各シンボルは、トラディショナルファイルシステムからシンボリックリンクを介してアクセスすることによりシンボルベースのファイルから抽出される。仮想ゲストは、ハイパーバイザストレージに格納されるシンボルテーブルから置換値を取得するように、シンボルベースのファイルにおける各シンボルに関するハイパーバイザへの特権つき命令を発する。各シンボルに関する置換値は、仮想ゲストに戻され、シンボルベースのファイルにおいてシンボルを置換する。トラディショナルファイルに関するファイル読み出し要求に応じて、置換値が、トラディショナルファイルからシンボリックリンクを使用して、シンボルベースのファイルから取得される。
【選択図】図2
【解決手段】方法は、仮想ゲストのトラディショナルファイルシステムに位置するシンボリックリンクを開く。シンボルベースのファイルの各シンボルは、トラディショナルファイルシステムからシンボリックリンクを介してアクセスすることによりシンボルベースのファイルから抽出される。仮想ゲストは、ハイパーバイザストレージに格納されるシンボルテーブルから置換値を取得するように、シンボルベースのファイルにおける各シンボルに関するハイパーバイザへの特権つき命令を発する。各シンボルに関する置換値は、仮想ゲストに戻され、シンボルベースのファイルにおいてシンボルを置換する。トラディショナルファイルに関するファイル読み出し要求に応じて、置換値が、トラディショナルファイルからシンボリックリンクを使用して、シンボルベースのファイルから取得される。
【選択図】図2
Description
本発明の実施形態は概してコンピュータシステムに関し、より具体的にはファイルの仮想化に関する。
仮想ゲスト環境において、特定のゲストインスタンスに一意的な構成情報が、ゲストファイルシステム内の様々な位置のファイルにセーブされる。これらのファイルは、仮想ゲストインスタンス内で実行されるシステムおよびアプリケーションによってローカルにアクセスおよび管理される。多数の仮想ゲストインスタンスを有する環境において、これらの一意的な構成ファイルが、仮想ゲストインスタンスのそれぞれに関して個別に管理される。
リモートファイルシステム機能は、ネットワーク共有を介して複数のシステムにわたってファイルシステムコンテンツを共有するように利用され得る。しかしながら、共有はディレクトリまたはファイルシステム基準に基づいて生じ、個別のファイルに関して、あるいはフィールドレベルで利用可能ではない。ネットワーク共有はまた、信頼性および下層ネットワークの速度に依存する。
特に、方法が提供される。方法は、トラディショナルファイルシステムに位置する、実ファイルを開く仮想ゲストを含む。各シンボルは、シンボルベースのファイルシステムに位置するシンボルベースのファイルから抽出される。シンボルベースのファイルは、シンボルベースのファイルシステムにおいて対応するファイルにリンクする、トラディショナルファイルシステムにおけるシンボリックリンクを介してアクセスされる。仮想ゲストは、ハイパーバイザストレージに格納されるシンボルテーブルから置換値を取得するように、シンボルベースのファイルにおける各シンボルに関するハイパーバイザへの特権つき命令を発する。各シンボルに関する置換値は、仮想ゲストがシンボルベースのファイルを読み込むときに仮想ゲストに戻される。トラディショナルファイルに関するファイル読み出し要求に応じて、置換値が、トラディショナルファイルシステムにおけるシンボリックリンクを使用して、シンボルベースのファイルから取得される。
実施形態は、上で説明されたコンピュータ実装方法と実質的に同じ特徴を有するコンピュータシステムと、コンピュータプログラム製品とをさらに対象とする。
追加の特徴および利点は、本明細書において説明される技術を通じて実現される。他の実施形態および態様は、本明細書において詳細に説明される。より良い理解のために、明細書および図面を参照されたい。
本発明とみなされる主題は、本明細書の終末において、特許請求の範囲の中で、特に指し示されると共に、明確に主張される。前述のおよび他の特徴および利点は、添付図面と併用される以下の具体的な説明から明らかである。
本開示は、概して、仮想化されたコンピューティング環境の分野に関する。仮想化されたコンピューティング環境において、仮想ゲストともまた称される仮想マシンは、オペレーティングシステムおよびハードウェアデバイスと共に、実際のコンピュータのように動作する。実際のコンピュータにおいてと同じく、各仮想ゲストは、仮想ゲストの動作を構成する多数のファイルを含む。そのような構成情報は、ゲストIPアドレス、ネットワーク構成、DNS構成、レゾルバ構成、および仮想ゲストインスタンスに一意的な、非常に様々な他のシステムおよびアプリケーション関連の構成(LDAP、Docker、レジストリ)を含む。これらのファイルは、仮想ゲスト上の仮想ゲストおよびアプリケーションによってローカルにアクセスおよび管理される。
大規模なコンピューティング環境において、これらの一意的な構成ファイルおよび共通ファイルは、仮想ゲストにわたって複製され、別々に管理される。現在の実務において、Network File System(NFS)などのネットワーク共有は、構成情報を含むファイルを複数のシステムにエクスポートし得る。しかしながら、ネットワーク共有はディレクトリレベルで動作し、個別のファイルレベルまたはファイル内のフィールドレベルでは動作しない。ネットワーク共有はまた、下層ネットワークにおける信頼性および速度に依存し、データ転送はデフォルトでは平文で送られるので、保護が難しい。
本発明の実施形態は、構成ファイルがホスト環境にローカルに管理されることを可能にする、専門のシンボルベースのファイルシステムを提供し、したがって、構成ファイルは、複数の仮想ゲストインスタンスにわたってそれを複製するネットワークに依存しない。仮想ゲストとホストの間でローカルに保護されたインタフェースは、構成ファイルにおける値を取得する、もしくは解決する、またはその組み合わせのように使用され、それにより、ネットワークアクセスが必要でないため、拡張されたセキュリティおよび信頼性を提供する。また、仮想ゲストは、ディレクトリにレベルの共有の限定に依存しない。仮想ゲストは、その構成ファイルおよび構成パラメータにトランスペアレントにアクセスする。これは、構成ファイルのおける構成パラメータがアップデートされたとき、構成ファイルが通常の実行方式で開かれた各時点で、仮想ゲストにおけるダウンタイムを必要とすることなく、修正が仮想ゲストに反映されることを意味する。トラディショナルファイルシステムにおけるシンボリックリンクの使用は、構成ファイルが仮想ゲストにおけるシンボルベースのファイルシステムに位置することを許容する。しかしながら、シンボルベースのファイルは、シンボルベースのファイルシステムのマウントポイントの下に位置する。同様に、シンボルベースのファイルシステムを介して、構成パラメータはホスト上でインスタンス化されたすべての仮想ゲストにグローバルに共有され得、または、ホスト上のある仮想ゲストにカスタマイズされ得る。加えて、グローバルな共有は、多数の仮想ゲストに関する構成ファイルおよび構成パラメータが、中心的に管理され得、クラウド環境における利点となり得ることを意味する。したがって、本発明の実施形態は、仮想ゲスト環境におけるシステム管理の技術を、特にそれがクラウド実装にあてはまるときに、改善する傾向がある。
本発明の実施形態は、図に関連してより詳細に説明されるであろう。
図1は、本発明の一実施形態による例示的な仮想化環境(システム)100の機能ブロック図である。
示されるように、システム100は1または複数のコンピュータシステム/サーバ(サーバ)12を含み、そのうち1つが示される。サーバ12は、ハイパーバイザ10を含むことが可能な任意のコンピュータを含み得、それはサーバ12のハードウェアを仮想化して、ゲスト1 205およびゲスト2 205などの、1または複数の任意の仮想ゲストをサポートすることを可能にする。
サーバ12の機能およびプロセスは、特定のタスクを行う、または、特定の抽象データタイプを実装する、プログラムモジュール、ルーティン、オブジェクト、データ構造および論理などのコンピュータシステム実行可能な命令に関連して、説明されてよい。サーバ12は、分散されたクラウドコンピューティング環境の部分であり得、ハイパーバイザ10がサーバ12上にインストールされるとき、複数の仮想ゲストの生成を可能にし得る。
図1に示されるように、サーバ12は、これに限定されるものではないが、1または複数のプロセッサまたは処理ユニット16、システムメモリ28、および、システムメモリ28を含む様々なシステム構成要素をプロセッサ16に結合するバス18を含み得る。
バス18は、メモリバスまたはメモリコントローラ、ペリフェラルバス、アクセラレーテッドグラフィックスポート、および、様々なバスアーキテクチャのいずれかを使用するプロセッサまたはローカルバスを含む、いくつかのタイプのバス構造のうちの1または複数を表す。
サーバ12は、通常は、様々なコンピュータシステム可読媒体を含む。そのような媒体は、コンピュータシステム/サーバ12によりアクセスできる任意の利用可能な媒体でよく、揮発性および不揮発性の媒体、取り外し可能および取り外し不可能な媒体の両方を含む。
メモリ28は、ランダムアクセスメモリ(RAM)30もしくはキャッシュメモリ32またはその組み合わせなどの揮発性メモリの形態でのコンピュータシステム可読媒体を含み得る。サーバ12は、他の取り外し可能/取り外し不可能、揮発性/不揮発性コンピュータシステムストレージ媒体をさらに含んでよい。例えば、ストレージシステム34は、取り外し不可能な不揮発性の磁気媒体、例えば、「ハードドライブ」と、光ディスクドライブであって、CD-ROM、DVD-ROMまたは他の光媒体などの取り外し可能な不揮発性の光ディスクから読み取る/に書き込むための光ディスクドライブとを含み得る。ストレージシステム34内の各デバイスは、1または複数のデータ媒体インタフェース、例えばI/Oインタフェース22などにより、バス18と接続され得る。
各プログラム40(その1つが示される)は、ストレージシステム34に格納された複数のプログラムのうちの1つを表し、実行のためにメモリ28にロードされる。プログラム40は、オペレーティングシステム、アプリケーション、システムユーティリティまたは類似物などのインスタンスを含む。各プログラム40は、1または複数のモジュール42を含む。シンボルテーブル11のデータは、ストレージシステム34上に格納され得る。仮想ゲストの作動の際に、ハイパーバイザ10は、シンボルテーブル11のデータをハイパーバイザ10のメモリにロードさせ、仮想ゲストの構成パラメータに追加するように利用可能とする。サーバ12がハイパーバイザ10を含む場合さえも、仮想ゲストは任意であることに留意すべきである。他の構成が可能である。
サーバ12はまた、キーボード、ポインティングデバイス、もしくはサーバ12を1または複数の他のコンピューティングデバイスと通信可能にする任意のデバイス(例えばネットワークカード、モデムなど)、またはその組み合わせなどの1または複数の外部デバイス14と通信し得る。そのような通信は、入出力(I/O)インタフェース22を介して生じ得る。
管理コンソール24は、仮想ゲストの構成および状態を管理するように、I/Oインタフェース22を介してサーバ12のハイパーバイザ10の構成要素と通信する専門のソフトウェアを含む。管理コンソール24を使用して、適切なセキュリティ承認を有する管理者は、仮想ゲストに関する構成値である、シンボルおよびそれらの対応する置換値を定義する。シンボルおよびそれらの対応する置換値は、サーバ12上のストレージシステム34に格納され得る。定義されたシンボルおよびそれらの対応する置換値は、シンボルテーブル11としてハイパーバイザ10のメモリを格納する。また、作動の際、そして図2から図3を参照してさらに説明されるように、シンボルベースのファイルシステムおよび関連付けられたシンボリックリンクが構成される。
サーバ12は、ネットワークアダプタ20を介して1または複数のネットワークと通信し得る。示されるように、ネットワークアダプタ20はバス18を介してサーバ12の他の構成要素と通信する。示されてはいないが、他のハードウェアもしくはソフトウェアまたはその組み合わせのコンポーネントは、サーバ12と併用されるかもしれない。例は、マイクロコード、デバイスドライバ、冗長処理ユニット、外部ディスクドライブアレイ、RAIDシステム、テープドライバ、およびデータアーカイブストレージシステムを含むが、それに限定されるものではない。本発明において、サーバ12は物理的ハードウェアおよびソフトウェア実装を示し得る。サーバ12はまた、物理サーバの仮想的実装、例えば、仮想マシンまたは仮想ゲストを示し得る。
図2は、本発明の一実施形態による、シンボルベースのファイルシステムを有する仮想ゲストインスタンスを示す。
図2は、2つの仮想ゲスト(複数のゲスト)205、ゲスト1およびゲスト2を示す。各ゲスト205は、図1のサーバ12などの、物理サーバ上でインスタンス化される。各ゲスト205は、論理ファイルシステム層215を含む。論理ファイルシステムは、異なるデータストレージアーキテクチャを有する下層の物理ストレージデバイスにも関わらず一様な方式で、ゲスト205またはサーバ12のオペレーティングシステムにファイルシステムデータを示す。サーバ(ホスト)12上のハイパーバイザ10は、各ゲスト205において、トラディショナルファイルシステム225およびシンボルベースのファイルシステム220の双方を実装する。トラディショナルファイルシステムは、データの平文値の変更なしに、下層のストレージ媒体へデータを格納し、およびそこからデータを取得するものとみなされ得る。対照的に、シンボルベースのファイルシステム220は、格納されたデータの各フィールドを、ストレージ媒体から読み出されたものと解釈し、ハイパーバイザ10を介してシンボルテーブル11から動的に取得される値で、特別にコーディングされたシンボルを置換する。図2に示されるように、ハイパーバイザ10は、ゲスト205によって編成されるシンボルテーブル11を格納および管理する。シンボルテーブル11は、ここでは「&abcd.」であり、ゲスト205ファイル210において示されるシンボルと、ここではゲスト1に関する「1.1.1.1」およびゲスト2に関する「2.2.2.2」である置換値とを含む。この例は、異なる仮想ゲスト上のファイルが同じシンボルを含む場合でさえも、シンボルが仮想ゲストによって編成されるので、シンボルは異なる置換値を有し得ることを示す。240に示されるように、シンボルベースのファイルシステム220は、シンボルを含むファイル210を開くように、アプリケーションまたはオペレーティングシステムからのシステムコールを解釈する。次に、シンボルベースのファイルシステムは、ハイパーバイザ10への特権つきコールを介して、ハイパーバイザ10からシンボル値を取得する。各シンボルごとの置換値が、仮想ゲストにおけるコール元へ戻される。
図3は、本発明の一実施形態による、トラディショナルファイルシステム225とシンボルベースのファイルシステム220との間の関係を示す。
ファイルツリーは、310に示されるように、トラディショナルファイルシステム225におけるファイルの実際の位置およびシンボリックリンクを表す。これらのファイルは、「/etc/hosts」および「/etc/resolv.conf」などのシステム構成ファイルを含む。しかしながら、ファイルは、アプリケーション構成ファイルなどの他のタイプのファイルを含み得る。ファイルの位置は、「/etc」ディレクトリに限定されるものではない。ファイル「x」「y.txt」および「z」は、シンボルベースのファイルシステム220に格納されたファイルである。330に示されるように、シンボルベースのファイルシステム220上のファイルは、アプリケーションまたはオペレーティングシステムに必要とされるパラメータを含む。いくつかのパラメータは、「Parm1=localなどを明示的に含み得るが、「Parm2=&abcd.」などのいくつかのパラメータはシンボルであり得る。要素340は、それがトラディショナルファイルシステムにおいてシンボリックリンクを介して読み出されたとして、シンボル解決の後のファイルの結果の様子を示す。例えば、「Parm2=&abcd.」は、今は「Parm2=1.1.1.1」として解決される。トラディショナルファイルシステム225における各シンボリックリンクは、アプリケーションまたはオペレーティングシステムが、パラメータに関する実際の値を含むと予期して想定する場所に位置する。したがって、シンボルおよび置換処理は、アプリケーション/オペレーティングシステムにトランスペアレントである。
図3は、2つのシンボリックリンク320を示す。シンボリックリンク320は、シンボルベースのファイルシステム220において適切なファイルを参照するように、トラディショナルファイルシステム225において作成される。アプリケーション/オペレーティングシステムが、シンボリックリンク320の1つを開くようにシステムコールを発するとき、コールは、リンクされたファイルを管理するシンボルベースのファイルシステム220にリダイレクトされる。リンクされたシンボルベースのファイルがストレージからメモリに読み出されるとき、シンボルベースのファイルシステム220は、特定の埋め込みシンボルへと、フィールドからフィールドにコンテンツを試す。特定の各シンボルに関して、ハイパーバイザ10は特権つき命令を介してコールされ、特権つき命令のフォーマットおよびコンテンツは、アーキテクチャの実装に従う。特権つき命令は、どのゲスト205の項目をシンボルテーブル11から取得するべきかを、一意的に特定するメタデータオペランドを含む。一意に特定されるゲスト205項目を位置決めする際、ハイパーバイザ10は、解決値を、シンボルをメモリにおいて解決済みの値に置換するシンボルベースのファイルシステムに戻す。開かれたシンボリックリンクのコンテンツを読み出す任意の後続のコールは、アプリケーション/オペレーティングシステムコール元に解決済コンテンツを戻す。
適切なセキュリティ承認を有する管理者は、ゲスト205がアクティブな間、シンボルテーブル11を維持(追加/アップデート/削除)し得ることに留意すべきである。その場合において、ファイルを開く次のコールは、存在するシンボリックリンクを使用し得るものを除いて、シンボルがリフレッシュされるように、上で説明された初期化処理を再び実行させるであろう。
図4は、本発明の一実施形態によるシンボルベースのファイルシステムを初期化するフローである。
410において、管理コンソール24の専門のソフトウェアは、構成シンボルおよび対応する置換値を受信する。各仮想ゲストは、データの中で特に、仮想ゲストを開始および処理する一意的な識別子およびユーザIDを含む、一意的なプロファイルに関連付けられる。仮想化実装に依存して、追加データは一意的なジョブ名および一意的なプロセス識別子などの、一意的なプロファイルと関連付けられ得る。
415において、ホストシステム(サーバ12)上のハイパーバイザ10は、対応する置換値によって、ハイパーバイザ10メモリにおけるシンボルテーブル11を生成する。シンボルテーブル11は、各シンボル定義がどのように解決されるかを示すゲストプロファイルと共に使用されるハッシュテーブルとして編成され得る。シンボルテーブル11は、システムが開始する各時点においてシンボルテーブル11に再入力しなければならないことを避けるように、システムストレージ34へと持続する。持続したフォーマットは、簡潔なファイル、テーブル、または関連性データベースにおけるテーブルのセット、または任意の他の適切な表現でありえる。
420において、ハイパーバイザ10は、各仮想ゲスト上のシンボルベースのファイルシステムに、構成シンボルを含むファイルを作成する。この作成されたファイルは、シンボルベースのファイルシステムにおける任意の場所に位置し得る。
430において、トラディショナルファイルシステム225におけるファイル位置から、シンボルベースのファイルシステム220において作成されたファイルへのシンボリックリンクが、作成される。トラディショナルファイルシステムにおけるファイル位置は、DNS「resolv.conf」に関する「/etc」などの、オペレーティングシステムまたはアプリケーションが、ファイルがあると予期した場所である。シンボリックリンク作成は自動化されてもよく、または、適切な権限を有する管理者によって手動で実行されてもよい。
図5は、本発明の一実施形態による、仮想ゲストインスタンスにおけるシンボルを解決するフローである。
505において、オペレーティングシステムまたはアプリケーションは、予期された位置、例えば「/etc/resolv.conf」において構成ファイルを開く要求を発する。要求は、「fopen」などの、知られているファイルシステムアクセス方法を使用して発せられる。
510において、ファイルシステムアクセス方法、例えば「fopen」は、「/etc/resolv.conf」を開く。「fopen」がシンボリックリンクを開くとき、要求はシンボルベースのファイルシステム220へ転送される。
515において、各シンボルに関して、シンボルベースのファイルシステムにおける「fopen」は、特定のゲスト205におけるコール元に関して対応する置換値を取得するように、ハイパーバイザ10への特権つき命令を実行する。
520において、ファイルにアクセスしている仮想ゲストに関する一意的なプロファイルに基づいて、ハイパーバイザ10はシンボルテーブル11を検索する。
525において、ハイパーバイザ10はシンボル置換を行い、置換値は仮想ゲストに戻される。
530において、シンボル置換が完了し、「fopen」処理は終了する。シンボル置換はメモリにあり、持続していない。
535において、例えば「/etc/resolv.conf」を開く「fopen」のコール元は、ファイルが成功裏に開かれた旨の表示を、「fopen」処理から受信する。この場合、後続の読み出し動作は置換値を戻す。
管理者が、仮想ゲストまたはオペレーティングシステムの動作を中断することなく、シンボルおよび置換値を修正可能なことに留意すべきである。この場合、置換値は、ファイルが開かれた各時点で仮想ゲストにおいてリフレッシュされる。
発明の様々な実施形態は、システムバスを通じてメモリ素子と直接または間接に結合した少なくとも1つのプロセッサを含む、プログラムコードの格納もしくは実行またはその組み合わせに適したデータ処理システム内で、実装されてよい。メモリ素子は、例えば、プログラムコードを実際に実行する間に利用されるローカルメモリと、大容量記憶装置と、実行中にコードが大容量記憶装置から取得されなければならない回数を減らすべく、少なくとも一部のプログラムコードの一時的なストレージを提供するキャッシュメモリとを含む。
入出力またはI/Oデバイス(キーボード、ディスプレイ、ポインティングデバイス、DASD、テープ、CD、DVD、サムドライブおよび他のメモリ媒体などを含むが、これに限定されるものではない)は、直接、または、間にあるI/Oコントローラを通じて、システムと結合され得る。ネットワークアダプタもまた、データ処理システムが他のデータ処理システムまたはリモートプリンタまたはストレージデバイスと結合されることを可能するために、間にあるプライベートまたはパブリックネットワークを通じて、システムと結合され得る。モデム、ケーブルモデムおよびイーサネット(登録商標)カードは、利用可能なネットワークアダプタのタイプのほんの一部にすぎない。
本発明は、統合のあらゆる可能な技術的詳細レベルにおけるシステム、方法、もしくはコンピュータプログラム製品、またはその組み合わせであってよい。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体(または複数の媒体)を含んでよい。
コンピュータ可読記憶媒体は、命令実行デバイスによって使用される命令を保持及び格納できる有形のデバイスであり得る。コンピュータ可読記憶媒体は、例えばであって、限定されるものではないが、電子ストレージデバイス、磁気ストレージデバイス、光学ストレージデバイス、電磁ストレージデバイス、半導体ストレージデバイスまたは上述のものの任意の好適な組み合わせであり得る。コンピュータ可読記憶媒体のより具体的な例の網羅的な列挙は、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)ポータブルコンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピディスク、パンチカードまたはそこに記録された命令を有する溝内の隆起構造などの機械的に暗号化されたデバイス、および、上述のものの任意の好適な組み合わせを含む。本明細書で使用されるコンピュータ可読記憶媒体は、無線波または他の自由に伝搬される電磁波、導波路または他の送信媒体(例えば、ファイバ光ケーブルを通して通過する光パルス)を通して伝搬される電磁波または配線を通して送信される電気信号などの、一時的信号それ自体として解釈されないものとする。
本明細書において説明されるコンピュータ可読プログラム命令は、例えばインターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、もしくは無線ネットワーク、またはその組み合わせなどのネットワークを介して、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスへダウンロードされ得るか、または、外部コンピュータもしくは外部ストレージデバイスへダウンロードされ得る。当該ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、もしくはエッジサーバ、またはその組み合わせを備え得る。各コンピューティング/処理デバイスにおけるネットワークアダプタカードまたはネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に格納するためのコンピュータ可読プログラム命令を転送する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、または、1または複数のプログラミング言語の任意の組み合わせで書かれたソースコード若しくはオブジェクトコードのいずれかであってよい。1または複数のプログラミング言語は、Smalltalk(登録商標)、C++などのようなオブジェクト指向プログラミング言語と、「C」プログラミング言語または同様のプログラミング言語などのような手順型プログラミング言語とを含む。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で完全に実行され得るか、スタンドアロンのソフトウェアパッケージとして部分的にユーザのコンピュータ上で実行され得るか、部分的にユーザのコンピュータ上で、かつ、部分的にリモートコンピュータ上で実行され得るか、または、リモートコンピュータもしくはサーバ上で完全に実行され得る。後者のシナリオにおいて、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを通じてユーザのコンピュータに接続されてもよく、接続は、外部コンピュータ(例えば、インターネットサービスプロバイダを使用するインターネットを通じて)行われてもよい。いくつかの実施形態において、本発明の態様を行うべく、例えばプログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)またはプログラマブルロジックアレイ(PLA)を含む電子回路は、電子回路をパーソナライズためのコンピュータ可読プログラム命令の状態情報を利用することで、コンピュータ可読プログラム命令を実行してよい。
本発明の態様は、本明細書において、発明の実施形態による方法、装置(システム)、および、コンピュータプログラム製品のフローチャート図もしくはブロック図またはその組み合わせを参照して説明されている。フローチャート図もしくはブロック図またはその組み合わせの各ブロック、ならびに、フローチャート図もしくはブロック図またはその組み合わせのブロックの組み合わせは、コンピュータ可読プログラム命令によって実装され得ることを理解すべきである。
マシンを生成するためにこれらのコンピュータ可読プログラム命令をコンピュータのプロセッサまたは他のプログラム可能なデータ処理装置に提供して、コンピュータのプロセッサまたは他のプログラム可能なデータ処理装置を介して実行される命令が、フローチャートもしくはブロック図またはその組み合わせのブロックまたは複数のブロックにおいて特定される機能/動作を実装するための手段を作成するようにしてよい。また、これらのコンピュータ可読プログラム命令は、格納された命令を有するコンピュータ可読記憶媒体が、フローチャートもしくはブロック図またはその組み合わせのブロックまたは複数のブロックにおいて特定される機能/動作の態様を実装する命令を含む製品を備えるように、コンピュータ、プログラム可能なデータ処理装置、もしくは他のデバイス、またはその組み合わせが特定の方法で機能するように導き得るコンピュータ可読記憶媒体に格納され得る。
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラム可能なデータ処理装置または他のデバイスにロードされてよく、一連の動作ステップをコンピュータ、他のプログラム可能な装置または他のデバイス上で行わせて、コンピュータ実装処理を生成する。それにより、コンピュータ、他のプログラム可能な装置または他のデバイス上で実行される命令は、フローチャートもしくはブロック図またはその組み合わせのブロックまたは複数のブロックにおいて特定される機能/動作を実装する。
図面内のフローチャート及びブロック図は、本発明の様々な実施形態による、システム、方法、及び、コンピュータプログラム製品のあり得る実装のアーキテクチャ、機能、及び、動作を示す。これに関して、フローチャートまたはブロック図における各ブロックは、特定される論理機能を実装するための1または複数の実行可能な命令を備える命令のモジュール、セグメント、または部分を表す場合がある。いくつかの代替的な実装において、ブロックに記載された機能は、図に記載された順序から外れて生じてもよい。例えば、連続して示される2つのブロックが、実際には、1つの段階として実現されても、同時に、実質的に同時に、部分的にまたは全体的に時間的に重複した方式で実行されてもよく、これらのブロックが、関与する機能に応じて逆の順序で実行されることがあってもよい。また、ブロック図もしくはフローチャート図またはその組み合わせの各ブロック、ならびにブロック図もしくはフローチャート図またはその組み合わせにおけるブロックの組み合わせは、特定される機能もしくは行為を行う、または専門ハードウェアとコンピュータ命令との組み合わせを実行する専門ハードウェアベースのシステムによって実装され得ることに留意されたい。
好ましい実施形態は、図示および本明細書に詳細に説明したが、当業者にとって、開示の主旨から逸脱することなく、様々な修正、追加、置換などがされ得ることは、明らかである。したがって、これらは、以下の特許請求の範囲で定義されるように、開示の範囲内にあるとみなされる。
Claims (20)
- 仮想ゲストのトラディショナルファイルシステムに位置するシンボリックリンクを開く段階と、
シンボルベースのファイルから各シンボルを抽出する段階であって、前記シンボルベースのファイルはシンボルベースのファイルシステムに位置し、前記シンボルベースのファイルは前記トラディショナルファイルシステムにおけるシンボリックリンクを介してアクセスされる、段階と、
シンボルテーブルから置換値を取得するように、前記仮想ゲストから、前記シンボルベースのファイルにおける各シンボルに関するハイパーバイザへの特権つきコールを実行する段階であって、前記シンボルテーブルはハイパーバイザストレージに格納される、段階と、
各シンボルに関する前記置換値を前記仮想ゲストに戻す段階であって、前記置換値は前記シンボルベースのファイルにおけるシンボルを置換する、段階と、
前記トラディショナルファイルシステムにおける実ファイルに関する前記仮想ゲストからのファイル読み出し要求に応じて、前記実ファイルからの前記シンボリックリンクを使用して前記シンボルベースのファイルから前記置換値を取得する段階と、
を備える、方法。 - ホストシステム上のハイパーバイザストレージにおいて、前記シンボルテーブルを生成する段階であって、前記シンボルテーブルは、前記ホストシステム上で定義された各仮想ゲストに関するシンボルおよびその置換値を含む、段階と、
各仮想ゲスト上で、前記シンボルベースのファイルシステムにおける前記シンボルベースのファイルへの、前記トラディショナルファイルシステムにおける前記シンボリックリンクを作成する段階と、
各シンボルベースのファイルに、パラメータおよびそれらの対応する置換値を挿入する段階と、
をさらに備える、請求項1に記載の方法。 - 前記シンボルテーブルはハッシュテーブルである、請求項1または2に記載の方法。
- 前記シンボルテーブルは仮想ゲストプロファイルによって編成され、前記シンボルテーブルは前記ホストシステム上の各仮想ゲストに関する前記シンボルおよび解決値を含み、前記仮想ゲストプロファイルは各仮想ゲストを一意的に特定するメタデータを含む、請求項2に記載の方法。
- 前記シンボルテーブルへの修正は非破壊的であり、アクティブ仮想ゲストにトランスペアレントである、請求項1から4のいずれか一項に記載の方法。
- 前記シンボルは前記シンボルテーブルにおいて一意的ではない、請求項1から5のいずれか一項に記載の方法。
- 前記シンボルは、前記仮想ゲストにおいて、1より多くの異なるシンボルベースのファイルに含まれる、または、前記シンボルは同じシンボルベースのファイルにおいて1回より多く含まれる、請求項1から6のいずれか一項に記載の方法。
- 具現化されるプログラムコードを備えるコンピュータプログラムであって、前記プログラムコードは、コンピュータのプロセッサによって方法を行うことが実行可能であり、前記方法は、
仮想ゲストのトラディショナルファイルシステムにあるシンボリックリンクを開く段階と、
シンボルベースのファイルから各シンボルを抽出する段階であって、前記シンボルベースのファイルはシンボルベースのファイルシステムに位置し、前記シンボルベースのファイルは前記トラディショナルファイルシステムにおけるシンボリックリンクを介してアクセスされる、段階と、
シンボルテーブルから置換値を取得するように、前記仮想ゲストから、前記シンボルベースのファイルにおける各シンボルに関するハイパーバイザへの特権つきコールを実行する段階であって、前記シンボルテーブルはハイパーバイザストレージに格納される、段階と、
各シンボルからの置換値を前記仮想ゲストに戻す段階であって、前記置換値は前記シンボルベースのファイルにおけるシンボルを置換する、段階と、
前記トラディショナルファイルシステムにおける実ファイルに関する前記仮想ゲストからのファイル読み出し要求に応じて、前記実ファイルからの前記シンボリックリンクを使用して前記シンボルベースのファイルから前記置換値を取得する段階と、
を備える、コンピュータプログラム。 - ホストシステム上のハイパーバイザストレージにおいて、前記シンボルテーブルを生成する段階であって、前記シンボルテーブルは、前記ホストシステム上で定義された各仮想ゲストに関するシンボルおよびその置換値を含む、段階と、
各仮想ゲスト上で、前記シンボルベースのファイルシステムにおける前記シンボルベースのファイルへの、前記トラディショナルファイルシステムにおける前記シンボリックリンクを作成する段階と、
各シンボルベースのファイルに、パラメータおよびそれらの対応する置換値を挿入する段階と、
をさらに備える、請求項8に記載のコンピュータプログラム。 - 前記シンボルテーブルはハッシュテーブルである、請求項8または9に記載のコンピュータプログラム。
- 前記シンボルテーブルは仮想ゲストプロファイルによって編成され、前記シンボルテーブルは前記ホストシステム上の各仮想ゲストに関する前記シンボルおよび解決値を含み、前記仮想ゲストプロファイルは各仮想ゲストを一意的に特定するメタデータを含む、請求項9に記載のコンピュータプログラム。
- 前記シンボルテーブルへの修正は非破壊的であり、アクティブ仮想ゲストにトランスペアレントである、請求項8から11のいずれか一項に記載のコンピュータプログラム。
- 前記シンボルは前記シンボルテーブルにおいて一意的ではない、請求項8から12のいずれか一項に記載のコンピュータプログラム。
- 前記シンボルは、前記仮想ゲストにおいて、1より多くの異なるシンボルベースのファイルに含まれる、または、前記シンボルは同じシンボルベースのファイルにおいて1回より多く含まれる、請求項8から13のいずれか一項に記載のコンピュータプログラム。
- 1または複数のプロセッサ、
前記1または複数のプロセッサの少なくとも1つに結合されるメモリ、および、
前記メモリに格納され、
仮想ゲストのトラディショナルファイルシステムに位置するシンボリックリンクを開く動作と、
シンボルベースのファイルから各シンボルを抽出する段階であって、前記シンボルベースのファイルはシンボルベースのファイルシステムに位置し、前記シンボルベースのファイルは実ファイルからリンクを介してアクセスされる、動作と、
シンボルテーブルから置換値を取得するように、前記仮想ゲストから、前記シンボルベースのファイルにおける各シンボルに関するハイパーバイザへの特権つきコールを実行する段階であって、前記シンボルテーブルはハイパーバイザストレージに格納される、動作と、
各シンボルからの置換値を前記仮想ゲストに戻す段階であって、前記置換値は前記シンボルベースのファイルにおけるシンボルを置換する、動作と、
前記トラディショナルファイルシステムにおける前記実ファイルに関する前記仮想ゲストからのファイル読み出し要求に応じて、前記実ファイルからの前記シンボリックリンクを使用して前記シンボルベースのファイルから前記置換値を取得する動作と、
を行うべく前記1または複数のプロセッサの少なくとも1つによって実行されるコンピュータプログラム命令のセット
を備える、コンピュータシステム。 - ホストシステム上のハイパーバイザストレージにおいて、前記シンボルテーブルを生成する段階 であって、前記シンボルテーブルは、前記ホストシステム上で定義された各仮想ゲストに関するシンボルおよびその置換値を含む、段階と、
各仮想ゲスト上で、前記シンボルベースのファイルシステムにおける前記シンボルベースのファイルへの、前記トラディショナルファイルシステムにおける前記シンボリックリンクを作成する段階と、
各シンボルベースのファイルに、パラメータおよびそれらの対応する置換値を挿入する段階と、
をさらに備える、請求項15に記載のコンピュータシステム。 - 前記シンボルテーブルはハッシュテーブルである、請求項15または16に記載のコンピュータシステム。
- 前記シンボルテーブルは仮想ゲストプロファイルによって編成され、前記シンボルテーブルは前記ホストシステム上の各仮想ゲストに関する前記シンボルおよび解決値を含み、前記仮想ゲストプロファイルは各仮想ゲストを一意的に特定するメタデータを含む、請求項16に記載のコンピュータシステム。
- 前記シンボルテーブルへの修正は非破壊的であり、アクティブ仮想ゲストにトランスペアレントである、請求項15から18のいずれか一項に記載のコンピュータシステム。
- 前記シンボルは、前記仮想ゲストにおいて、1より多くの異なるシンボルベースのファイルに含まれる、または、前記シンボルは同じシンボルベースのファイルにおいて1回より多く含まれる、請求項15から19のいずれか一項に記載のコンピュータシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/095,867 US11544234B2 (en) | 2020-11-12 | 2020-11-12 | Virtualizing specific values in a guest configuration based on the underlying host symbol repository |
US17/095,867 | 2020-11-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022077995A true JP2022077995A (ja) | 2022-05-24 |
Family
ID=78806051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021183084A Pending JP2022077995A (ja) | 2020-11-12 | 2021-11-10 | 方法、コンピュータプログラム、およびコンピュータシステム(下層ホストシンボルレポジトリに基づくゲスト構成における特定の値の仮想化) |
Country Status (5)
Country | Link |
---|---|
US (1) | US11544234B2 (ja) |
JP (1) | JP2022077995A (ja) |
CN (1) | CN114489923A (ja) |
DE (1) | DE102021125606A1 (ja) |
GB (1) | GB2605223B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11544234B2 (en) | 2020-11-12 | 2023-01-03 | International Business Machines Corporation | Virtualizing specific values in a guest configuration based on the underlying host symbol repository |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6917963B1 (en) | 1999-10-05 | 2005-07-12 | Veritas Operating Corporation | Snapshot image for the application state of unshareable and shareable data |
US6891837B1 (en) * | 1999-10-05 | 2005-05-10 | Veritas Operating Corporation | Virtual endpoint |
US7099866B1 (en) | 2001-11-16 | 2006-08-29 | Hewlett-Packard Development Company, L.P. | Method of generating and presenting kernel data |
WO2004001584A2 (en) | 2002-06-24 | 2003-12-31 | Ante Vista Gmbh | A method for executing structured symbolic machine code on a microprocessor |
US20050256914A1 (en) | 2004-05-13 | 2005-11-17 | International Business Machines Corporation | Symbolic links with a plurality of addresses |
US7580826B2 (en) | 2004-06-30 | 2009-08-25 | Microsoft Corporation | Systems and methods for development of emulated devices in a virtual machine environment |
KR100746029B1 (ko) | 2006-01-11 | 2007-08-06 | 삼성전자주식회사 | 파일 시스템과 호환성을 유지하는 심볼릭 링크를 생성하는방법, 상기 심볼릭 링크를 이용하여 파일/디렉토리에접근하는 방법 및 장치 |
US7577686B1 (en) | 2006-02-10 | 2009-08-18 | Ringcube Technologies, Inc. | Dynamic table configuration in a virtual machine |
US9946493B2 (en) | 2008-04-04 | 2018-04-17 | International Business Machines Corporation | Coordinated remote and local machine configuration |
US8776038B2 (en) | 2008-08-07 | 2014-07-08 | Code Systems Corporation | Method and system for configuration of virtualized software applications |
CN101430649B (zh) | 2008-11-19 | 2011-09-14 | 北京航空航天大学 | 基于虚拟机的虚拟计算环境系统 |
US8954958B2 (en) | 2010-01-11 | 2015-02-10 | Code Systems Corporation | Method of configuring a virtual application |
AU2012211053A1 (en) * | 2011-01-27 | 2013-08-22 | L-3 Communications Corporation | Internet isolation for avoiding internet security threats |
US8769105B2 (en) * | 2012-09-14 | 2014-07-01 | Peaxy, Inc. | Software-defined network attachable storage system and method |
US9454670B2 (en) * | 2012-12-03 | 2016-09-27 | International Business Machines Corporation | Hybrid file systems |
US9268702B2 (en) * | 2013-04-11 | 2016-02-23 | Institute of Computer Science (ICS) of the Foundation for Research and Technology—Hellas (FORTH) | Storage I/O path partitioning to eliminate I/O interference in consolidated servers |
US9641385B1 (en) | 2013-12-16 | 2017-05-02 | Amazon Technologies, Inc. | Dynamic system configuration in a virtual environment |
WO2015130837A1 (en) * | 2014-02-25 | 2015-09-03 | Dynavisor, Inc. | Dynamic information virtualization |
CN104572876A (zh) | 2014-12-19 | 2015-04-29 | 珠海金山网络游戏科技有限公司 | 一种软件对应配置文件的读取方法和装置 |
US10742525B2 (en) | 2017-07-19 | 2020-08-11 | Citrix Systems, Inc. | Systems and methods for synthesizing resource templates using composable parts |
US11544234B2 (en) | 2020-11-12 | 2023-01-03 | International Business Machines Corporation | Virtualizing specific values in a guest configuration based on the underlying host symbol repository |
-
2020
- 2020-11-12 US US17/095,867 patent/US11544234B2/en active Active
-
2021
- 2021-10-04 DE DE102021125606.2A patent/DE102021125606A1/de active Pending
- 2021-10-15 CN CN202111201739.5A patent/CN114489923A/zh active Pending
- 2021-10-21 GB GB2115059.4A patent/GB2605223B/en active Active
- 2021-11-10 JP JP2021183084A patent/JP2022077995A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11544234B2 (en) | 2020-11-12 | 2023-01-03 | International Business Machines Corporation | Virtualizing specific values in a guest configuration based on the underlying host symbol repository |
Also Published As
Publication number | Publication date |
---|---|
GB2605223A (en) | 2022-09-28 |
CN114489923A (zh) | 2022-05-13 |
US11544234B2 (en) | 2023-01-03 |
US20220147496A1 (en) | 2022-05-12 |
DE102021125606A1 (de) | 2022-05-12 |
GB202115059D0 (en) | 2021-12-08 |
GB2605223B (en) | 2023-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11157449B2 (en) | Managing data in storage according to a log structure | |
US9575803B2 (en) | Determining an ordering to use to open and close programs that call other programs | |
US8726273B2 (en) | Space efficient virtual machines | |
US9606747B2 (en) | Importing pre-existing data of a prior storage solution into a storage pool for use with a new storage solution | |
US10223209B2 (en) | Splitting a clone having snapshots from a parent | |
US10176028B2 (en) | Upgrading a kernel or kernel module with a configured persistent memory unused by the kernel | |
US20190087209A1 (en) | Hypervisor-based just-in-time compilation | |
US10572178B2 (en) | Expiration handling for block level backup of virtual machines | |
US11321239B2 (en) | Dynamically joining and splitting dynamic address translation (DAT) tables based on operational context | |
US20200125382A1 (en) | Updating a nested virtualization manager using live migration of virtual machines | |
JP2022077995A (ja) | 方法、コンピュータプログラム、およびコンピュータシステム(下層ホストシンボルレポジトリに基づくゲスト構成における特定の値の仮想化) | |
AU2018341708B2 (en) | Policy based persistence | |
US9229753B2 (en) | Autonomic customization of properties of a virtual appliance in a computer system | |
US11294886B2 (en) | Fixing anomalies in a preserved data structure used to generate a temporary data structure during system initialization | |
US20210326271A1 (en) | Stale data recovery using virtual storage metadata | |
US8504757B1 (en) | Method for translating virtual storage device addresses to physical storage device addresses in a proprietary virtualization hypervisor | |
US10817600B2 (en) | Protecting stack memory in computer systems | |
US20200241875A1 (en) | Class data loading acceleration | |
US11567697B2 (en) | Prioritization of stored data during a delete process in a virtualized storage system | |
WO2023216776A1 (en) | Providing system services | |
US20240012666A1 (en) | Protecting container images and runtime data | |
US20170336979A1 (en) | Identifying pages in a migration management system | |
CN111045859A (zh) | 用于备份虚拟机的方法、设备和计算机程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20220518 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240411 |