11334496

Method and System for Providing Processor-Addressable Persistent Memory to Guest Operating Systems in a Storage System

PublishedMay 17, 2022
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
5 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method for managing data, the method comprising: sending, by a hypervisor, memory mapping information to a client virtual machine (VM), wherein the hypervisor and the client VM are executing on a host computing device, and wherein the memory mapping information specifies: a first guest OS virtual memory segment mapped to a first memory device segment in a remote memory device within a remote host computing device; a type of memory of the first memory device; a second guest OS virtual memory segment mapped to a second memory device segment in a local memory device; and a second type of memory of the second memory device; obtaining, by the client VM, the memory mapping information; in response to the obtaining: based on determination, by the client VM, to store data in the remote memory device and the local memory device, the client VM utilizes the memory mapping information to select i) the first guest OS virtual memory segment and ii) the second guest OS virtual memory segment; issuing, by the client VM to the hypervisor, a write request to the first guest OS virtual memory segment; after the sending, receiving, by the hypervisor, the write request; and in response to receiving the write request: identifying, using a memory mapper in the hypervisor, the first memory device segment mapped to the first guest OS virtual memory segment; in response to identifying the first memory device segment, issuing, by the hypervisor, request to the remote host computing device specifying storing of the data in the first memory device segment; issuing, by the client VM to the hypervisor, a second write request to the second guest OS virtual memory segment; after the sending, receiving, by the hypervisor, the second write request; and in response to receiving the second write request: identifying, using the memory mapper in the hypervisor, the second memory device segment mapped to the second guest OS virtual memory segment; in response to identifying the second memory device segment, storing, by the hypervisor, the data in the second memory device segment.

2

2. The method of claim 1 , wherein the first memory device is a persistent memory (PMem) device.

3

3. The method of claim 1 , further comprising: sending, by the hypervisor, second memory mapping information to a second client VM, wherein the second client VM is executing on the host computing device and wherein the second memory mapping information specifies that a second memory device segment of the first memory device is mapped to a third guest OS virtual memory segment.

4

4. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for managing data, the method comprising: sending, by a hypervisor on a host computing device, memory mapping information to a client virtual machine (VM), wherein the hypervisor and the client VM are executing on the host computing device, and wherein the memory mapping information specifies: a first guest OS virtual memory segment mapped to a first memory device segment in a remote memory device within a remote host computing device; a type of memory of the first memory device; a second guest OS virtual memory segment mapped to a second memory device segment in a local memory device; and a second type of memory of the second memory device; obtaining, by the client VM, the memory mapping information; in response to the obtaining: based on determination, by the client VM, to store data in the remote memory device and the local memory device, the client VM utilizes the memory mapping information to select i) the first guest OS virtual memory segment and ii) the second guest OS virtual memory segment; issuing, by the client VM to the hypervisor, a write request to the first guest OS virtual memory segment; after the sending, receiving, by the hypervisor, the write request; and in response to receiving the write request: identifying, using a memory mapper in the hypervisor, the first memory device segment mapped to the first guest OS virtual memory segment; in response to identifying the first memory device segment, issuing, by the hypervisor, request to the remote host computing device specifying storing of the data in the first memory device segment; issuing, by the client VM to the hypervisor, a second write request to the second guest OS virtual memory segment; after the sending, receiving, by the hypervisor, the second write request; and in response to receiving the second write request: identifying, using the memory mapper in the hypervisor, the second memory device segment mapped to the second guest OS virtual memory segment; in response to identifying the second memory device segment, storing, by the hypervisor, the data in the second memory device segment.

5

5. A system, comprising: a processor; a hypervisor executing on the processor; a memory device; and wherein the hypervisor is programmed to: send memory mapping information to a client virtual machine (VM), wherein the hypervisor and the client VM are executing on a host computing device, and wherein the memory mapping information specifies: a first guest OS virtual memory segment mapped to a first memory device segment in a remote memory device within a remote host computing device; a type of memory of the first memory device; a second guest OS virtual memory segment mapped to a second memory device segment in a local memory device; and a second type of memory of the second memory device; after the send, obtain a write request; and in response to obtaining the write request: identify, using a memory mapper in the hypervisor, the first memory device segment mapped to the first guest OS virtual memory segment; in response to identifying the first memory device segment, issue request to the remote host computing device specifying storing of data in the first memory device segment; after the send, receive a second write request; and in response to receiving the second write request: identify, using the memory mapper in the hypervisor, the second memory device segment mapped to the second guest OS virtual memory segment; in response to identifying the second memory device segment, store the data in the second memory device segment; wherein the client VM is programmed to: obtain the memory mapping information; in response to obtaining the memory mapping information, based on determination to store the data in the remote memory device and the local memory device, utilize the memory mapping information to select i) the first guest OS virtual memory segment and ii) the second guest OS virtual memory segment; issue, to the hypervisor, the write request to the first guest OS virtual memory segment; and issue, to the hypervisor, the second write request to the second guest OS virtual memory segment.

Patent Metadata

Filing Date

Unknown

Publication Date

May 17, 2022

Inventors

Matthew H. Fredette
Jonathan I. Krasner
Jean-Pierre Bono
Chakib Ouarraoui
Adnan Sahin

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “METHOD AND SYSTEM FOR PROVIDING PROCESSOR-ADDRESSABLE PERSISTENT MEMORY TO GUEST OPERATING SYSTEMS IN A STORAGE SYSTEM” (11334496). https://patentable.app/patents/11334496

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.