JP6802052B2 - 透明で安全なインターセプション処理のための方法、コンピュータ・システム、ファームウェア、ハイパーバイザおよびコンピュータ・プログラム - Google Patents
透明で安全なインターセプション処理のための方法、コンピュータ・システム、ファームウェア、ハイパーバイザおよびコンピュータ・プログラム Download PDFInfo
- Publication number
- JP6802052B2 JP6802052B2 JP2016239502A JP2016239502A JP6802052B2 JP 6802052 B2 JP6802052 B2 JP 6802052B2 JP 2016239502 A JP2016239502 A JP 2016239502A JP 2016239502 A JP2016239502 A JP 2016239502A JP 6802052 B2 JP6802052 B2 JP 6802052B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- data
- firmware
- memory
- state
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 63
- 238000004590 computer program Methods 0.000 title claims description 12
- 239000000872 buffer Substances 0.000 claims description 126
- 230000004044 response Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 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
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0623—Securing storage systems in relation to content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- 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/45583—Memory management, e.g. access or allocation
-
- 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/45587—Isolation or security of virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Automation & Control Theory (AREA)
- Stored Programmes (AREA)
Description
仮想マシンVMを、ハイパーバイザおよびファームウェアを含む環境において展開するステップであって、ハイパーバイザはハードウェア上で動作し、ファームウェアはハードウェアと仮想マシンの状態とを管理し、仮想マシンは環境の対応するVMメモリにアクセスするように構成されている、展開するステップと、
仮想マシンを展開する際には、ハイパーバイザによって、ファームウェアにバッファを提供するステップと、
仮想マシンのVM命令を実行するステップと、
VM命令のうちの、命令データへのアクセスを要求するVM命令を、ファームウェアによってインターセプトするステップであって、命令データは、VMメモリに記憶されているVMデータと仮想マシンの状態であるVM状態の少なくとも一部との少なくとも一方を含む、インターセプトするステップと、
VM命令がインターセプトされる際には、ファームウェアによって、VM状態を、ファームウェアが有するシャドウVM状態バッファにコピーするステップと、
ファームウェアにより、命令データをバッファにコピーするステップと、
バッファを用いて、インターセプトされたVM命令をハイパーバイザによって実行するステップと、
インターセプトされたVM命令の実行が結果的に結果データを生じさせる場合には、インターセプトされたVM命令に続いてVM命令の実行を再開する前に、シャドウVM状態バッファとVMメモリにおけるVMデータとの少なくとも一方を、バッファにおける結果データを用いて、更新するステップと、
シャドウVM状態バッファに記憶されている状態に基づき、インターセプトされたVM命令に続いて、VM命令の実行を再開するステップと、
を含む。
コンピュータ・システムにおいて、コンピュータ・システムの対応するVMメモリにアクセスするように構成されている仮想マシンVMを展開し、
仮想マシンを展開する際には、バッファをファームウェアに提供し、
仮想マシンのVM命令を実行する、
ように構成される。
ファームウェアは、インターセプトされたVM命令の実行が結果的に結果データを生じさせる場合には、インターセプトされたVM命令に続いてVM命令の実行を再開する前に、シャドウVM状態バッファとVMメモリにおけるVMデータとの少なくとも一方を、バッファにおける結果データを用いて、更新する、ように構成される。
仮想マシンのVM命令のうちの、VMメモリに記憶されているVMデータと仮想マシンの状態であるVM状態の少なくとも一部との少なくとも一方を含む命令データへのアクセスを要求するVM命令をインターセプトし、
VM状態を、ファームウェアが有するシャドウVM状態バッファにコピーし、
命令データをバッファにコピーし、
インターセプトされたVM命令に続いてVM命令の実行を再開する前に、シャドウVM状態バッファとVMメモリにおけるVMデータとの少なくとも一方を、インターセプトされたVM命令の実行の結果を用いて、更新し、
シャドウVM状態バッファに記憶されている状態に基づいて、インターセプトされたVM命令に続いてVM命令の実行を再開する、ように構成される。
コンピュータ・システムにおいて、仮想マシンVMを展開し、
コンピュータ・システムの対応するVMメモリにアクセスするように仮想マシンを構成し、
仮想マシンを展開する際には、バッファをコンピュータ・システムのファームウェアに提供し、
仮想マシンのVM命令を実行し、
バッファを用いて、VM命令のうちの、インターセプトされたVM命令を実行し、
シャドウVM状態バッファに記憶されている状態に基づいて、インターセプトされたVM命令に続いてVM命令の実行を再開する、ように構成される。
仮想マシンVMを、ハイパーバイザおよびファームウェアを含む環境において展開することであって、ハイパーバイザはハードウェア上で動作し、ファームウェアはハードウェアと仮想マシンの状態とを管理し、仮想マシンは環境の対応するVMメモリにアクセスするように構成されている、展開することと、
仮想マシンを展開する際には、ファームウェアにバッファを提供することと、
仮想マシンのVM命令を実行することと、
VM命令のうちの、命令データへのアクセスを要求するVM命令をインターセプトすることであって、命令データは、VMメモリに記憶されているVMデータと仮想マシンの状態であるVM状態の少なくとも一部との少なくとも一方を含む、インターセプトすることと、
VM命令がインターセプトされる際には、VM状態を、ファームウェアが有するシャドウVM状態バッファにコピーすることと、
命令データをバッファにコピーすることと、
バッファを用いて、インターセプトされたVM命令を実行することと、
インターセプトされたVM命令の実行が結果的に結果データを生じさせる場合には、インターセプトされたVM命令に続いてVM命令の実行を再開する前に、シャドウVM状態バッファとVMメモリにおけるVMデータとの少なくとも一方を、バッファにおける結果データを用いて、更新することと、
シャドウVM状態バッファに記憶されている状態に基づき、インターセプトされたVM命令に続いて、VM命令の実行を再開することと、
を行うように実行可能である、コンピュータ・プログラム製品に関する。
仮想マシンVMを、ハイパーバイザおよびファームウェアを含む環境において展開するステップであって、ハイパーバイザはハードウェア上で動作し、ファームウェアはハードウェアと仮想マシンの状態とを管理し、仮想マシンは環境の対応するVMメモリにアクセスするように構成されている、展開するステップと、
仮想マシンを展開する際には、ハイパーバイザによって、ファームウェアにバッファを提供するステップと、
仮想マシンのVM命令を実行するステップと、
VM命令のうちの、命令データへのアクセスを要求するVM命令を、ファームウェアによってインターセプトするステップであって、命令データは、VMメモリに記憶されているVMデータと仮想マシンの状態であるVM状態の少なくとも一部との少なくとも一方を含む、インターセプトするステップと、
VM命令がインターセプトされる際には、ファームウェアによって、VM状態を、ファームウェアが有するシャドウVM状態バッファにコピーするステップと、
ファームウェアにより、命令データをバッファにコピーするステップと、
バッファを用いて、インターセプトされたVM命令をハイパーバイザによって実行するステップと、
インターセプトされたVM命令の実行が結果的に結果データを生じさせる場合には、インターセプトされたVM命令に続いてVM命令の実行を再開する前に、シャドウVM状態バッファとVMメモリにおけるVMデータとの少なくとも一方を、バッファにおける結果データを用いて、更新するステップと、
シャドウVM状態バッファに記憶されている状態に基づき、インターセプトされたVM命令に続いて、VM命令の実行を再開するステップと、
を含む方法。
ファームウェアによって、VM状態の少なくとも一部を、シャドウVM状態バッファからVM状態バッファにコピーするステップと、
命令データが、VMメモリに記憶されているVMデータを含む場合には、ファームウェアによって、VMデータを、VMメモリからメモリ・プールにコピーするステップと、
ファームウェアによって、VM状態バッファにおいて、VMメモリにおけるデータへの第1のアドレスを、メモリ・プールにおける対応する第2のアドレスによって置換するステップと、
を含む、特徴の組合せ1に記載の方法。
メモリ・プールにおける処理されたVMデータを結果データが含むという判断に応答して、処理されたVMデータの少なくとも一部を、メモリ・プールから第1のアドレスの関連するアドレスへ、ファームウェアによって、コピーするステップと、
VM状態バッファに記憶されている結果データの少なくとも一部を、ファームウェアによって、シャドウVM状態バッファにコピーするステップと、
シャドウVM状態バッファにおいて、第2のアドレスのアドレスを、VMメモリにおけるデータへの対応するアドレスに、ファームウェアによって、置換するステップと、
を含む、特徴の組合せ2に記載の方法。
122 チップセット
602 プロセッサ
608 コンピュータ可読記憶媒体
610 オペレーティング・システム
611 アプリケーション・プログラム
612 デバイス・ドライバ
614 R/Wドライブまたはインターフェース
616 ネットワーク・アダプタまたはインターフェース
617 ネットワーク・アダプタまたはインターフェース
626 ポータブル・コンピュータ可読記憶媒体
800 ハードウェアおよびソフトウェア
870 仮想化
880 管理
890 ワークロード
Claims (13)
- 透明で安全なインターセプション処理のためのコンピュータ実装方法であって、
仮想マシンVMを、ハイパーバイザおよびファームウェアを含む環境において展開するステップであって、前記ハイパーバイザはハードウェア上で動作し、前記ファームウェアは前記ハードウェアと前記仮想マシンの状態とを管理し、前記仮想マシンは前記環境の対応するVMメモリにアクセスするように構成されている、前記展開するステップと、
前記仮想マシンを展開する際には、前記ハイパーバイザによって、前記ファームウェアにバッファを提供するステップと、
前記仮想マシンのVM命令を実行するステップと、
前記VM命令のうちの、命令データへのアクセスを要求するVM命令を、前記ファームウェアによってインターセプトするステップであって、前記命令データは、前記VMメモリに記憶されているVMデータと前記仮想マシンの前記状態であるVM状態の少なくとも一部との少なくとも一方を含む、前記インターセプトするステップと、
前記VM命令が前記インターセプトされる際には、前記ファームウェアによって、前記VM状態を、前記ファームウェアが有するシャドウVM状態バッファにコピーするステップと、
前記ファームウェアにより、前記命令データを前記バッファにコピーするステップと、
前記バッファを用いて、前記インターセプトされたVM命令を前記ハイパーバイザによって実行するステップと、
前記インターセプトされたVM命令の前記実行が結果的に結果データを生じさせる場合には、前記インターセプトされたVM命令に続いて前記VM命令の実行を再開する前に、前記シャドウVM状態バッファと前記VMメモリにおける前記VMデータとの少なくとも一方を、前記バッファにおける前記結果データを用いて、更新するステップと、
前記シャドウVM状態バッファに記憶されている前記状態に基づき、前記インターセプトされたVM命令に続いて、前記VM命令の実行を再開するステップと、
を含む方法。 - 前記バッファはVM状態バッファとメモリ・プールとを含んでおり、前記命令データを前記バッファにコピーするステップは、
前記ファームウェアによって、前記VM状態の少なくとも一部を、前記シャドウVM状態バッファから前記VM状態バッファにコピーするステップと、
前記命令データが、前記VMメモリに記憶されているVMデータを含む場合には、前記ファームウェアによって、前記VMデータを、前記VMメモリから前記メモリ・プールにコピーするステップと、
前記ファームウェアによって、前記VM状態バッファにおいて、前記VMメモリにおけるデータへの第1のアドレスを、前記メモリ・プールにおける対応する第2のアドレスによって置換するステップと、
を含む、請求項1に記載の方法。 - 前記シャドウVM状態バッファと前記VMメモリにおける前記VMデータとの少なくとも一方を更新するステップは、
前記メモリ・プールにおける処理されたVMデータを前記結果データが含むという判断に応答して、前記処理されたVMデータの少なくとも一部を、前記メモリ・プールから前記第1のアドレスの関連するアドレスへ、前記ファームウェアによって、コピーするステップと、
前記VM状態バッファに記憶されている前記結果データの少なくとも一部を、前記ファームウェアによって、前記シャドウVM状態バッファにコピーするステップと、
前記シャドウVM状態バッファにおいて、前記第2のアドレスのアドレスを、前記VMメモリにおけるデータへの対応するアドレスに、前記ファームウェアによって、置換する
ステップと、
を含む、請求項2に記載の方法。 - 前記処理されたVMデータの前記少なくとも一部は、前記インターセプトされたVM命令を用いて前記ファームウェアによって決定された予測データと、前記インターセプトされたVM命令の引数とを含む、請求項3に記載の方法。
- 前記命令データは、前記インターセプトされたVM命令と前記インターセプトされたVM命令の引数とを用いて、前記ファームウェアによって決定される、請求項1に記載の方法。
- 前記仮想マシンを展開する際には、前記ハイパーバイザが前記VMメモリにアクセスすることを防止するステップをさらに含む、請求項1に記載の方法。
- 前記メモリ・プールと前記VM状態のための前記バッファとにおける未使用のデータ位置を、前記ファームウェアによって、フェイク・データを用いて満たすステップをさらに含む、請求項2に記載の方法。
- 前記フェイク・データは、ランダム・データとゼロとの少なくとも一方を含む、請求項7に記載の方法。
- 前記インターセプトされたVM命令を前記ハイパーバイザによって実行するステップは、前記インターセプトされたVM命令に続く前記VM命令の前記実行を再開することを前記ハイパーバイザによって要求するステップをさらに含む、請求項1に記載の方法。
- 前記ファームウェアによって、前記仮想マシンの前記状態を、前記ファームウェアが有する前記シャドウVM状態バッファにコピーするステップは、前記仮想マシンのために仮想CPUであるvCPUをセットアップする際に、または、前記vCPU上で前記VM命令を実行する際に、実行される、請求項1に記載の方法。
- 請求項1〜10の何れか1項に記載の方法の各ステップを、コンピュータ・ハードウェアによる手段として構成した、コンピュータ・システム。
- 請求項1〜10の何れか1項に記載の方法の各ステップを、コンピュータに実行させる、コンピュータ・プログラム。
- 請求項12に記載の前記コンピュータ・プログラムを、コンピュータ可読記録媒体に記録した、記録媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/972,280 US10019279B2 (en) | 2015-12-17 | 2015-12-17 | Transparent secure interception handling |
US14/972280 | 2015-12-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017111812A JP2017111812A (ja) | 2017-06-22 |
JP6802052B2 true JP6802052B2 (ja) | 2020-12-16 |
Family
ID=58222145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016239502A Active JP6802052B2 (ja) | 2015-12-17 | 2016-12-09 | 透明で安全なインターセプション処理のための方法、コンピュータ・システム、ファームウェア、ハイパーバイザおよびコンピュータ・プログラム |
Country Status (3)
Country | Link |
---|---|
US (2) | US10019279B2 (ja) |
JP (1) | JP6802052B2 (ja) |
GB (1) | GB2546609B (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10019279B2 (en) | 2015-12-17 | 2018-07-10 | International Business Machines Corporation | Transparent secure interception handling |
US11188651B2 (en) * | 2016-03-07 | 2021-11-30 | Crowdstrike, Inc. | Hypervisor-based interception of memory accesses |
US11099789B2 (en) | 2018-02-05 | 2021-08-24 | Micron Technology, Inc. | Remote direct memory access in multi-tier memory systems |
US10782908B2 (en) | 2018-02-05 | 2020-09-22 | Micron Technology, Inc. | Predictive data orchestration in multi-tier memory systems |
US10877892B2 (en) | 2018-07-11 | 2020-12-29 | Micron Technology, Inc. | Predictive paging to accelerate memory access |
US11176054B2 (en) | 2019-03-08 | 2021-11-16 | International Business Machines Corporation | Host virtual address space for secure interface control storage |
US11068310B2 (en) | 2019-03-08 | 2021-07-20 | International Business Machines Corporation | Secure storage query and donation |
US10956188B2 (en) | 2019-03-08 | 2021-03-23 | International Business Machines Corporation | Transparent interpretation of guest instructions in secure virtual machine environment |
US11455398B2 (en) | 2019-03-08 | 2022-09-27 | International Business Machines Corporation | Testing storage protection hardware in a secure virtual machine environment |
US11182192B2 (en) | 2019-03-08 | 2021-11-23 | International Business Machines Corporation | Controlling access to secure storage of a virtual machine |
US11283800B2 (en) | 2019-03-08 | 2022-03-22 | International Business Machines Corporation | Secure interface control secure storage hardware tagging |
US10852949B2 (en) | 2019-04-15 | 2020-12-01 | Micron Technology, Inc. | Predictive data pre-fetching in a data storage device |
US10915426B2 (en) | 2019-06-06 | 2021-02-09 | International Business Machines Corporation | Intercepting and recording calls to a module in real-time |
US11036619B2 (en) | 2019-06-06 | 2021-06-15 | International Business Machines Corporation | Bypassing execution of a module in real-time |
US11074069B2 (en) | 2019-06-06 | 2021-07-27 | International Business Machines Corporation | Replaying interactions with transactional and database environments with re-arrangement |
US11016762B2 (en) | 2019-06-06 | 2021-05-25 | International Business Machines Corporation | Determining caller of a module in real-time |
US10929126B2 (en) | 2019-06-06 | 2021-02-23 | International Business Machines Corporation | Intercepting and replaying interactions with transactional and database environments |
CN110955885B (zh) * | 2019-11-28 | 2022-11-22 | 亚信科技(成都)有限公司 | 一种数据写入方法及装置 |
US11449601B2 (en) * | 2020-01-08 | 2022-09-20 | Red Hat, Inc. | Proof of code compliance and protected integrity using a trusted execution environment |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4792895A (en) | 1984-07-30 | 1988-12-20 | International Business Machines Corp. | Instruction processing in higher level virtual machines by a real machine |
US5371867A (en) | 1992-11-10 | 1994-12-06 | International Business Machines Corporation | Method of using small addresses to access any guest zone in a large memory |
US7103529B2 (en) * | 2001-09-27 | 2006-09-05 | Intel Corporation | Method for providing system integrity and legacy environment emulation |
US8627315B2 (en) | 2004-12-31 | 2014-01-07 | Intel Corporation | Apparatus and method for cooperative guest firmware |
JP2008181228A (ja) | 2007-01-23 | 2008-08-07 | Sony Corp | 管理システムおよび管理方法、端末装置、管理サーバ、並びにプログラム |
US8127292B1 (en) | 2007-06-22 | 2012-02-28 | Parallels Holdings, Ltd. | Virtualization system with hypervisor embedded in bios or using extensible firmware interface |
JP4678396B2 (ja) | 2007-09-25 | 2011-04-27 | 日本電気株式会社 | 仮想マシンモニタをモニタするコンピュータとその方法、および仮想マシンモニタモニタプログラム |
US8607013B2 (en) | 2007-10-30 | 2013-12-10 | Vmware, Inc. | Providing VMM access to guest virtual memory |
CN101179379A (zh) | 2007-12-11 | 2008-05-14 | 中兴通讯股份有限公司 | 用于微波接入全球互通系统的固件安全管理方法 |
CN101470783B (zh) | 2007-12-25 | 2010-09-01 | 中国长城计算机深圳股份有限公司 | 一种基于可信平台模块的身份识别方法及装置 |
US8479196B2 (en) | 2009-09-22 | 2013-07-02 | International Business Machines Corporation | Nested virtualization performance in a computer system |
EP2348450B1 (en) | 2009-12-18 | 2013-11-06 | CompuGroup Medical AG | Database system, computer system, and computer-readable storage medium for decrypting a data record |
US8671405B2 (en) * | 2010-03-31 | 2014-03-11 | Microsoft Corporation | Virtual machine crash file generation techniques |
US8909928B2 (en) | 2010-06-02 | 2014-12-09 | Vmware, Inc. | Securing customer virtual machines in a multi-tenant cloud |
US8856504B2 (en) | 2010-06-07 | 2014-10-07 | Cisco Technology, Inc. | Secure virtual machine bootstrap in untrusted cloud infrastructures |
US8490090B2 (en) | 2011-02-17 | 2013-07-16 | International Business Machines Corporation | Multilevel support in a nested virtualization environment |
US8875240B2 (en) | 2011-04-18 | 2014-10-28 | Bank Of America Corporation | Tenant data center for establishing a virtual machine in a cloud environment |
US8788763B2 (en) | 2011-10-13 | 2014-07-22 | International Business Machines Corporation | Protecting memory of a virtual guest |
EP2795464B1 (en) | 2011-12-22 | 2019-01-23 | Intel Corporation | Enabling efficient nested virtualization |
EP2798860A1 (en) | 2011-12-29 | 2014-11-05 | Telefonaktiebolaget LM Ericsson (Publ) | Virtual machine management using a downloadable subscriber identity module |
US20140053272A1 (en) | 2012-08-20 | 2014-02-20 | Sandor Lukacs | Multilevel Introspection of Nested Virtual Machines |
US9389898B2 (en) | 2012-10-02 | 2016-07-12 | Ca, Inc. | System and method for enforcement of security controls on virtual machines throughout life cycle state changes |
GB2515536A (en) | 2013-06-27 | 2014-12-31 | Ibm | Processing a guest event in a hypervisor-controlled system |
US9203855B1 (en) | 2014-05-15 | 2015-12-01 | Lynx Software Technologies, Inc. | Systems and methods involving aspects of hardware virtualization such as hypervisor, detection and interception of code or instruction execution including API calls, and/or other features |
US9841987B2 (en) | 2015-12-17 | 2017-12-12 | International Business Machines Corporation | Transparent secure interception handling |
US10019279B2 (en) | 2015-12-17 | 2018-07-10 | International Business Machines Corporation | Transparent secure interception handling |
-
2015
- 2015-12-17 US US14/972,280 patent/US10019279B2/en active Active
-
2016
- 2016-12-08 GB GB1620899.3A patent/GB2546609B/en active Active
- 2016-12-09 JP JP2016239502A patent/JP6802052B2/ja active Active
-
2018
- 2018-06-07 US US16/002,120 patent/US10838755B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US10019279B2 (en) | 2018-07-10 |
GB201620899D0 (en) | 2017-01-25 |
GB2546609B (en) | 2019-03-13 |
US20180285143A1 (en) | 2018-10-04 |
US10838755B2 (en) | 2020-11-17 |
US20170177392A1 (en) | 2017-06-22 |
JP2017111812A (ja) | 2017-06-22 |
GB2546609A (en) | 2017-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6802052B2 (ja) | 透明で安全なインターセプション処理のための方法、コンピュータ・システム、ファームウェア、ハイパーバイザおよびコンピュータ・プログラム | |
US9841987B2 (en) | Transparent secure interception handling | |
US9529620B1 (en) | Transparent virtual machine offloading in a heterogeneous processor | |
JP7386882B2 (ja) | セキュア仮想マシン環境におけるゲスト命令の透過的解釈 | |
JP7465046B2 (ja) | 割り込み及び例外をセキュア仮想マシンにインジェクトする | |
CN113826072A (zh) | 系统管理模式中的代码更新 | |
AU2020234887B2 (en) | Dispatch of a secure virtual machine | |
US11119810B2 (en) | Off-the-shelf software component reuse in a cloud computing environment | |
US11656888B2 (en) | Performing an application snapshot using process virtual machine resources | |
US20230015103A1 (en) | Live updating a virtual machine virtualizing physical resources | |
US11960917B2 (en) | Live migration and redundancy for virtualized storage | |
表祐志 | Computer Systems Management with a Para Pass-through Virtual Machine Monitor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190513 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200311 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200407 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200615 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20201124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201126 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6802052 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |