JP2007183952A - ゲストがメモリ変換されたデバイスにアクセスする方法及び装置 - Google Patents
ゲストがメモリ変換されたデバイスにアクセスする方法及び装置 Download PDFInfo
- Publication number
- JP2007183952A JP2007183952A JP2006349813A JP2006349813A JP2007183952A JP 2007183952 A JP2007183952 A JP 2007183952A JP 2006349813 A JP2006349813 A JP 2006349813A JP 2006349813 A JP2006349813 A JP 2006349813A JP 2007183952 A JP2007183952 A JP 2007183952A
- Authority
- JP
- Japan
- Prior art keywords
- access
- shadow
- guest
- logic
- memory
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
- G06F12/1441—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/145—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
【解決手段】
上記課題を解決するため、本発明は、デバイスに変換されたメモリアドレスを利用した前記デバイスにアクセスするゲストの試みに応答して、アクセスタイプに基づき、前記アクセスが許可されるか判断する評価ロジックと、前記アクセスは許可されないと前記評価ロジックが判断した場合、前記ゲストからホストに当該装置の制御を移行するイグジットロジックとから構成されることを特徴とする装置を提供する。
【選択図】 図1
Description
110 ベアプラットフォームハードウェア
120 プロセッサ
130 メモリ
132 VMCS
150 VM(バーチャルマシーン)
160 VMM(バーチャルマシーンモニタ)
Claims (20)
- デバイスに変換されたメモリアドレスを利用した前記デバイスにアクセスするゲストの試みに応答して、アクセスタイプに基づき、前記アクセスが許可されるか判断する評価ロジックと、
前記アクセスは許可されないと前記評価ロジックが判断した場合、前記ゲストからホストに当該装置の制御を移行するイグジットロジックと、
から構成されることを特徴とする装置。 - 請求項1記載の装置であって、
前記アクセスタイプは、リードアクセス、ライトアクセス、実行アクセス、リード変更ライトアクセス、非明示的アクセス及び明示的アクセスの少なくとも1つを含み、
前記評価ロジックは、前記アクセスが所定のタイプを有する場合、前記アクセスが許可されると判断する、
ことを特徴とする装置。 - 請求項2記載の装置であって、
前記所定のタイプは、リードアクセスタイプであることを特徴とする装置。 - 請求項2記載の装置であって、さらに、
前記試みからのデータをシャドウ位置に書き込ませるシャドウロジックを有することを特徴とする装置。 - 請求項4記載の装置であって、
前記シャドウロジックは、前記ゲストからホストへの当該装置の制御の移行前に、前記試みからのデータをシャドウ位置に書き込ませることを特徴とする装置。 - 請求項1記載の装置であって、
前記アクセスタイプは、シャドウアクセス、部分的シャドウアクセス及び非シャドウアクセスの少なくとも1つを含み、
前記評価ロジックは、前記アクセスが前記シャドウアクセスタイプを有する場合、前記アクセスが許可されると判断する、
ことを特徴とする装置。 - 請求項1記載の装置であって、さらに、
前記評価ロジックの判断に関係なく、コンフィギュレーション標識に基づき、前記イグジットロジックに前記ゲストからホストに当該装置の制御を移行させるコンフィギュレーションロジックを有することを特徴とする装置。 - 請求項6記載の装置であって、
当該装置は、インタラプトコントローラを有し、
前記シャドウアクセスタイプは、タスク優先度を示す位置のみへのアクセスを有し、
前記部分的シャドウアクセスタイプは、前記タスク優先度を示す位置と前記タスク優先度を示す位置以外の位置へのアクセスを有する、
ことを特徴とする装置。 - 請求項2記載の装置であって、
当該装置は、インタラプトコントローラを有し、
前記所定のタイプは、ライトアクセスタイプであり、
前記アクセスは、タスク優先度を示す位置に対するものであり、
前記アクセスは、シャドウ位置に対して許可され、
前記イグジットロジックはまた、前記アクセスが許可された後、前記ゲストからホストに当該装置の制御を移行する、
ことを特徴とする装置。 - デバイスに変換されるメモリアドレスを利用して、前記デバイスにアクセスする試みを検出するステップと、
アクセスタイプに基づき、前記アクセスが許可されているか判断するステップと、
前記アクセスが許可されていない場合、前記ゲストからホストに制御を移行するステップと、
から構成されることを特徴とする方法。 - 請求項10記載の方法であって、
前記アクセスタイプは、リードアクセス、ライトアクセス、実行アクセス、リード変更ライトアクセス、非明示的アクセス及び明示的アクセスの少なくとも1つを含むことを特徴とする方法。 - 請求項11記載の方法であって、
前記判断するステップは、前記アクセスが所定のタイプを有するか判断することから構成されることを特徴とする方法。 - 請求項11記載の方法であって、
前記アクセスがリードタイプのものである場合、前記アクセスが許可されることを特徴とする方法。 - 請求項10記載の方法であって、さらに、
前記試みからのデータをシャドウ位置に書き込むステップを有することを特徴とする方法。 - 請求項10記載の方法であって、
前記アクセスタイプは、シャドウアクセス、部分的シャドウアクセス及び非シャドウアクセスの少なくとも1つを有することを特徴とする方法。 - 請求項15記載の方法であって、
前記判断するステップは、前記アクセスがシャドウアクセスタイプのものである場合、前記アクセスが許可されると判断することから構成されることを特徴とする方法。 - メモリと、
デバイスに変換されたメモリアドレスを利用した前記デバイスにアクセスするゲストの試みに応答して、アクセスタイプに基づき、前記アクセスが許可されるか判断する評価ロジックと、前記アクセスは許可されないと前記評価ロジックが判断した場合、前記ゲストからホストに当該プロセッサの制御を移行するイグジットロジックとを有するプロセッサと、
から構成されることを特徴とするシステム。 - 請求項17記載のシステムであって、
前記プロセッサはさらに、前記試みからのデータを前記メモリのシャドウ位置に書き込むシャドウロジックを有することを特徴とするシステム。 - 請求項17記載のシステムであって、
前記メモリは、前記ゲストに対するバーチャルマシーンの制御構造を格納することを特徴とするシステム。 - 請求項19記載のシステムであって、
前記制御構造は、前記イグジットロジックが、前記評価ロジックの判断に関係なく、前記ゲストからホストに前記プロセッサの制御を移行するか示す標識を有することを特徴とするシステム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/322,757 US7506121B2 (en) | 2005-12-30 | 2005-12-30 | Method and apparatus for a guest to access a memory mapped device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007183952A true JP2007183952A (ja) | 2007-07-19 |
JP4668166B2 JP4668166B2 (ja) | 2011-04-13 |
Family
ID=38214071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006349813A Expired - Fee Related JP4668166B2 (ja) | 2005-12-30 | 2006-12-26 | ゲストがメモリ変換されたデバイスにアクセスする方法及び装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7506121B2 (ja) |
JP (1) | JP4668166B2 (ja) |
CN (1) | CN1991808B (ja) |
DE (1) | DE102006061939B4 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8510827B1 (en) | 2006-05-18 | 2013-08-13 | Vmware, Inc. | Taint tracking mechanism for computer security |
US9354927B2 (en) * | 2006-12-21 | 2016-05-31 | Vmware, Inc. | Securing virtual machine data |
US9098347B2 (en) | 2006-12-21 | 2015-08-04 | Vmware | Implementation of virtual machine operations using storage system functionality |
US9189265B2 (en) | 2006-12-21 | 2015-11-17 | Vmware, Inc. | Storage architecture for virtual machines |
US8099574B2 (en) * | 2006-12-27 | 2012-01-17 | Intel Corporation | Providing protected access to critical memory regions |
US8386664B2 (en) * | 2008-05-22 | 2013-02-26 | International Business Machines Corporation | Reducing runtime coherency checking with global data flow analysis |
US8281295B2 (en) * | 2008-05-23 | 2012-10-02 | International Business Machines Corporation | Computer analysis and runtime coherency checking |
US8285670B2 (en) * | 2008-07-22 | 2012-10-09 | International Business Machines Corporation | Dynamically maintaining coherency within live ranges of direct buffers |
US8117346B2 (en) | 2008-10-03 | 2012-02-14 | Microsoft Corporation | Configuration space virtualization |
US20110225464A1 (en) * | 2010-03-12 | 2011-09-15 | Microsoft Corporation | Resilient connectivity health management framework |
US20120047313A1 (en) * | 2010-08-19 | 2012-02-23 | Microsoft Corporation | Hierarchical memory management in virtualized systems for non-volatile memory models |
US8762797B2 (en) * | 2011-04-29 | 2014-06-24 | Google Inc. | Method and apparatus for detecting memory access faults |
US9113164B1 (en) | 2012-05-15 | 2015-08-18 | Google Inc. | Constant bit rate control using implicit quantization values |
US9510019B2 (en) | 2012-08-09 | 2016-11-29 | Google Inc. | Two-step quantization and coding method and apparatus |
US9253483B2 (en) | 2012-09-25 | 2016-02-02 | Google Technology Holdings LLC | Signaling of scaling list |
US9407915B2 (en) | 2012-10-08 | 2016-08-02 | Google Inc. | Lossless video coding with sub-frame level optimal quantization values |
US9053065B2 (en) * | 2012-12-10 | 2015-06-09 | Vmware, Inc. | Method for restoring virtual machine state from a checkpoint file |
US9053064B2 (en) * | 2012-12-10 | 2015-06-09 | Vmware, Inc. | Method for saving virtual machine state to a checkpoint file |
US10102613B2 (en) | 2014-09-25 | 2018-10-16 | Google Llc | Frequency-domain denoising |
DE102015223335A1 (de) * | 2015-11-25 | 2017-06-01 | Robert Bosch Gmbh | Verfahren zum Betreiben eines Mikrocontrollers |
US11042495B2 (en) * | 2019-09-20 | 2021-06-22 | Advanced Micro Devices, Inc. | Providing interrupts from an input-output memory management unit to guest operating systems |
GB2591490B (en) * | 2020-01-30 | 2022-03-02 | Advanced Risc Mach Ltd | An apparatus and method for controlling access to a set of memory mapped control registers |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030217250A1 (en) * | 2002-04-16 | 2003-11-20 | Steve Bennett | Control register access virtualization performance improvement in the virtual-machine architecture |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5828900A (en) * | 1996-01-03 | 1998-10-27 | Intel Corporation | International multiple-byte character generator support in application sharing which distinguishes guest keyboard input from host key board and bypassing execution of the generator module when guest keyboard input is determined |
US7818808B1 (en) * | 2000-12-27 | 2010-10-19 | Intel Corporation | Processor mode for limiting the operation of guest software running on a virtual machine supported by a virtual machine monitor |
US7277999B1 (en) * | 2004-08-12 | 2007-10-02 | Vmware, Inc. | Restricting memory access to protect data when sharing a common address space |
-
2005
- 2005-12-30 US US11/322,757 patent/US7506121B2/en active Active
-
2006
- 2006-12-26 JP JP2006349813A patent/JP4668166B2/ja not_active Expired - Fee Related
- 2006-12-29 DE DE102006061939.0A patent/DE102006061939B4/de active Active
- 2006-12-30 CN CN2006100640963A patent/CN1991808B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030217250A1 (en) * | 2002-04-16 | 2003-11-20 | Steve Bennett | Control register access virtualization performance improvement in the virtual-machine architecture |
Also Published As
Publication number | Publication date |
---|---|
JP4668166B2 (ja) | 2011-04-13 |
DE102006061939A1 (de) | 2007-09-13 |
US20070156986A1 (en) | 2007-07-05 |
US7506121B2 (en) | 2009-03-17 |
CN1991808A (zh) | 2007-07-04 |
DE102006061939B4 (de) | 2022-07-14 |
CN1991808B (zh) | 2011-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4668166B2 (ja) | ゲストがメモリ変換されたデバイスにアクセスする方法及び装置 | |
JP5735070B2 (ja) | パーティション分割されたシステムにおいて、デバイスがメモリにアクセスするための、ゲスト・アドレスからホスト・アドレスへの変換 | |
US8543790B2 (en) | System and method for cooperative virtual machine memory scheduling | |
US7111145B1 (en) | TLB miss fault handler and method for accessing multiple page tables | |
US7467381B2 (en) | Resource partitioning and direct access utilizing hardware support for virtualization | |
US8706941B2 (en) | Interrupt virtualization | |
JP5214611B2 (ja) | 仮想マシン環境におけるゲスト間での情報の共有 | |
US8127098B1 (en) | Virtualization of real mode execution | |
JP5122597B2 (ja) | 仮想プロセッサへの直接的なインタラプトの送信 | |
EP3584708B1 (en) | Protection key management and prefixing in virtual address space legacy emulation system | |
EP2955634B1 (en) | Paravirtualization-based interface for memory management in virtual machines | |
US8370559B2 (en) | Executing a protected device model in a virtual machine | |
US20130145051A1 (en) | Direct Device Assignment | |
WO2011082165A1 (en) | Systems and methods implementing shared or non-shared page tables for sharing memory resources managed by a main operating system with accelerator devices | |
Kegel et al. | Virtualizing io through io memory management unit (iommu) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100518 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100813 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100818 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100921 |
|
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: 20101214 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110112 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140121 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4668166 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |