JP2017511926A - 仮想化コンピューティング装置及び方法 - Google Patents
仮想化コンピューティング装置及び方法 Download PDFInfo
- Publication number
- JP2017511926A JP2017511926A JP2016553360A JP2016553360A JP2017511926A JP 2017511926 A JP2017511926 A JP 2017511926A JP 2016553360 A JP2016553360 A JP 2016553360A JP 2016553360 A JP2016553360 A JP 2016553360A JP 2017511926 A JP2017511926 A JP 2017511926A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- hypervisor
- code
- operating system
- virtual machine
- 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
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/126—Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0808—Multiuser, multiprocessor or multiprocessing cache systems with cache invalidating means
-
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/62—Details of cache specific to multiprocessor cache arrangements
- G06F2212/621—Coherency control relating to peripheral accessing, e.g. from DMA or I/O device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
Claims (26)
- 仮想化コンピューティング装置であって、
一以上のプロセッサコアと、
前記一以上のプロセッサコアに結合したキャッシュと、
前記一以上のプロセッサコアにより動作され、当該装置上の複数の仮想マシンの動作を管理するハイパーバイザであって、前記キャッシュの一部を選択して、該ハイパーバイザ又は該仮想マシンの一つの選択データ又はコードを記憶すること、及び、該キャッシュの一部をロックして、該選択データ又はコードがキャッシュから退去させられるのを防ぐことを含む、ハイパーバイザと、を含む装置。 - 前記ハイパーバイザは、前記仮想マシンの一つのゲストオペレーティングシステムのためのインタフェースを有し、該ゲストオペレーティングシステムの前記選択データ又はコードをロックする要求を、前記キャッシュの一部に要求する、請求項1に記載の装置。
- 前記ゲストオペレーティングシステムは、リアルタイムオペレーティングシステムである、請求項2に記載の装置。
- 前記ハイパーバイザは、前記仮想マシンの一つよりも、自分自身を優先して、前記キャッシュの一部にデータ又はコードを記憶する、請求項1に記載の装置。
- 前記ハイパーバイザは、直接データ入出力により使用されない一以上のウェイを選択することによって、前記キャッシュの一部を選択する、請求項1に記載の装置。
- 前記ハイパーバイザからの前記選択データ又はコードは、ディスパッチ機能、スケジューラ及び割り込みハンドラの少なくとも一つを含む、請求項1に記載の装置。
- 前記ハイパーバイザは、前記仮想マシンの一つのメモリ領域を前記キャッシュにロックする要求をするハイパーコールを含むハイパーコールインタフェースを含む、請求項1に記載の装置。
- 前記ハイパーバイザは、前記仮想マシンの一つのメモリ領域を前記キャッシュからアンロックする要求をするハイパーコールを含むハイパーコールインタフェースを含む、請求項1に記載の装置。
- 前記キャッシュは、前記キャッシュへのアクセスを制御するビットマスクを含むキャッシュサービス品質クラスに関連づけられる、請求項1から8のいずれか一項に記載の装置。
- 前記ハイパーバイザは、前記キャッシュサービス品質クラスの設定を通じて、前記キャッシュの部分をロックする、請求項9に記載の装置。
- 前記ハイパーバイザは、前記仮想マシンの一つから前記キャッシュサービス品質クラスへの直接接触をトラップする、請求項9に記載の装置。
- 仮想化コンピューティング方法であって、
コンピューティングシステムのハイパーバイザによって、共有キャッシュの一部を選択して、該ハイパーバイザ又は該ハイパーバイザの管理下において該コンピューティングシステム上で動作する仮想マシンの選択データ又はコードを記憶する工程と、
前記ハイパーバイザによって、前記共有キャッシュの一部をロックして、前記ハイパーバイザ又は前記仮想マシンの前記選択データ又はコードが前記共有キャッシュから退去させられることを防ぐ工程と、を含む方法。 - 前記ハイパーバイザが、前記仮想マシンのゲストオペレーティングシステムから、該ゲストオペレーティングシステムの前記選択データ又はコードをロックする、前記共有キャッシュへの要求を受信する工程を、さらに含む請求項12に記載の方法。
- 前記受信する工程は、ハイパーコールインタフェースを通じて、前記ゲストオペレーティングシステムによって管理される仮想メモリの領域を前記共有キャッシュ内でロックすることを要求するハイパーコールを受信する工程を含む、請求項13に記載の方法。
- 前記ハイパーバイザが、前記ハイパーコールインタフェースを通じて、前記ゲストオペレーティングシステムによって管理される仮想メモリの領域を前記共有キャッシュ内でアンロックすることを要求するハイパーコールを受信する工程を含む、請求項14に記載の方法。
- 前記ゲストオペレーティングシステムは、リアルタイムオペレーティングシステムである、請求項15に記載の方法。
- 前記ハイパーバイザは、前記仮想マシンよりも優先して、前記共有キャッシュの一部を用いる工程、さらに含む請求項12に記載の方法。
- 前記ロックする工程は、キャッシュサービス品質クラス内で前記共有キャッシュの一部を無効化する工程を含む、請求項12に記載の方法。
- 前記キャッシュサービス品質クラスは、前記共有キャッシュへのアクセスを制御するビットマスクを含む、請求項18に記載の方法。
- 前記ロックする工程は、前記ハイパーバイザによって、前記仮想マシンから前記共有キャッシュのキャッシュサービス品質クラスへの直接接触をトラップする工程を含む、請求項12に記載の方法。
- 前記ハイパーバイザからの前記選択データ又はコードは、ディスパッチ機能、スケジューラ及び割り込みハンドラの少なくとも一つを含む、請求項12に記載の方法。
- 前記共有キャッシュの一部を選択する工程は、直接データ入出力により使用されない一以上のウェイ選択する工程を含む、請求項12に記載の方法。
- 仮想化コンピューティング装置であって、
コンピューティングシステムのハイパーバイザによって、共有キャッシュの一部を選択して、該ハイパーバイザ又は該ハイパーバイザの管理下において該コンピューティングシステム上で動作する仮想マシンの選択データ又はコードを記憶する手段と、
前記ハイパーバイザによって、前記共有キャッシュの一部をロックして、前記ハイパーバイザ又は前記仮想マシンの前記選択データ又はコードが前記共有キャッシュから退去させられるのを防ぐ手段と、を含む装置。 - 前記ハイパーバイザが、前記仮想マシンのゲストオペレーティングシステムから、前記共有キャッシュの一部について、前記ゲストオペレーティングシステムの前記選択データ又はコードをロック又はアンロックする要求を受信する手段と、
前記ハイパーバイザが、前記仮想マシンから前記共有キャッシュのキャッシュサービス品質クラスへの直接接触をトラップする手段と、をさらに含む請求項23の装置。 - コンピューティング装置による実行により、請求項12から22のいずれか一項に記載の方法を、該コンピューティング装置に行わせるプログラム。
- 請求項25に記載の前記プログラムを有する、一以上のコンピュータ読み取り可能記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/222,416 US9652270B2 (en) | 2014-03-21 | 2014-03-21 | Apparatus and method for virtualized computing |
US14/222,416 | 2014-03-21 | ||
PCT/US2015/012728 WO2015142421A1 (en) | 2014-03-21 | 2015-01-23 | Apparatus and method for virtualized computing |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017511926A true JP2017511926A (ja) | 2017-04-27 |
JP6273034B2 JP6273034B2 (ja) | 2018-01-31 |
Family
ID=54142199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016553360A Active JP6273034B2 (ja) | 2014-03-21 | 2015-01-23 | 仮想化コンピューティング装置及び方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9652270B2 (ja) |
EP (1) | EP3120244A4 (ja) |
JP (1) | JP6273034B2 (ja) |
KR (1) | KR101821079B1 (ja) |
CN (1) | CN105980986B (ja) |
WO (1) | WO2015142421A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020149597A (ja) * | 2019-03-15 | 2020-09-17 | 株式会社デンソーテン | 制御装置および制御方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9563564B2 (en) | 2015-04-07 | 2017-02-07 | Intel Corporation | Cache allocation with code and data prioritization |
US10191858B2 (en) * | 2015-11-25 | 2019-01-29 | Red Hat Israel, Ltd. | Virtual machine memory lock-down |
US20210026950A1 (en) * | 2016-03-07 | 2021-01-28 | Crowdstrike, Inc. | Hypervisor-based redirection of system calls and interrupt-based task offloading |
CN109964211B (zh) * | 2016-09-30 | 2024-01-23 | 英特尔公司 | 用于半虚拟化网络设备队列和存储器管理的技术 |
US10241874B2 (en) * | 2017-05-17 | 2019-03-26 | Stratus Technologies | Checkpoint method for a highly available computer system |
US20190340123A1 (en) * | 2019-07-17 | 2019-11-07 | Intel Corporation | Controller for locking of selected cache regions |
KR20210130341A (ko) | 2020-04-22 | 2021-11-01 | 에스케이하이닉스 주식회사 | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 |
US20230061511A1 (en) * | 2021-08-30 | 2023-03-02 | International Business Machines Corporation | Inaccessible prefix pages during virtual machine execution |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009075070A1 (ja) * | 2007-12-10 | 2009-06-18 | Panasonic Corporation | 共有キャッシュ制御装置、共有キャッシュ制御方法及び集積回路 |
US20090276607A1 (en) * | 2008-04-30 | 2009-11-05 | Bonola Thomas J | Virtualization platform with dedicated cache access |
JP2012190446A (ja) * | 2011-03-10 | 2012-10-04 | Safenet Inc | ゲスト仮想マシンメモリの保護 |
US20130086329A1 (en) * | 2011-04-04 | 2013-04-04 | International Business Machines Corporation | Allocating cache for use as a dedicated local storage |
US20130318302A1 (en) * | 2012-05-23 | 2013-11-28 | Samsung Electronics Co., Ltd. | Cache controller based on quality of service and method of operating the same |
US20140013059A1 (en) * | 2012-07-03 | 2014-01-09 | Fusion-Io, Inc. | Systems, methods and apparatus for cache transfers |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7516453B1 (en) * | 1998-10-26 | 2009-04-07 | Vmware, Inc. | Binary translator with precise exception synchronization mechanism |
US6490615B1 (en) * | 1998-11-20 | 2002-12-03 | International Business Machines Corporation | Scalable cache |
JP4012517B2 (ja) | 2003-04-29 | 2007-11-21 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 仮想計算機環境におけるロックの管理 |
JP4358224B2 (ja) * | 2006-12-27 | 2009-11-04 | 株式会社東芝 | ゲストosスケジューリング方法及び仮想計算機モニタ |
US8156298B1 (en) * | 2007-10-24 | 2012-04-10 | Adam Stubblefield | Virtualization-based security apparatuses, methods, and systems |
US20100070678A1 (en) | 2008-09-12 | 2010-03-18 | Vmware, Inc. | Saving and Restoring State Information for Virtualized Computer Systems |
JP5338435B2 (ja) | 2009-03-31 | 2013-11-13 | 富士通株式会社 | 情報処理プログラム、情報処理装置および情報処理方法 |
US8707287B2 (en) * | 2009-12-18 | 2014-04-22 | Syddansk Universitet | Method, computer program product, and system for non-blocking dynamic update of statically typed class-based object-oriented software |
US8443376B2 (en) * | 2010-06-01 | 2013-05-14 | Microsoft Corporation | Hypervisor scheduler |
CN102402422B (zh) * | 2010-09-10 | 2016-04-13 | 北京中星微电子有限公司 | 处理器组件及该组件内存共享的方法 |
US8745614B2 (en) * | 2011-05-13 | 2014-06-03 | Lsi Corporation | Method and system for firmware upgrade of a storage subsystem hosted in a storage virtualization environment |
JP5737050B2 (ja) * | 2011-08-15 | 2015-06-17 | 富士通株式会社 | 情報処理装置、割込み制御方法および割込み制御プログラム |
US10061616B2 (en) * | 2012-05-30 | 2018-08-28 | Red Hat Israel, Ltd. | Host memory locking in virtualized systems with memory overcommit |
US9612966B2 (en) * | 2012-07-03 | 2017-04-04 | Sandisk Technologies Llc | Systems, methods and apparatus for a virtual machine cache |
WO2014185906A1 (en) * | 2013-05-15 | 2014-11-20 | Empire Technology Development, Llc | Core affinity bitmask translation |
-
2014
- 2014-03-21 US US14/222,416 patent/US9652270B2/en active Active
-
2015
- 2015-01-23 WO PCT/US2015/012728 patent/WO2015142421A1/en active Application Filing
- 2015-01-23 EP EP15764303.2A patent/EP3120244A4/en not_active Withdrawn
- 2015-01-23 JP JP2016553360A patent/JP6273034B2/ja active Active
- 2015-01-23 KR KR1020167022180A patent/KR101821079B1/ko active IP Right Grant
- 2015-01-23 CN CN201580009456.7A patent/CN105980986B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009075070A1 (ja) * | 2007-12-10 | 2009-06-18 | Panasonic Corporation | 共有キャッシュ制御装置、共有キャッシュ制御方法及び集積回路 |
US20090276607A1 (en) * | 2008-04-30 | 2009-11-05 | Bonola Thomas J | Virtualization platform with dedicated cache access |
JP2012190446A (ja) * | 2011-03-10 | 2012-10-04 | Safenet Inc | ゲスト仮想マシンメモリの保護 |
US20130086329A1 (en) * | 2011-04-04 | 2013-04-04 | International Business Machines Corporation | Allocating cache for use as a dedicated local storage |
US20130318302A1 (en) * | 2012-05-23 | 2013-11-28 | Samsung Electronics Co., Ltd. | Cache controller based on quality of service and method of operating the same |
US20140013059A1 (en) * | 2012-07-03 | 2014-01-09 | Fusion-Io, Inc. | Systems, methods and apparatus for cache transfers |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020149597A (ja) * | 2019-03-15 | 2020-09-17 | 株式会社デンソーテン | 制御装置および制御方法 |
Also Published As
Publication number | Publication date |
---|---|
US20150268979A1 (en) | 2015-09-24 |
KR20160108502A (ko) | 2016-09-19 |
US9652270B2 (en) | 2017-05-16 |
JP6273034B2 (ja) | 2018-01-31 |
CN105980986B (zh) | 2020-01-31 |
KR101821079B1 (ko) | 2018-01-22 |
WO2015142421A1 (en) | 2015-09-24 |
CN105980986A (zh) | 2016-09-28 |
EP3120244A4 (en) | 2018-03-28 |
EP3120244A1 (en) | 2017-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6273034B2 (ja) | 仮想化コンピューティング装置及び方法 | |
US10901772B2 (en) | Virtualization exceptions | |
US9798567B2 (en) | Multi-hypervisor virtual machines | |
US10162655B2 (en) | Hypervisor context switching using TLB tags in processors having more than two hierarchical privilege levels | |
US10191759B2 (en) | Apparatus and method for scheduling graphics processing unit workloads from virtual machines | |
US10255090B2 (en) | Hypervisor context switching using a redirection exception vector in processors having more than two hierarchical privilege levels | |
US20180129619A1 (en) | Virtualizing interrupt prioritization and delivery | |
US9135080B2 (en) | Dynamically assigning a portion of physical computing resource to logical partitions based on characteristics of executing logical partitions | |
WO2017024783A1 (zh) | 一种虚拟化方法、装置和系统 | |
KR101521778B1 (ko) | 가상화 환경에서 i/o 동작을 처리하는 방법 및 장치 | |
US10409633B2 (en) | Hypervisor-visible guest thread management | |
US9697029B2 (en) | Guest idle based VM request completion processing | |
US10162657B2 (en) | Device and method for address translation setting in nested virtualization environment | |
JP2013109777A (ja) | パフォーマンスカウンタの仮想化 | |
US10019275B2 (en) | Hypervisor context switching using a trampoline scheme in processors having more than two hierarchical privilege levels | |
US10061616B2 (en) | Host memory locking in virtualized systems with memory overcommit | |
US20160188354A1 (en) | Efficient enabling of extended page tables | |
US11188365B2 (en) | Memory overcommit by speculative fault | |
US9600314B2 (en) | Scheduler limited virtual device polling | |
US9898307B2 (en) | Starting application processors of a virtual machine | |
Grinberg et al. | Architectural virtualization extensions: A systems perspective |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170822 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170829 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171124 |
|
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: 20171205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180104 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6273034 Country of ref document: JP 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 |