[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN102439567A - Processing method for distributed virtual machine access exception and virtual machine monitor - Google Patents

Processing method for distributed virtual machine access exception and virtual machine monitor Download PDF

Info

Publication number
CN102439567A
CN102439567A CN2011800021229A CN201180002122A CN102439567A CN 102439567 A CN102439567 A CN 102439567A CN 2011800021229 A CN2011800021229 A CN 2011800021229A CN 201180002122 A CN201180002122 A CN 201180002122A CN 102439567 A CN102439567 A CN 102439567A
Authority
CN
China
Prior art keywords
virtual machine
subpage
access
access exception
instruction
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
Application number
CN2011800021229A
Other languages
Chinese (zh)
Inventor
邱军
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN102439567A publication Critical patent/CN102439567A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/109Address translation for multiple virtual address spaces, e.g. segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/15Use in a specific computing environment
    • G06F2212/151Emulated environment, e.g. virtual machine

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

The embodiment of the invention discloses a processing method for access exception of a distributed virtual machine and a virtual machine monitor, which relate to the technical field of computers and can reduce false sharing, so that the memory performance of the distributed virtual machine is improved. The processing method for the access exception of the distributed virtual machine comprises the following steps: finding out a sub-page with access abnormality according to the address of the physical page with access abnormality when the virtual machine executes the current instruction and accesses the memory of the virtual machine; judging whether the virtual machine has the access authority of the sub-page with the access abnormality, if the virtual machine does not have the access authority, repairing the sub-page with the access abnormality, enabling a memory of the virtual machine to access the sub-page with the access abnormality and re-execute the current instruction, if the virtual machine has the access authority, executing the current instruction, returning an execution result to the virtual machine execution context, and enabling the virtual machine to finish the execution of the current instruction.

Description

The disposal route of distributed virtual machine access exception and monitor of virtual machine
Technical field
The present invention relates to field of computer technology, relate in particular to a kind of disposal route and monitor of virtual machine of distributed virtual machine access exception.
Background technology
Virtual machine (Virtual Machine, be called for short VM) refer to through software simulation have the complete hardware system function, operate in a complete computer in the complete isolation environment.The distributed virtualization technology is a kind of technology that will be reassembled into a virtual machine from the resource of many physical machines with virtual mode; When the operating system on being installed in virtual machine and these virtual resources of use; Be deployed in distributed virtual machine monitor (the Distributed Virtual Machine Monitor on every physical machine; Be called for short DVMM) can intercept and capture responsive visit behavior, with the correctness that guarantees that virtual machine uses virtual resource.
Owing to the processor on every physical machine can only be visited local internal memory; Therefore; DVMM need intercept and capture virtual machine to the visit to local cache (cache) of long-distance inner or long-distance inner; And give distributed shared memory (Distributed Shared Memory is called for short DSM) with these Access Events and handle, with correctness and the consistance (Consistent and Coherent) of safeguarding local cache and long-distance inner.
Generally speaking; DVMM catches processor need use processor to the visit of long-distance inner or local cache page exception (Page Fault; Be called for short PF) or nested page or leaf mechanism such as unusual (NestedPage Fault); And these are to be that unit (for example 4KB, 2MB or 1GB) produces with the physical page size unusually, i.e. arbitrary data in this Physical Page of processor access all can produce unusually, and this has just caused false sharing problem (False Sharing).Opposite extreme situations and for example; Processor on two different physical nodes need be visited a byte of same memory address; DSM is consistent for the internal memory of safeguarding this byte to two processors; Need the visit of intercepts processor to this memory address; Because it is unit that internal memory is intercepted and captured with the Physical Page, cause processor that the visit of other bytes outside the actual address of sharing in this Physical Page is also produced memory abnormal (lack of competence visit) again, DSM is triggered handle the conforming process of shared drive of keeping.False sharing reduced the utilization factor of buffer memory among the DVMM, increased insignificant network service, increases the weight of the long-distance inner visit and delays, and then influence the distributed virtual machine internal memory performance.
Summary of the invention
Embodiments of the invention technical matters to be solved is to provide a kind of disposal route and monitor of virtual machine of distributed virtual machine access exception, can reduce the false generation of sharing, thereby has improved the performance of distributed virtual machine internal memory.
For solving the problems of the technologies described above, embodiments of the invention adopt following technical scheme:
A kind of disposal route of distributed virtual machine access exception comprises:
The address that occurs the Physical Page of access exception when carrying out present instruction and accesses virtual machine internal memory according to virtual machine; The page or leaf bias internal address of subpage of the Physical Page of access exception appears in acquisition; And according to said page or leaf bias internal address; Find the subpage that access exception occurs, said Physical Page comprises several subpages;
Judge whether said virtual machine has the said access rights that the subpage of access exception occurs,
If said virtual machine does not have the said access rights that the subpage of access exception occurs, repair the said subpage that access exception occurs, make virutal machine memory can visit the said subpage that access exception occurs and also carry out present instruction again,
If said virtual machine has the said access rights that the subpage of access exception occurs, carry out said present instruction, and execution result is returned to virtual machine execution context, make said virtual machine accomplish the execution of said present instruction.
A kind of monitor of virtual machine comprises:
Subpage is searched module; The address that occurs the Physical Page of access exception when being used for according to virtual machine execution present instruction and accesses virtual machine internal memory; The page or leaf bias internal address of subpage of the Physical Page of access exception appears in acquisition; And, finding the subpage that access exception occurs according to said page or leaf bias internal address, said Physical Page comprises several subpages;
The access rights judge module is used to judge whether said virtual machine has the said access rights that the subpage of access exception occurs,
Distributed shared memory; Be used for judging that said virtual machine does not have the said access rights that the subpage of access exception occurs; Repair the said subpage that access exception occurs, make virutal machine memory can visit the said subpage that access exception occurs and also carry out present instruction again
The instruction simulation execution module; Be used for judging that said virtual machine has the said access rights that the subpage of access exception occurs; Carry out said present instruction, and execution result is returned to virtual machine execution context, make said virtual machine accomplish the execution of said present instruction.
A kind of distributed virtual machine comprises a plurality of physical servers that connect through network, is equipped with monitor of virtual machine on every said physical server, and said monitor of virtual machine comprises:
Subpage is searched module; The address that occurs the Physical Page of access exception when being used for according to virtual machine execution present instruction and accesses virtual machine internal memory; The page or leaf bias internal address of subpage of the Physical Page of access exception appears in acquisition; And, finding the subpage that access exception occurs according to said page or leaf bias internal address, said Physical Page comprises several subpages;
The access rights judge module is used to judge whether said virtual machine has the said access rights that the subpage of access exception occurs,
Distributed shared memory; Be used for judging that said virtual machine does not have the said access rights that the subpage of access exception occurs; Repair the said subpage that access exception occurs, make virutal machine memory can visit the said subpage that access exception occurs and also carry out present instruction again
The instruction simulation execution module; Be used for judging that said virtual machine has the said access rights that the subpage of access exception occurs; Carry out said present instruction, and execution result is returned to virtual machine execution context, make said virtual machine accomplish the execution of said present instruction.
The disposal route and the monitor of virtual machine of the distributed virtual machine access exception of the embodiment of the invention; Through Physical Page being divided into several subpages, when access exception appears in Physical Page, making access exception appears and subpage beyond other subpages can be by normal access; Reduced false shared generation; And when judging that virtual machine does not have the access rights of said subpage, the subpage of access exception appears, make virutal machine memory can visit the said subpage that access exception occurs; When judgement has the access rights of said subpage; The instruction of the current said access exception of Simulation execution; And execution result is returned to virtual machine carry out context; Make said virtual machine accomplish the execution of said present instruction, can effectively solve the access exception problem, improved the performance of virutal machine memory.
Description of drawings
In order to be illustrated more clearly in the embodiment of the invention or technical scheme of the prior art; The accompanying drawing of required use is done to introduce simply in will describing embodiment below; Obviously, the accompanying drawing in describing below only is some embodiments of the present invention, for those of ordinary skills; Under the prerequisite of not paying creative work, can also obtain other accompanying drawing according to these accompanying drawings.
Fig. 1 is the schematic flow sheet of the disposal route of distributed virtual machine access exception in the embodiment of the invention;
Fig. 2 is the synoptic diagram of monitor of virtual machine in the embodiment of the invention;
Fig. 3 is the synoptic diagram of instruction Simulation execution module in the embodiment of the invention;
Fig. 4 is the synoptic diagram of monitor of virtual machine in the distributed virtual machine in the embodiment of the invention.
Embodiment
The embodiment of the invention provides a kind of disposal route and monitor of virtual machine of distributed virtual machine access exception, can reduce the false generation of sharing, thereby has improved the performance of distributed virtual machine internal memory.
Below in conjunction with accompanying drawing the embodiment of the invention is done detailed description.
Embodiment one
Distributed virtual machine is made up of a plurality of physical servers of operation under the distributed virtualization environment from hardware view; Specifically comprise: processor (Central Processing Unit is called for short CPU), virutal machine memory, network interface card and high speed input and output (I/O) equipment.In addition, be equipped with monitor of virtual machine on each physical server, through the intercommunication of monitor of virtual machine, make the processor of each physical server can visit the resource of other physical servers, and then form the hardware platform of a virtual polymerization.
Virutal machine memory is an isolation, starts from scratch and have a successional pseudo-physical memory space, one section physical memory that corresponding respectively each physical server of this memory headroom distributes for virtual machine.Monitor of virtual machine is set up a P2M (Pseudo-physical Address to Machine Physical Address for distributed virtual machine on each physical server; The virtual machine dummy address is to the mapping relations of machine physical address) table, convert GFN to MFN.A part of GFN is mapped to the internal memory of home server in the P2M table; Because the processor of local physical server can not directly be visited the internal memory of other physical servers, the GFN that therefore shines upon other physical server internal memories is mapped in local cache, this buffer memory the content of internal memory on the long-range physical server.In order to guarantee the consistance of local cache and long-distance inner, distributed shared memory need be set in monitor of virtual machine.
Present embodiment provides a kind of disposal route of distributed virtual machine access exception, and is as shown in Figure 1, and this method comprises:
Step 101, the address of the Physical Page of access exception appears when carrying out present instruction and accesses virtual machine internal memory according to virtual machine; The page or leaf bias internal address of subpage of the Physical Page of access exception appears in acquisition; And according to said page or leaf bias internal address; Find the subpage that access exception occurs, said Physical Page comprises several subpages.
When the data in the processor access virutal machine memory address on a certain physical server, DSM need intercept and capture the visit of this processor to this memory address.Present embodiment is divided into several subpages (sub-page) with Physical Page, reducing to intercept and capture granularity, and is that subpage distributes sub-page address.Therefore, when access exception appears in Physical Page, can find and unusual subpage occurs, but the equal normal access of other subpages except that the subpage that access exception occurs in the Physical Page has improved the efficient of internal memory in this way greatly, has reduced false shared phenomenon.
Because the visit of memory address is unit with the byte, therefore, in order to find unusual subpage appears, need to obtain the page or leaf bias internal address of subpage.Page or leaf bias internal address is meant the address of subpage with respect to the Physical Page at place, the i.e. difference of the start address of sub-page address and Physical Page.The start address that the address of the Physical Page of access exception deducts Physical Page is the offset address that unusual subpage occurs.According to the page or leaf bias internal address that calculates, just can find the subpage that access exception occurs.
Step 102, judge whether virtual machine has the said access rights that the subpage of access exception occurs.
After finding the subpage that access exception occurs, judge whether to have the access rights of this sub-pages according to the page or leaf bias internal address of subpage.The management of subpage for ease, present embodiment is provided with the subpage administration module in monitor of virtual machine, be used to store the authority information of said subpage, and is as shown in Figure 2, and wherein, the authority of Physical Page is the authority of the subpage that authority is minimum in all subpages.Generally speaking, authority information comprises readable writing (Read Write), readable can not writing (Read Only) and not readablely can not write (INV) that the rank of authority reduces successively.The authority of subpage can be changed through distributed shared memory.The authority information of subpage is updated when monitor of virtual machine is kept the shared drive consistance.
For instance; If certain processor need carry out write operation to virutal machine memory; After the content in reading the subpage administration module, the authority that the subpage of access exception appears in discovery is readable can not writing, and promptly processor can not internally deposit into capable write operation; Therefore, the processor of this moment does not have the access rights of this sub-pages.
Step 103, if said virtual machine does not have the said access rights that the subpage of access exception occurs, repairs the said subpage that access exception occurs, make virutal machine memory can visit the said subpage that access exception occurs and also carry out present instruction again.
Do not have the access rights of subpage of access exception in judgement after, monitor of virtual machine calls distributed shared memory and repairs said subpage, and said subpage can be visited by virutal machine memory, and the authority that is about to said subpage is revised as readable or can writes.After reparation finished, the processor of virtual machine was carried out again and unusual instruction occurred, because the virutal machine memory that relates to is readable or can write, therefore, instruction can be carried out smoothly, reduce monitor of virtual machine and handle the unusual time.
Step 104, if said virtual machine has the said access rights that the subpage of access exception occurs, carry out said present instruction, and execution result is returned to virtual machine carry out context, make said virtual machine accomplish the execution of said present instruction.
Context is that the static state of process executed activity overall process is described; Usually call preceding text to the process instruction of executed and the content of data in related register and storehouse; Call text to the content of the instruction and data of carrying out in register and storehouse, call hereinafter to instruction and data the to be carried out content in register and storehouse.Virtual machine in the present embodiment is carried out context and is comprised content and virtual machine control information in virtual machine register, the virutal machine memory.
After judging that virtual machine has the access rights of subpage of access exception; Monitor of virtual machine is further carried out present instruction; And execution result is returned to virtual machine carry out context; Make said virtual machine accomplish the execution of said present instruction, virtual machine is carried out next bar instruction of present instruction after receiving the instruction simulation result.
The process of the instruction that monitor of virtual machine Simulation execution current accessed is unusual is following:
Virutal machine memory is preserved the original execution result of present instruction;
According to instruction set encoding present instruction is deciphered, obtained instruction operation code and operand;
According to instruction operation code operand is carried out corresponding operation, operate successfully after, obtain new execution result, and the operand relevant with present instruction be updated to virtual machine execution context.
After accomplishing above-mentioned steps, processing procedure is back to the virtual machine from monitor of virtual machine, and upgrades the execution result that is kept in the virtual machine execution context.Through said method, monitor of virtual machine just can replace virtual machine to handle the instruction of access exception, can repair the virutal machine memory of access exception rapidly, thereby improve the efficient of virutal machine memory.
In the process of Simulation execution present instruction, may run into operand not in the situation of the unusual subpage of current accessed, and in other subpage, therefore, monitor of virtual machine at first need be from other subpages read operands.So present embodiment is further comprising the steps of after judgement has the access rights of subpage;
Step 105, judge whether to have the access rights of the internal memory operation number of said present instruction,
Step 106, if there are not the access rights of the internal memory operation number of said present instruction, then repair the subpage at said internal memory operation number place, said internal memory operation number can be visited.
Behind the subpage of repairing said internal memory operation number place, monitor of virtual machine just can be carried out the unusual instruction of current accessed.
The disposal route of the distributed virtual machine access exception of present embodiment; Through Physical Page being divided into several subpages, when access exception appears in Physical Page, making access exception appears and subpage beyond other subpages can be by normal access; Reduced false shared generation; And when judging the access rights of the subpage that access exception do not occur, repair the subpage that access exception occurs, said subpage can be visited by virutal machine memory; When judgement has the access rights of the subpage that access exception occurs; Carry out present instruction, and execution result is returned to virtual machine execution context, make virtual machine accomplish the execution of said present instruction; Can effectively solve access exception, improve the performance of virutal machine memory.
Embodiment two
Present embodiment provides a kind of virtual machine monitoring machine, and is as shown in Figure 2, comprising: subpage is searched module 11, access rights judge module 12, distributed shared memory 13 and instruction simulation execution module 14, wherein,
Subpage is searched module 11; The address that occurs the Physical Page of access exception when being used for according to virtual machine execution present instruction and accesses virtual machine internal memory; The page or leaf bias internal address of subpage of the Physical Page of access exception appears in acquisition; And, finding the subpage that access exception occurs according to said page or leaf bias internal address, said Physical Page comprises several subpages;
Access rights judge module 12 is used to judge whether virtual machine has the said access rights that the subpage of access exception occurs;
Distributed shared memory 13 is used for repairing the said subpage that access exception occurs judging that virtual machine does not have the said access rights that the subpage of access exception occurs, makes virutal machine memory can visit the said subpage that access exception occurs and also carries out present instruction again;
Instruction simulation execution module 14; Be used for judging that virtual machine has the said access rights that the subpage of access exception occurs; Carry out said present instruction, and execution result is returned to virtual machine execution context, make said virtual machine accomplish the execution of said present instruction.Virtual machine in the present embodiment is carried out context and is comprised content and virtual machine control information in virtual machine register, the virutal machine memory.
Further, said access rights judge module 12 also is used for: the access rights that judge whether to have the internal memory operation number of said present instruction;
Said distributed shared memory 13 also is used for: when judgement does not have the access rights of said internal memory operation number, repair the subpage at said internal memory operation number place, said internal memory operation number can be visited.
The virtual machine monitoring machine of present embodiment also comprises subpage administration module 10, is used to store the authority information of subpage.
Further, said access rights judge module 12 also is used for reading the authority information of said subpage administration module subpage, and the access rights of said Physical Page are not more than the access rights of it subpage that comprises.
Said authority information comprises: readablely write, readable can not writing and not readable can not writing.
As shown in Figure 3, the instruction simulation execution module 14 of present embodiment specifically comprises:
Decoding unit 141 is used for according to instruction set encoding present instruction being deciphered, and obtains instruction operation code and operand;
Performance element 142 is used for according to instruction operation code operand being carried out corresponding operation, operate successfully after, obtain execution result, and the operand relevant with present instruction be updated to virtual machine execution context.
The principle of work and the embodiment one of the virtual machine monitoring machine each several part of present embodiment are similar, repeat no more at this.
The virtual machine monitoring machine of present embodiment; Through Physical Page being divided into several subpages, when access exception appears in Physical Page, making access exception appears and subpage beyond other subpages can be by normal access; Reduced false shared generation; And through the access rights judge module when judging that the access rights of subpage of access exception do not appear in virtual machine, the subpage of access exception appears in the distributed shared memory reparation, makes the subpage that access exception occurs allow to be visited by virutal machine memory; When judgement has the access rights of the subpage that access exception occurs; The instruction simulation execution module is carried out present instruction; And execution result is returned to virtual machine carry out context; Make said virtual machine accomplish the execution of present instruction, can effectively solve access exception, improved the performance of virutal machine memory.
Embodiment three
Present embodiment provides a kind of distributed virtual machine, and is as shown in Figure 4, comprises a plurality of physical servers that connect through network, is equipped with monitor of virtual machine on every said physical server, and said monitor of virtual machine comprises:
Subpage is searched module 11; The address that occurs the Physical Page of access exception when being used for according to virtual machine execution present instruction and accesses virtual machine internal memory; The page or leaf bias internal address of subpage of the Physical Page of access exception appears in acquisition; And, finding the subpage that access exception occurs according to said page or leaf bias internal address, said Physical Page comprises several subpages;
Access rights judge module 12 is used to judge whether virtual machine has the said access rights that the subpage of access exception occurs;
Distributed shared memory 13 is used for repairing the said subpage that access exception occurs judging that virtual machine does not have the said access rights that the subpage of access exception occurs, makes virutal machine memory can visit the said subpage that access exception occurs and also carries out present instruction again;
Instruction simulation execution module 14; Be used for judging that virtual machine has the said access rights that the subpage of access exception occurs; Carry out said present instruction, and execution result is returned to virtual machine execution context, make said virtual machine accomplish the execution of said present instruction.Virtual machine in the present embodiment is carried out context and is comprised content and virtual machine control information in virtual machine register, the virutal machine memory.
Further, the monitor of virtual machine of present embodiment also comprises:
Subpage administration module 10 is used to store the authority information of subpage;
Communication module 15 is used for realizing the communication between each monitor of virtual machine of said distributed virtual machine, to guarantee that information in the same memory address is in the consistance of different physical servers.
The principle of work and the embodiment one of the virtual machine monitoring machine each several part of present embodiment are similar, repeat no more at this.
The distributed virtual machine of present embodiment; Through Physical Page being divided into several subpages; When access exception appears in Physical Page; Make other subpages beyond the subpage that access exception occurs reduced false shared generation, and the access rights judge module through the virtual machine monitoring machine is when judging that the access rights of subpage of access exception do not appear in virtual machine by normal access; The subpage of access exception appears in the distributed shared memory reparation, makes the subpage that access exception occurs allow to be visited by virutal machine memory; When judgement has the access rights of the subpage that access exception occurs; The instruction simulation execution module is carried out present instruction; And execution result is returned to virtual machine carry out context; Make said virtual machine accomplish the execution of present instruction, can effectively solve access exception, improved the performance of virutal machine memory.
Through the description of above embodiment, the those skilled in the art can be well understood to the present invention and can realize by the mode that software adds essential common hardware, can certainly pass through hardware, but the former is better embodiment under a lot of situation.Based on such understanding; The part that technical scheme of the present invention contributes to prior art in essence in other words can be come out with the embodied of software product, and this computer software product is stored in the storage medium that can read, like the floppy disk of computing machine; Hard disk or CD etc.; Comprise some instructions with so that computer equipment (can be personal computer, server, the perhaps network equipment etc.) carry out the described method of each embodiment of the present invention.
The above; Be merely embodiment of the present invention, but protection scope of the present invention is not limited thereto, any technician who is familiar with the present technique field is in the technical scope that the present invention discloses; Can expect easily changing or replacement, all should be encompassed within protection scope of the present invention.Therefore, protection scope of the present invention should be as the criterion with the protection domain of said claim.

Claims (15)

1. the disposal route of a distributed virtual machine access exception is characterized in that, comprising:
The address that occurs the Physical Page of access exception when carrying out present instruction and accesses virtual machine internal memory according to virtual machine; The page or leaf bias internal address of subpage of the Physical Page of access exception appears in acquisition; And according to said page or leaf bias internal address; Find the subpage that access exception occurs, said Physical Page comprises several subpages;
Judge whether said virtual machine has the said access rights that the subpage of access exception occurs,
If said virtual machine does not have the said access rights that the subpage of access exception occurs, repair the said subpage that access exception occurs, make virutal machine memory can visit the said subpage that access exception occurs and also carry out present instruction again,
If said virtual machine has the said access rights that the subpage of access exception occurs, carry out said present instruction, and execution result is returned to virtual machine execution context, make said virtual machine accomplish the execution of said present instruction.
2. the disposal route of distributed virtual machine access exception according to claim 1 is characterized in that, after judging that said virtual machine has the access rights of the said subpage that access exception occurs, also comprises;
Judge whether to have the access rights of the internal memory operation number of said present instruction,
If there are not the access rights of the internal memory operation number of said present instruction, then repair the subpage at said internal memory operation number place, said internal memory operation number can be visited.
3. the disposal route of distributed virtual machine access exception according to claim 1; It is characterized in that; Said find the subpage that access exception occurs after, judge that whether said virtual machine has before the access rights of the said subpage that access exception occurs, also comprises:
Read the authority information of the subpage that access exception occurs, the access rights of said Physical Page are not more than the access rights of it subpage that comprises.
4. the disposal route of distributed virtual machine access exception according to claim 3 is characterized in that, said authority information comprises: readablely write, readable can not writing and not readable can not writing.
5. the disposal route of distributed virtual machine access exception according to claim 1 is characterized in that, the said present instruction of said execution comprises:
According to instruction set encoding present instruction is deciphered, obtained instruction operation code and operand;
According to instruction operation code operand is carried out corresponding operation, operate successfully after, obtain execution result, and the operand relevant with said present instruction be updated to virtual machine execution context.
6. according to the disposal route of claim 1 or 5 described distributed virtual machine access exception, it is characterized in that said virtual machine is carried out context and comprised content and virtual machine control information in virtual machine register, the virutal machine memory.
7. a monitor of virtual machine is characterized in that, comprising:
Subpage is searched module; The address that occurs the Physical Page of access exception when being used for according to virtual machine execution present instruction and accesses virtual machine internal memory; The page or leaf bias internal address of subpage of the Physical Page of access exception appears in acquisition; And, finding the subpage that access exception occurs according to said page or leaf bias internal address, said Physical Page comprises several subpages;
The access rights judge module is used to judge whether said virtual machine has the said access rights that the subpage of access exception occurs,
Distributed shared memory; Be used for judging that said virtual machine does not have the said access rights that the subpage of access exception occurs; Repair the said subpage that access exception occurs, make virutal machine memory can visit the said subpage that access exception occurs and also carry out present instruction again
The instruction simulation execution module; Be used for judging that said virtual machine has the said access rights that the subpage of access exception occurs; Carry out said present instruction, and execution result is returned to virtual machine execution context, make said virtual machine accomplish the execution of said present instruction.
8. monitor of virtual machine according to claim 7 is characterized in that,
Said access rights judge module also is used for: judge whether to have the access rights of the internal memory operation number of said present instruction,
If there are not the access rights of the internal memory operation number of said present instruction, then repair the subpage at said internal memory operation number place, said internal memory operation number can be visited.
9. monitor of virtual machine according to claim 7 is characterized in that, also comprises:
The subpage administration module is used to store the authority information of subpage.
10. monitor of virtual machine according to claim 9 is characterized in that,
Said access rights judge module also is used for reading the authority information of subpage administration module subpage, and the access rights of said Physical Page are not more than the access rights of it subpage that comprises.
11., it is characterized in that said authority information comprises: readablely write, readable can not writing and not readable can not writing according to claim 9 or 10 described monitor of virtual machine.
12. monitor of virtual machine according to claim 7 is characterized in that, said instruction simulation execution module specifically comprises:
Decoding unit is used for according to instruction set encoding present instruction being deciphered, and obtains instruction operation code and operand;
Performance element is used for according to instruction operation code operand being carried out corresponding operation, operate successfully after, obtain execution result, and the operand relevant with said present instruction be updated to virtual machine execution context.
13., it is characterized in that said virtual machine is carried out context and comprised content and virtual machine control information in virtual machine register, the virutal machine memory according to claim 7 or 12 described monitor of virtual machine.
14. a distributed virtual machine comprises a plurality of physical servers that connect through network, is equipped with monitor of virtual machine on every said physical server, it is characterized in that said monitor of virtual machine comprises:
Subpage is searched module; The address that occurs the Physical Page of access exception when being used for according to virtual machine execution present instruction and accesses virtual machine internal memory; The page or leaf bias internal address of subpage of the Physical Page of access exception appears in acquisition; And, finding the subpage that access exception occurs according to said page or leaf bias internal address, said Physical Page comprises several subpages;
The access rights judge module is used to judge whether said virtual machine has the said access rights that the subpage of access exception occurs,
Distributed shared memory; Be used for judging that said virtual machine does not have the said access rights that the subpage of access exception occurs; Repair the said subpage that access exception occurs, make virutal machine memory can visit the said subpage that access exception occurs and also carry out present instruction again
The instruction simulation execution module; Be used for judging that said virtual machine has the said access rights that the subpage of access exception occurs; Carry out said present instruction, and execution result is returned to virtual machine execution context, make said virtual machine accomplish the execution of said present instruction.
15. distributed virtual machine according to claim 14 is characterized in that, said monitor of virtual machine also comprises:
Communication module is used for realizing the communication between each monitor of virtual machine of said distributed virtual machine, to guarantee that information in the same memory address is in the consistance of different physical servers.
CN2011800021229A 2011-10-21 2011-10-21 Processing method for distributed virtual machine access exception and virtual machine monitor Pending CN102439567A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2011/081116 WO2012163017A1 (en) 2011-10-21 2011-10-21 Method for processing access exception of distributed virtual machine and virtual machine monitor

Publications (1)

Publication Number Publication Date
CN102439567A true CN102439567A (en) 2012-05-02

Family

ID=45986237

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011800021229A Pending CN102439567A (en) 2011-10-21 2011-10-21 Processing method for distributed virtual machine access exception and virtual machine monitor

Country Status (2)

Country Link
CN (1) CN102439567A (en)
WO (1) WO2012163017A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102866929A (en) * 2012-07-23 2013-01-09 上海斐讯数据通信技术有限公司 Bad block repair method for memory
WO2015010658A1 (en) * 2013-07-26 2015-01-29 Huawei Technologies Co., Ltd. System and method for detecting false sharing
CN105468434A (en) * 2015-12-11 2016-04-06 浪潮(北京)电子信息产业有限公司 Method and device for processing exception of virtual machine
CN107223236A (en) * 2016-12-29 2017-09-29 深圳前海达闼云端智能科技有限公司 Method, device and electronic equipment that multi-dummy machine is run simultaneously
CN108540341A (en) * 2018-03-19 2018-09-14 云宏信息科技股份有限公司 resource monitoring method and device
US10394714B2 (en) 2013-07-26 2019-08-27 Futurewei Technologies, Inc. System and method for false sharing prediction
CN112363796A (en) * 2020-10-19 2021-02-12 海光信息技术股份有限公司 Virtual machine shared memory allocation method and device and electronic equipment
CN114844833A (en) * 2022-03-30 2022-08-02 阿里云计算有限公司 Message processing method and system, storage medium and computer terminal

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101158924A (en) * 2007-11-27 2008-04-09 北京大学 Dynamic EMS memory mappings method of virtual machine manager
CN101398768A (en) * 2008-10-28 2009-04-01 北京航空航天大学 Construct method of distributed virtual machine monitor system
CN101477495A (en) * 2008-10-28 2009-07-08 北京航空航天大学 Implementing method for distributed internal memory virtualization technology
US7596654B1 (en) * 2006-01-26 2009-09-29 Symantec Operating Corporation Virtual machine spanning multiple computers
CN101620573A (en) * 2009-07-03 2010-01-06 中国人民解放军国防科学技术大学 Virtualization method of memory management unit of X86 system structure

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7596654B1 (en) * 2006-01-26 2009-09-29 Symantec Operating Corporation Virtual machine spanning multiple computers
CN101158924A (en) * 2007-11-27 2008-04-09 北京大学 Dynamic EMS memory mappings method of virtual machine manager
CN101398768A (en) * 2008-10-28 2009-04-01 北京航空航天大学 Construct method of distributed virtual machine monitor system
CN101477495A (en) * 2008-10-28 2009-07-08 北京航空航天大学 Implementing method for distributed internal memory virtualization technology
CN101620573A (en) * 2009-07-03 2010-01-06 中国人民解放军国防科学技术大学 Virtualization method of memory management unit of X86 system structure

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102866929B (en) * 2012-07-23 2015-08-19 上海斐讯数据通信技术有限公司 Bad block repair method for memory
CN102866929A (en) * 2012-07-23 2013-01-09 上海斐讯数据通信技术有限公司 Bad block repair method for memory
US10394714B2 (en) 2013-07-26 2019-08-27 Futurewei Technologies, Inc. System and method for false sharing prediction
WO2015010658A1 (en) * 2013-07-26 2015-01-29 Huawei Technologies Co., Ltd. System and method for detecting false sharing
US9678883B2 (en) 2013-07-26 2017-06-13 Futurewei Technologies, Inc. System and method for detecting false sharing
US10402292B2 (en) 2013-07-26 2019-09-03 Futurewei Technologies, Inc. System and method for detecting false sharing
CN105468434A (en) * 2015-12-11 2016-04-06 浪潮(北京)电子信息产业有限公司 Method and device for processing exception of virtual machine
CN107223236B (en) * 2016-12-29 2020-05-15 深圳前海达闼云端智能科技有限公司 Method and device for simultaneously operating multiple virtual machines and electronic equipment
CN107223236A (en) * 2016-12-29 2017-09-29 深圳前海达闼云端智能科技有限公司 Method, device and electronic equipment that multi-dummy machine is run simultaneously
US10901766B2 (en) 2016-12-29 2021-01-26 Cloudminds (Shenzhen) Robotics Systems Co., Ltd. Method and apparatus for simultaneously running multiple virtual machines, and electronic device
CN108540341A (en) * 2018-03-19 2018-09-14 云宏信息科技股份有限公司 resource monitoring method and device
CN112363796A (en) * 2020-10-19 2021-02-12 海光信息技术股份有限公司 Virtual machine shared memory allocation method and device and electronic equipment
CN114844833A (en) * 2022-03-30 2022-08-02 阿里云计算有限公司 Message processing method and system, storage medium and computer terminal

Also Published As

Publication number Publication date
WO2012163017A1 (en) 2012-12-06

Similar Documents

Publication Publication Date Title
CN102439567A (en) Processing method for distributed virtual machine access exception and virtual machine monitor
US9886736B2 (en) Selectively killing trapped multi-process service clients sharing the same hardware context
CN108932154B (en) Distributed virtual machine manager
US20170161209A1 (en) Identifying stale entries in address translation cache
CN105518631B (en) EMS memory management process, device and system and network-on-chip
CN110058946B (en) Equipment virtualization method, device, equipment and storage medium
US10268595B1 (en) Emulating page modification logging for a nested hypervisor
CN104573422A (en) Virtual machine-based application process operation method and device
US11093332B2 (en) Application checkpoint and recovery system
CN103150225B (en) Disk full abnormity fault tolerance method of object parallel storage system based on application level agent
US10083125B2 (en) Method to efficiently implement synchronization using software managed address translation
US8006238B2 (en) Workload partitioning in a parallel system with hetergeneous alignment constraints
CN102722452B (en) Memory redundancy eliminating method
CN103019847A (en) Method and system for migrating data of virtual machine
US11429513B1 (en) Testing and verifying cloud services using a computational graph
US10416916B2 (en) Method and memory merging function for merging memory pages
CN103488505A (en) Patching method, device and system
US20200348962A1 (en) Memory-fabric-based processor context switching system
KR101790728B1 (en) Method for data input-output of hypervisor in virtualization, and recording medium thereof
CN105183668A (en) Cache refreshing method and device
US20100115508A1 (en) Plug-in architecture for hypervisor-based system
CN118277344B (en) Storage node interlayer merging method and device of distributed key value storage system
US20190065333A1 (en) Computing systems and methods with functionalities of performance monitoring of the underlying infrastructure in large emulated system
US9251100B2 (en) Bitmap locking using a nodal lock
Zulli Challenges and Advantages of Distributed Systems in Mainstream Computing: Exploring The History and Future of Process Migration.

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20120502