Operating-system exchanges using memory-pointer transfers
First Claim
1. An operating-system (OS) exchange process comprising:
- executing a program set of at least one program on an old OS executing on a computer, the computer allocating respective memory ranges to each program of the program set;
partitioning the computer to create a source partition and a target partition, each partition having at least one processor, the program set and the old OS executing on the source partition, the partitioning including installing and executing a new OS on the target partition;
migrating the program set from the old OS to the new OS at least in part by,sending, by the old OS to the new OS via a shared memory, program memory pointers to locations in the source partition allocated to the program set, the shared memory being accessible by the old OS and the new OS, andclaiming, by the new OS, memory referred to by the program memory pointers so that the locations are then within the target partition;
transferring resources from the source partition to the target partition and terminating the old OS, the transferring including,the old OS bequeathing, by the old OS, last-remaining old OS memory and a processor to the new OS, the bequeathing including writing a time-out value and last-remaining memory pointers of the program memory pointers to the shared memory, the time-out value corresponding to a time by which the old OS will have been shut down,reading, by the new OS, the time-out value and the last-remaining memory pointers,setting, by the new OS, a timer according to the time-out value, andonce the timer has expired and the old OS has been terminated, claiming, by the new OS, the last remaining old OS memory.
2 Assignments
0 Petitions
Accused Products
Abstract
An “old” hypervisor is upgraded to or otherwise replaced by a “new” hypervisor without migrating virtual machines to a standby computer. The old hypervisor partitions the computer that it controls between a source partition and a target partition. The hypervisor and its virtual machines initially run on the source partition, while a new hypervisor is installed on the target partition. The virtual machines are migrated to the new hypervisor without physically moving the in-memory virtual-machine data. Instead, the old hypervisor sends memory pointers, and the new hypervisor claims the respective memory locations storing the virtual-machine data. After all virtual machines are migrated, the old hypervisor bequeaths the hypervisor memory and a last processor that the old hypervisor requires to run. The new hypervisor claims the bequeathed processor and hypervisor memory after the old hypervisor terminates to complete the upgrade/exchange.
-
Citations
16 Claims
-
1. An operating-system (OS) exchange process comprising:
-
executing a program set of at least one program on an old OS executing on a computer, the computer allocating respective memory ranges to each program of the program set; partitioning the computer to create a source partition and a target partition, each partition having at least one processor, the program set and the old OS executing on the source partition, the partitioning including installing and executing a new OS on the target partition; migrating the program set from the old OS to the new OS at least in part by, sending, by the old OS to the new OS via a shared memory, program memory pointers to locations in the source partition allocated to the program set, the shared memory being accessible by the old OS and the new OS, and claiming, by the new OS, memory referred to by the program memory pointers so that the locations are then within the target partition; transferring resources from the source partition to the target partition and terminating the old OS, the transferring including, the old OS bequeathing, by the old OS, last-remaining old OS memory and a processor to the new OS, the bequeathing including writing a time-out value and last-remaining memory pointers of the program memory pointers to the shared memory, the time-out value corresponding to a time by which the old OS will have been shut down, reading, by the new OS, the time-out value and the last-remaining memory pointers, setting, by the new OS, a timer according to the time-out value, and once the timer has expired and the old OS has been terminated, claiming, by the new OS, the last remaining old OS memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An operating-system (OS) exchange system comprising non-transitory media encoded with code that, when executed by a processor, implements a process including:
-
executing a program set of at least one program on an old OS executing on a computer system, the computer system allocating respective memory ranges to each program of the program set; partitioning the computer system to create a source partition and a target partition, each partition having at least one processor, the program set and the old OS executing on the source partition, the partitioning including installing and executing a new OS on the target partition; migrating the program set from the old OS to the new OS at least in part by, sending, by the old OS to the new OS via a shared memory, program memory pointers to locations in the source partition allocated to the program set, the shared memory being accessible by the old OS and the new OS, and claiming, by the new OS, memory referred to by the program memory pointers so that the locations are then within the target partition; transferring resources from the source partition to the target partition and terminating the old OS, the transferring including, bequeathing, by the old OS, last-remaining old OS memory and a processor to the new OS, the bequeathing including writing a time-out value and last-remaining memory pointers of the program memory pointers to the shared memory, the time-out value corresponding to a time by which the old OS will have been shut down, reading, by the new OS, the time-out value and the last-remaining memory pointers, setting, by the new OS, a timer according to the time-out value, and once the timer has expired and the old OS has been terminated, claiming, by the new OS, the last remaining old OS memory. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification