CN102609296B - 虚拟机分支和并行执行 - Google Patents

虚拟机分支和并行执行 Download PDF

Info

Publication number
CN102609296B
CN102609296B CN201110443423.7A CN201110443423A CN102609296B CN 102609296 B CN102609296 B CN 102609296B CN 201110443423 A CN201110443423 A CN 201110443423A CN 102609296 B CN102609296 B CN 102609296B
Authority
CN
China
Prior art keywords
virtual machine
clone
branch
state
described original
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
Application number
CN201110443423.7A
Other languages
English (en)
Chinese (zh)
Other versions
CN102609296A (zh
Inventor
J·C·斯普拉德林
D·福蒂尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102609296A publication Critical patent/CN102609296A/zh
Application granted granted Critical
Publication of CN102609296B publication Critical patent/CN102609296B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/362Debugging of software
    • G06F11/3636Debugging of software by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Retry When Errors Occur (AREA)
CN201110443423.7A 2010-12-17 2011-12-16 虚拟机分支和并行执行 Active CN102609296B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/972,424 US8677355B2 (en) 2010-12-17 2010-12-17 Virtual machine branching and parallel execution
US12/972,424 2010-12-17

Publications (2)

Publication Number Publication Date
CN102609296A CN102609296A (zh) 2012-07-25
CN102609296B true CN102609296B (zh) 2015-04-01

Family

ID=46236241

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110443423.7A Active CN102609296B (zh) 2010-12-17 2011-12-16 虚拟机分支和并行执行

Country Status (8)

Country Link
US (2) US8677355B2 (cg-RX-API-DMAC7.html)
EP (1) EP2652600B1 (cg-RX-API-DMAC7.html)
JP (1) JP5960161B2 (cg-RX-API-DMAC7.html)
KR (1) KR101957533B1 (cg-RX-API-DMAC7.html)
CN (1) CN102609296B (cg-RX-API-DMAC7.html)
AR (1) AR084048A1 (cg-RX-API-DMAC7.html)
TW (1) TWI534709B (cg-RX-API-DMAC7.html)
WO (1) WO2012082811A2 (cg-RX-API-DMAC7.html)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2477109B1 (en) 2006-04-12 2016-07-13 Soft Machines, Inc. Apparatus and method for processing an instruction matrix specifying parallel and dependent operations
US8677105B2 (en) 2006-11-14 2014-03-18 Soft Machines, Inc. Parallel processing of a sequential program using hardware generated threads and their instruction groups executing on plural execution units and accessing register file segments using dependency inheritance vectors across multiple engines
US8782434B1 (en) 2010-07-15 2014-07-15 The Research Foundation For The State University Of New York System and method for validating program execution at run-time
US8407804B2 (en) * 2010-09-13 2013-03-26 Sophos Plc System and method of whitelisting parent virtual images
WO2012037491A2 (en) 2010-09-17 2012-03-22 Soft Machines, Inc. Single cycle multi-branch prediction including shadow cache for early far branch prediction
US8489929B2 (en) * 2010-09-30 2013-07-16 Salesforce.Com, Inc. Facilitating large-scale testing using virtualization technology in a multi-tenant database environment
WO2012135041A2 (en) 2011-03-25 2012-10-04 Soft Machines, Inc. Register file segments for supporting code block execution by using virtual cores instantiated by partitionable engines
EP2689327B1 (en) 2011-03-25 2021-07-28 Intel Corporation Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines
CN108108188B (zh) 2011-03-25 2022-06-28 英特尔公司 用于通过使用由可分区引擎实例化的虚拟核来支持代码块执行的存储器片段
TWI548994B (zh) 2011-05-20 2016-09-11 軟體機器公司 以複數個引擎支援指令序列的執行之互連結構
TWI603198B (zh) 2011-05-20 2017-10-21 英特爾股份有限公司 以複數個引擎作資源與互連結構的分散式分配以支援指令序列的執行
IN2014CN03678A (cg-RX-API-DMAC7.html) 2011-11-22 2015-09-25 Soft Machines Inc
WO2013077876A1 (en) 2011-11-22 2013-05-30 Soft Machines, Inc. A microprocessor accelerated code optimizer
US9811371B2 (en) 2012-06-29 2017-11-07 International Business Machines Corporation Concurrent execution of a computer software application along multiple decision paths
US9697356B2 (en) * 2012-08-21 2017-07-04 Empire Technology Development Llc Detection and mitigation of side-channel attacks
US9063721B2 (en) 2012-09-14 2015-06-23 The Research Foundation For The State University Of New York Continuous run-time validation of program execution: a practical approach
US9069782B2 (en) 2012-10-01 2015-06-30 The Research Foundation For The State University Of New York System and method for security and privacy aware virtual machine checkpointing
WO2014100954A1 (zh) * 2012-12-24 2014-07-03 华为技术有限公司 数据控制方法及系统
WO2014150991A1 (en) 2013-03-15 2014-09-25 Soft Machines, Inc. A method for implementing a reduced size register view data structure in a microprocessor
WO2014151043A1 (en) 2013-03-15 2014-09-25 Soft Machines, Inc. A method for emulating a guest centralized flag architecture by using a native distributed flag architecture
US9886279B2 (en) 2013-03-15 2018-02-06 Intel Corporation Method for populating and instruction view data structure by using register template snapshots
US9632825B2 (en) 2013-03-15 2017-04-25 Intel Corporation Method and apparatus for efficient scheduling for asymmetrical execution units
US9904625B2 (en) 2013-03-15 2018-02-27 Intel Corporation Methods, systems and apparatus for predicting the way of a set associative cache
US9811342B2 (en) 2013-03-15 2017-11-07 Intel Corporation Method for performing dual dispatch of blocks and half blocks
WO2014150806A1 (en) 2013-03-15 2014-09-25 Soft Machines, Inc. A method for populating register view data structure by using register template snapshots
US9891924B2 (en) 2013-03-15 2018-02-13 Intel Corporation Method for implementing a reduced size register view data structure in a microprocessor
US10275255B2 (en) 2013-03-15 2019-04-30 Intel Corporation Method for dependency broadcasting through a source organized source view data structure
WO2014151018A1 (en) 2013-03-15 2014-09-25 Soft Machines, Inc. A method for executing multithreaded instructions grouped onto blocks
US10140138B2 (en) 2013-03-15 2018-11-27 Intel Corporation Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation
US9569216B2 (en) 2013-03-15 2017-02-14 Soft Machines, Inc. Method for populating a source view data structure by using register template snapshots
WO2014150971A1 (en) 2013-03-15 2014-09-25 Soft Machines, Inc. A method for dependency broadcasting through a block organized source view data structure
CN104216793B (zh) * 2013-05-31 2017-10-17 国际商业机器公司 应用程序备份、恢复的方法及设备
WO2015030717A1 (en) * 2013-08-27 2015-03-05 Empire Technology Development Llc Consolidating operations associated with a plurality of host devices
US10339236B2 (en) * 2013-09-10 2019-07-02 Vmware, Inc. Techniques for improving computational throughput by using virtual machines
US20150121374A1 (en) * 2013-10-30 2015-04-30 Alistair Black Application Processing Systems and Methods
CN104598776B (zh) * 2013-10-31 2018-11-23 深圳市腾讯计算机系统有限公司 一种对软件进行测试的方法及装置
US9323565B2 (en) 2013-12-20 2016-04-26 Vmware, Inc. Provisioning customized virtual machines without rebooting
US10977063B2 (en) 2013-12-20 2021-04-13 Vmware, Inc. Elastic compute fabric using virtual machine templates
US9575792B2 (en) * 2014-03-14 2017-02-21 Netapp, Inc. Method and system for replicating virtual machines
JP2015212920A (ja) * 2014-04-16 2015-11-26 俊介 山内 先行画像生成プログラム、仮想マシーン制御プログラムおよびコンピュータ可読記憶媒体
US9513949B2 (en) 2014-08-23 2016-12-06 Vmware, Inc. Machine identity persistence for users of non-persistent virtual desktops
US9513948B2 (en) * 2015-02-05 2016-12-06 International Business Machines Corporation Automated virtual machine provisioning based on defect state
US20160378521A1 (en) * 2015-06-24 2016-12-29 International Business Machines Corporation Automated test optimization
US20170052866A1 (en) * 2015-08-21 2017-02-23 International Business Machines Corporation Managing a shared pool of configurable computing resources which uses a set of dynamically-assigned resources
US10846117B1 (en) * 2015-12-10 2020-11-24 Fireeye, Inc. Technique for establishing secure communication between host and guest processes of a virtualization architecture
US20180275871A1 (en) * 2017-03-22 2018-09-27 Intel Corporation Simulation of a plurality of storage devices from a single storage device coupled to a computational device
US10310966B1 (en) * 2017-06-01 2019-06-04 Amazon Technologies, Inc. Automatic test stack creation via production system replication
US10789139B2 (en) 2018-04-12 2020-09-29 Vmware, Inc. Method of rebuilding real world storage environment
US10936354B2 (en) * 2018-04-13 2021-03-02 Vmware, Inc. Rebuilding a virtual infrastructure based on user data
CN110389857B (zh) * 2018-04-20 2023-04-21 伊姆西Ip控股有限责任公司 数据备份的方法、设备和非瞬态计算机存储介质
CN112948234B (zh) * 2020-08-26 2023-02-21 深圳市明源云链互联网科技有限公司 接口测试方法、装置及电子设备
US12326831B2 (en) * 2022-02-24 2025-06-10 Infineon Technologies Ag System on a chip and method for operating a system on a chip

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101211272A (zh) * 2006-12-29 2008-07-02 英特尔公司 动态虚拟机生成

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5313647A (en) * 1991-09-20 1994-05-17 Kendall Square Research Corporation Digital data processor with improved checkpointing and forking
JPH06222913A (ja) * 1993-01-25 1994-08-12 Fujitsu Ltd プログラム解析装置
US5905855A (en) * 1997-02-28 1999-05-18 Transmeta Corporation Method and apparatus for correcting errors in computer systems
US6795966B1 (en) * 1998-05-15 2004-09-21 Vmware, Inc. Mechanism for restoring, porting, replicating and checkpointing computer systems using state extraction
US8631066B2 (en) * 1998-09-10 2014-01-14 Vmware, Inc. Mechanism for providing virtual machines for use by multiple users
US6944754B2 (en) * 2002-10-02 2005-09-13 Wisconsin Alumni Research Foundation Method and apparatus for parallel execution of computer software using a distilled program
US7299468B2 (en) 2003-04-29 2007-11-20 International Business Machines Corporation Management of virtual machines to utilize shared resources
US7849462B2 (en) * 2005-01-07 2010-12-07 Microsoft Corporation Image server
JP4585463B2 (ja) 2006-02-15 2010-11-24 富士通株式会社 仮想計算機システムを機能させるためのプログラム
US7664626B1 (en) 2006-03-24 2010-02-16 Symantec Corporation Ambiguous-state support in virtual machine emulators
US8296759B1 (en) * 2006-03-31 2012-10-23 Vmware, Inc. Offloading operations to a replicate virtual machine
US8151263B1 (en) * 2006-03-31 2012-04-03 Vmware, Inc. Real time cloning of a virtual machine
US8458695B2 (en) * 2006-10-17 2013-06-04 Manageiq, Inc. Automatic optimization for virtual systems
US8234640B1 (en) * 2006-10-17 2012-07-31 Manageiq, Inc. Compliance-based adaptations in managed virtual systems
US20090037885A1 (en) 2007-07-30 2009-02-05 Microsoft Cororation Emulating execution of divergent program execution paths
US8949585B2 (en) * 2007-10-09 2015-02-03 Vmware, Inc. In-place conversion of virtual machine state
US7844954B2 (en) * 2007-11-06 2010-11-30 Vmware, Inc. Using branch instruction counts to facilitate replay of virtual machine instruction execution
US9009020B1 (en) * 2007-12-12 2015-04-14 F5 Networks, Inc. Automatic identification of interesting interleavings in a multithreaded program
US8495636B2 (en) * 2007-12-19 2013-07-23 International Business Machines Corporation Parallelizing single threaded programs by performing look ahead operation on the single threaded program to identify plurality of instruction threads prior to execution
US8281318B2 (en) * 2008-03-31 2012-10-02 Vmware, Inc. Systems and methods for inter process communication based on queues
US20090307763A1 (en) * 2008-06-05 2009-12-10 Fiberlink Communications Corporation Automated Test Management System and Method
US8473946B2 (en) 2008-07-03 2013-06-25 Vmware, Inc. Efficient recording and replaying of non-deterministic instructions in a virtual machine and CPU therefor
JP2010026572A (ja) * 2008-07-15 2010-02-04 Hitachi Ltd 仮想計算機の現出方法、この方法を実行するためのプログラム、及びこの方法を実行するサーバ
US20100083251A1 (en) * 2008-09-12 2010-04-01 Hyper9, Inc. Techniques For Identifying And Comparing Virtual Machines In A Virtual Machine System
US20100070678A1 (en) 2008-09-12 2010-03-18 Vmware, Inc. Saving and Restoring State Information for Virtualized Computer Systems
JP5104958B2 (ja) * 2008-10-03 2012-12-19 富士通株式会社 仮想計算機システムのテスト方法、テストプログラム並びにその記録媒体、仮想計算機システム
US9141381B2 (en) 2008-10-27 2015-09-22 Vmware, Inc. Version control environment for virtual machines
JP5352848B2 (ja) 2008-11-28 2013-11-27 株式会社日立製作所 仮想計算機の制御方法及び計算機装置
US9817695B2 (en) * 2009-04-01 2017-11-14 Vmware, Inc. Method and system for migrating processes between virtual machines
US8656222B2 (en) * 2009-07-30 2014-02-18 Vmware, Inc. Method and system for recording a selected computer process for subsequent replay
US8572613B1 (en) * 2009-12-28 2013-10-29 Amazon Technologies, Inc. Comparison of virtual computing states by performing identified repeatable computations in a changing virtual computing environment
US9002972B2 (en) * 2010-01-29 2015-04-07 Symantec Corporation Systems and methods for sharing the results of computing operations among related computing systems
US8990813B2 (en) * 2010-03-29 2015-03-24 Red Hat, Inc. Automated virtual machine image deployment and testing by accessing downloadable test packages and dynamically-changing test parameters
US8898668B1 (en) * 2010-03-31 2014-11-25 Netapp, Inc. Redeploying baseline virtual machine to update a child virtual machine by creating and swapping a virtual disk comprising a clone of the baseline virtual machine
US8489929B2 (en) * 2010-09-30 2013-07-16 Salesforce.Com, Inc. Facilitating large-scale testing using virtualization technology in a multi-tenant database environment
US9165136B1 (en) * 2010-10-27 2015-10-20 Amazon Technologies, Inc. Supervising execution of untrusted code
US8443365B2 (en) * 2010-11-03 2013-05-14 Hewlett-Packard Development Company, L.P. Methods and systems to clone a virtual machine instance

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101211272A (zh) * 2006-12-29 2008-07-02 英特尔公司 动态虚拟机生成

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
US 7,664,626 B1,2010.02.16,说明书第12栏第1-65行,第13栏第1-29行,第17栏第21-59行,图2A,图2B1,图2B2. *

Also Published As

Publication number Publication date
TWI534709B (zh) 2016-05-21
AR084048A1 (es) 2013-04-17
JP2013546103A (ja) 2013-12-26
US20140201739A1 (en) 2014-07-17
TW201227520A (en) 2012-07-01
EP2652600A2 (en) 2013-10-23
CN102609296A (zh) 2012-07-25
EP2652600A4 (en) 2014-07-09
KR20130126938A (ko) 2013-11-21
US8677355B2 (en) 2014-03-18
WO2012082811A3 (en) 2012-09-27
EP2652600B1 (en) 2017-09-06
HK1174405A1 (en) 2013-06-07
KR101957533B1 (ko) 2019-03-12
US20120159478A1 (en) 2012-06-21
JP5960161B2 (ja) 2016-08-02
WO2012082811A2 (en) 2012-06-21

Similar Documents

Publication Publication Date Title
CN102609296B (zh) 虚拟机分支和并行执行
CN111176804A (zh) 包括容器的集群环境中的自动基础设施更新
US10871982B2 (en) Virtual processor scheduling via memory monitoring
Ghorbian et al. A survey on the cold start latency approaches in serverless computing: an optimization-based perspective
US11188348B2 (en) Hybrid computing device selection analysis
CN109690536B (zh) 将多核指令踪迹从虚拟平台仿真器取到性能模拟模型的方法和系统
Tran et al. Proactive stateful fault-tolerant system for kubernetes containerized services
US20180285108A1 (en) Branch prediction using a perceptron-based branch prediction technique
US10540737B2 (en) Processing unit performance projection using dynamic hardware behaviors
US20210294730A1 (en) Managing resources used during a development pipeline
Harichane et al. KubeSC‐RTP: Smart scheduler for Kubernetes platform on CPU‐GPU heterogeneous systems
Mushtaq et al. In-depth analysis of fault tolerant approaches integrated with load balancing and task scheduling
Kumar et al. Utilizing machine learning techniques for worst-case execution time estimation on GPU architectures
Mekki et al. Resiliency focused proactive lifecycle management for stateful microservices in multi-cluster containerized environments
US11880231B2 (en) Accurate timestamp or derived counter value generation on a complex CPU
CN116051031A (zh) 项目调度系统、介质及电子设备
US12436801B2 (en) Deep learning scheduler toolkit
Liu et al. xLLM Technical Report
윤경환 Static Analysis of Worst-case Resource Requirements for Linux-based Embedded Systems
Prieto Torralbo et al. Fast, Accurate Processor Evaluation Through Heterogeneous, Sample-Based Benchmarking
ABDUL SALAM Power Modeling and Resource Optimization in Virtualized Environments
CN120029864A (zh) 计算机性能波动性预测
HK1174405B (en) Virtual machine branching and parallel execution
CN120179536A (zh) 一种物联网固件测试方法、装置、设备及介质
Soualhia Adaptive Failure-Aware Scheduling for Hadoop

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1174405

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150723

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150723

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1174405

Country of ref document: HK