-
公开(公告)号:US20200133846A1
公开(公告)日:2020-04-30
申请号:US16174264
申请日:2018-10-29
Applicant: VMware, Inc.
Inventor: Kiran Tati , Xavier Deguillard , Ishan Banerjee , Julien Freche , Preeti Agarwal , Rajesh Venkatasubramanian
IPC: G06F12/02 , G06F12/0804
Abstract: Techniques for efficiently purging non-active blocks in an NVM region of an NVM device using pointer elimination are provided. In one set of embodiments, a host system can, for each level 1 (L1) page table entry of each snapshot of the NVM region, determine whether a data block of the NVM region that is pointed to by the L1 page table entry is a non-active block, and if the data block is a non-active block, remove a pointer to the data block in the L1 page table entry and reduce a reference count parameter associated with the data block by 1. If the reference count parameter has reached zero at this point, the host system purge the data block from the NVM device to the mass storage device.
-
公开(公告)号:US10586048B2
公开(公告)日:2020-03-10
申请号:US15191438
申请日:2016-06-23
Applicant: VMware, Inc.
Inventor: Xunjia Lu , Xavier Deguillard , Mukund Gunti , Vishnu Sekhar
IPC: G06F21/57 , G06F1/24 , G06F9/4401
Abstract: A computer system is rebooted upon crash without running platform firmware and without retrieving all of the modules included in a boot image from an external source and reloading them into system memory. The reboot process includes the steps of stopping and resetting all of the processing units, except one of the processing units that detected the crash event, selecting the one processing unit to execute a reboot operation, and executing the reboot operation to reboot the computer system.
-
公开(公告)号:US10528436B2
公开(公告)日:2020-01-07
申请号:US15192940
申请日:2016-06-24
Applicant: VMware, Inc.
Inventor: Pratap Subrahmanyam , Zongwei Zhou , Xavier Deguillard , Rajesh Venkatasubramanian
Abstract: Techniques for using micro-journals to ensure crash consistency of a transactional application are provided. In one embodiment, a computer system can receive a transaction associated with the transactional application, where the transaction includes a plurality of modifications to data or metadata of the transactional application. The computer system can further select a free micro-journal from a pool of micro-journals, where the pool of micro-journals are stored in a byte-addressable persistent memory of the computer system, and where each micro-journal in the pool is configured to record journal entries for a single transaction at a time. The computer system can then write journal entries into the micro-journal corresponding to the plurality of modifications included in the transaction and commit the journal entries to the byte-addressable persistent memory.
-
公开(公告)号:US20200004735A1
公开(公告)日:2020-01-02
申请号:US16560951
申请日:2019-09-04
Applicant: VMware, Inc.
Inventor: Pratap Subrahmanyam , Zongwei Zhou , Xavier Deguillard , Rajesh Venkatasubramanian
IPC: G06F16/23
Abstract: Techniques for using commit coalescing when performing micro-journal-based transaction logging are provided. In one embodiment a computer system can maintain, in a volatile memory, a globally ascending identifier, a first list of free micro-journals, and a second list of in-flight micro-journals. The computer system can further receive a transaction comprising a plurality of modifications to data or metadata stored in the byte-addressable persistent memory, select a micro-journal from the first list, obtain a lock on the globally ascending identifier, write a current value of the globally ascending identifier as a journal commit identifier into a header of the micro-journal, and write journal entries into the micro-journal corresponding to the plurality of modifications included in the transaction. The computer system can then commit the micro-journal to the byte-addressable persistent memory, increment the current value of the globally ascending identifier, and release the lock.
-
公开(公告)号:US10139876B2
公开(公告)日:2018-11-27
申请号:US15191444
申请日:2016-06-23
Applicant: VMware, Inc.
Inventor: Xunjia Lu , Xavier Deguillard , Mukund Gunti , Vishnu Sekhar
Abstract: A computer system is rebooted after updating a boot image without running platform firmware with its power-on self-test of system hardware devices and without retrieving all of the modules included in a boot image from an external source and reloading them into system memory. The reboot process includes the steps of loading one or more updated modules of the boot image into the system memory, executing the boot loader module to load for execution modules of the boot image including a system software kernel and the updated modules, and transferring execution control to the system software kernel.
-
公开(公告)号:US20170344440A1
公开(公告)日:2017-11-30
申请号:US15192940
申请日:2016-06-24
Applicant: VMware, Inc.
Inventor: Pratap Subrahmanyam , Zongwei Zhou , Xavier Deguillard , Rajesh Venkatasubramanian
Abstract: Techniques for using micro-journals to ensure crash consistency of a transactional application are provided. In one embodiment, a computer system can receive a transaction associated with the transactional application, where the transaction includes a plurality of modifications to data or metadata of the transactional application. The computer system can further select a free micro-journal from a pool of micro-journals, where the pool of micro-journals are stored in a byte-addressable persistent memory of the computer system, and where each micro-journal in the pool is configured to record journal entries for a single transaction at a time. The computer system can then write journal entries into the micro-journal corresponding to the plurality of modifications included in the transaction and commit the journal entries to the byte-addressable persistent memory.
-
公开(公告)号:US11029863B2
公开(公告)日:2021-06-08
申请号:US15693292
申请日:2017-08-31
Applicant: VMware, Inc.
Inventor: Kiran Tati , Preeti Agarwal , Julien Freche , Xavier Deguillard , Rajesh Venkatasubramanian , Ishan Banerjee
IPC: G06F3/06 , G06F13/16 , G06F12/02 , G06F12/08 , G06F11/34 , G06F9/455 , G06F13/12 , G11C29/52 , G06F21/87 , G06F11/10
Abstract: Techniques for using non-volatile random access memory (NVM) as volatile random access memory (RAM) are provided. In one set of embodiments, a computer system can detect that an amount of free space in a volatile RAM of the computer system has become low and, in response, can add one or more memory pages from an unused portion of an NVM of the computer system to the system's volatile RAM pool. Conversely, the computer system can detect that an amount of free space in the NVM has become low and, in response, can return the one or more memory pages from the volatile RAM pool back to the NVM.
-
公开(公告)号:US10963290B2
公开(公告)日:2021-03-30
申请号:US16585701
申请日:2019-09-27
Applicant: VMware, Inc.
Inventor: Xavier Deguillard , Mukund Gunti , Adrian Drzewiecki , Rajesh Venkatasubramanian
IPC: G06F9/455 , G06F3/06 , G06F9/4401 , G06F8/656
Abstract: A hypervisor exchange, e.g., an upgrade, can include consolidating resident virtual machines into a single host virtual machine, exchanging an old hypervisor with a new (upgraded) hypervisor, and disassociating the virtual resident virtual machines by migrating them to the new hypervisor. The consolidating can involve migrating the resident virtual machines from the old hypervisor to a guest hypervisor on the host virtual machine. The exchange can involve: 1) suspending the host virtual machine before the exchange; and 2) resuming the host virtual machine after the exchange; or migrating the host virtual machine from a partition including the old hypervisor to a partition hosting the new hypervisor. Either way, an exchange (upgrade) is achieve without requiring a bandwidth consuming migration over a network to a standby machine.
-
公开(公告)号:US20210034600A1
公开(公告)日:2021-02-04
申请号:US17073221
申请日:2020-10-16
Applicant: VMware, Inc.
Inventor: Pratap Subrahmanyam , Zongwei Zhou , Xavier Deguillard , Rajesh Venkatasubramanian
IPC: G06F16/23
Abstract: Techniques for using commit coalescing when performing micro-journal-based transaction logging are provided. In one embodiment a computer system can maintain, in a volatile memory, a globally ascending identifier, a first list of free micro-journals, and a second list of in-flight micro-journals. The computer system can further receive a transaction comprising a plurality of modifications to data or metadata stored in the byte-addressable persistent memory, select a micro-journal from the first list, obtain a lock on the globally ascending identifier, write a current value of the globally ascending identifier as a journal commit identifier into a header of the micro-journal, and write journal entries into the micro-journal corresponding to the plurality of modifications included in the transaction. The computer system can then commit the micro-journal to the byte-addressable persistent memory, increment the current value of the globally ascending identifier, and release the lock.
-
公开(公告)号:US10445308B2
公开(公告)日:2019-10-15
申请号:US15192937
申请日:2016-06-24
Applicant: VMware, Inc.
Inventor: Pratap Subrahmanyam , Zongwei Zhou , Xavier Deguillard , Rajesh Venkatasubramanian
Abstract: Techniques for using commit coalescing when performing micro-journal-based transaction logging are provided. In one embodiment a computer system can maintain, in a volatile memory, a globally ascending identifier, a first list of free micro-journals, and a second list of in-flight micro-journals. The computer system can further receive a transaction comprising a plurality of modifications to data or metadata stored in the byte-addressable persistent memory, select a micro-journal from the first list, obtain a lock on the globally ascending identifier, write a current value of the globally ascending identifier as a journal commit identifier into a header of the micro-journal, and write journal entries into the micro-journal corresponding to the plurality of modifications included in the transaction. The computer system can then commit the micro-journal to the byte-addressable persistent memory, increment the current value of the globally ascending identifier, and release the lock.
-
-
-
-
-
-
-
-
-