Abstract:
PROBLEM TO BE SOLVED: To provide a dynamic binary translator apparatus for translating a first block of one page size into a second block of another page size.SOLUTION: An apparatus includes a redirection page mapper 514 responsive to a memory page characteristic of a first memory 506 for mapping an address of the first memory to an address of a second memory 512, a memory fault behavior detector 516 operable to detect memory fault during execution of a second block and to accumulate a fault count to a trigger threshold, and a regeneration component 518 responsive to the fault count reaching the trigger threshold to discard the second block and cause a first block to be retranslated into a retranslated block with its memory references remapped by a page table walk.
Abstract:
PROBLEM TO BE SOLVED: To avoid an overhead to translate an external library such as a system library concerning a system for translating and executing a program code including a function call. SOLUTION: A subject program 106 includes a subject execution file 107 and multiple subject libraries. The subject libraries include a monopolistic library 109 and a system library 111. A translator 105 replaces the call of the subject program 106 with respect to the function of the subject system library 111 with a call with respect to a function in a native system library 117 through the use of native binding. COPYRIGHT: (C)2011,JPO&INPIT
Abstract:
Ein Betriebsverfahren eines Datenverarbeitungssystems (100), das aufweist einen Prozessor (131A, 131C), einen mit dem Prozessor verbundenen Hauptspeicher (133A, 133C), wenigstens einen Eingabe/Ausgabe (I/O)-Adapter (232A,..., 232E), der eine Verbindung zu einem externen Netzwerk ermöglicht, einen physischen Netzwerkadapter (134), der eine Single-Root-IO-Virtualisierungstechnologie implementiert, und eine Virtualisierungsverwaltungskomponente (Hypervisor 125, 225), die im Datenverarbeitungssystem (100) ausgeführt wird und die eine Mehrzahl an Betriebssystempartitionen (OS) erzeugt, wobei der Prozessor eine Checkpoint-Anwendung (360) ausführt, wobei ein HAC (High Availability Checkpoint)-Dienstprogramm (250) ausgeführt wird, das den physischen Netzwerkadapter (134) veranlasst, das Verfahren auszuführen; wobei das Verfahren aufweist:Empfangen (406) am physischen Netzwerkadapter (134) von Konfigurationsinformationen, die eine Angabe bereitstellen, dass eine oder mehrere virtuelle Maschinen (114A, 114B) jeweils eine Checkpointing-Technologie verwenden;Empfangen (408) am physischen Netzwerkadapter (134) von einem oder mehreren ausgehenden Netzwerkpaketen (320) von einer ersten virtuellen Maschine (114A);wobei der physische Netzwerkadapter (134) als Reaktion auf den Empfang der ausgehenden Netzwerkpakete (320) von der ersten virtuellen Maschine (114A) durch den physischen Netzwerkadapter (134):bestimmt, ob die virtuelle Maschine (114A), von der das ausgehende Netzwerkpaket (320) stammt, eine Checkpointing-Technologie einsetzt; undals Reaktion auf eine Bestimmung (410), dass die virtuelle Maschine (114A), von der das ausgehende Netzwerkpaket (320) stammt, eine Checkpointing-Technologie einsetzt, die ausgehenden Netzwerkpakete (320) puffert (414);eine Benachrichtigung empfängt, dass eine Checkpointing-Operation erfolgreich abgeschlossen wurde (418); undals Reaktion auf den Empfang der Benachrichtigung, dass die Checkpointing-Operation erfolgreich abgeschlossen wurde, eine Übertragung (422) des gepufferten Netzwerkpaketes vom Netzwerkadapter (134) an ein Ziel in einem zugehörigen Netzwerk (170) auslöst;Zuweisen (506) einer höheren Priorität an gepufferte Netzwerkpakete, die von einer virtuellen Maschine (114A) stammen, die Checkpointing-Technologie nutzt; und Zuweisen (512) einer niedrigeren Priorität an ein Netzwerkpaket, das aktuell von einer anderen virtuellen Maschine (114C) stammt, die keine Checkpointing-Technologie nutzt; undBestimmen einer Planung (514) der Paketübertragung unter Verwendung einer einem Netzwerkpaket (320) zugewiesenen Priorität;wobei die dem gepufferten Netzwerkpaket zugewiesene höhere Priorität eine Netzwerklatenz minimiert.
Abstract:
A dynamic binary translator apparatus, method and program for translating a first block of binary computer code intended for execution in a subject execution environment having a first memory of one page size into a second block for execution in a second execution environment having a second memory of another page size, comprising a redirection page mapper responsive to a page characteristic of the first memory for mapping an address of the first memory to an address of the second memory; a memory fault behaviour detector operable to detect memory faulting during execution of the second block and to accumulate a fault count to a trigger threshold; and a regeneration component responsive to the fault count reaching the trigger threshold to discard the second block and cause the first block to be retranslated with its memory references remapped by a page table walk.
Abstract:
A dynamic binary translator apparatus, method and program for translating a first block of binary computer code intended for execution in a subject execution environment having a first memory of one page size into a second block for execution in a second execution environment having a second memory of another page size, comprising a redirection page mapper responsive to a page characteristic of the first memory for mapping an address of the first memory to an address of the second memory; a memory fault behaviour detector operable to detect memory faulting during execution of the second block and to accumulate a fault count to a trigger threshold; and a regeneration component responsive to the fault count reaching the trigger threshold to discard the second block and cause the first block to be retranslated with its memory references remapped by a page table walk.
Abstract:
A system comprises a processor running a hypervisor for virtual machines (VMs), a cache, e.g. a write-back cache, and a memory storing VM images for a differential check-pointing failover technique. The cache comprises rows having a memory address, a cache line, and an image modification flag. The modification flag is set (430) when a cache line is modified (420) by a backed-up VM (425), for which an image is saved in memory, while hypervisor actions in privilege mode do not set the flag. Flagged cache lines addresses are written in a log of the memory upon eviction (440) or during periodic checkpoints. Replication of the VM image in another memory can be obtained by fetching the cache lines stored at the logged addresses. Using the modification bit flag instead of dirty bit tags ensures that modified cache lines are written to the log without being flushed at the same time.
Abstract:
This invention relates to a method and apparatus for managing high availability of virtual machines. In particular this invention relates to a method and apparatus for managing the checkpoint-based high availability of a backup virtual machine in the event of an application failure on a primary virtual machine. There is described a method, system, computer program product and computer program for failure monitoring and recovery comprising: providing a first copy of an application of a first virtual machine; storing state information from the executing first application at regular checkpoints; monitoring real time state information for failure conditions; generating an interrupt from state information of a failure point; on interrupt, providing a second copy of the application for executing from the checkpoint; making a first change to the operating environment of the second copy before the failure point; and initiating execution of the second copy of the application.
Abstract:
Diese Erfindung betrifft ein Verfahren und eine Vorrichtung zum Verwalten der Hochverfügbarkeit von virtuellen Maschinen. Insbesondere betrifft diese Erfindung ein Verfahren und eine Vorrichtung zum Verwalten der auf Prüfpunkten beruhenden Hochverfügbarkeit einer virtuellen Sicherungsmaschine im Falle eines Anwendungsfehlers auf einer primären virtuellen Maschine. Es werden ein Verfahren, ein System, ein Computerprogrammprodukt und ein Computerprogramm zum Überwachen auf und Wiederherstellen nach Fehlern beschrieben, aufweisend: das Bereitstellen einer ersten Kopie einer Anwendung einer ersten virtuellen Maschine; das Speichern von Zustandsinformationen von der sich in Ausführung befindlichen ersten Anwendung an regelmäßigen Prüfpunkten; das Überwachen von Zustandsinformationen auf Fehlerzustände in Echtzeit; das Erzeugen einer Unterbrechung aus Zustandsinformationen eines Fehlerpunkts; bei Unterbrechung das Bereitstellen einer zweiten Kopie der Anwendung zum Ausführen ab dem Prüfpunkt; das Durchführen einer ersten Änderung an der Betriebsumgebung der zweiten Kopie vor dem Fehlerpunkt; und das Initiieren des Ausführens der zweiten Kopie der Anwendung.
Abstract:
A method, system, and computer program product enhances resource/process availability by providing hardware based buffering of network packets during checkpointing in a virtualized environment. A High Availability Checkpoint (HAC) utility pre-configures a physical network adapter to buffer outgoing network packets from virtual machines that employ a checkpointing technology. In response to receiving an outgoing network packet from a virtual machine and determining that the virtual machine employs a pre-specified checkpointing technology, the physical network adapter buffers the outgoing network packet. In addition, a primary host performs/facilitates checkpoint operations (associated with the virtual machine) with a secondary host. When checkpoint operations are successfully completed, the HAC utility triggers the transmission of the buffered network packets from the network adapter to a network destination. The physical network adapter minimizes checkpointing network latency by pre-assigning a higher priority to a buffered network packet from a checkpointing virtual machine than to a new network packet that originates from a non-checkpointing virtual machine.