Apparatus and method for mediate pass through and shared memory page merge
US-2019188148-A1 · Jun 20, 2019 · US
US10733096B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10733096-B2 |
| Application number | US-201816107652-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 21, 2018 |
| Priority date | Nov 22, 2017 |
| Publication date | Aug 4, 2020 |
| Grant date | Aug 4, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method for implementing a shared memory buffer includes at an apparatus comprising a processor and a physical memory, running a host environment with a host virtual memory. The method further includes running a guest environment with a guest virtual memory, performing, by the host environment, an allocation of a frame buffer in the physical memory, and mapping the allocated frame buffer into the host virtual memory. Additionally, the method includes passing a handle of the allocated frame buffer to the guest environment and performing a mapping of the allocated frame buffer into the guest virtual memory, the mapping based on the handle of the allocated frame buffer.
Opening claim text (preview).
What is claimed is: 1. A method for implementing a shared memory buffer, the method comprising: at an apparatus comprising a processor and a physical memory, running a host environment with a host virtual memory; running a guest environment with a guest virtual memory; performing, by the host environment, an allocation of a frame buffer in the physical memory; mapping the allocated frame buffer into the host virtual memory; passing a handle of the allocated frame buffer to the guest environment; and performing a mapping of the allocated frame buffer into the guest virtual memory, the mapping based on the handle of the allocated frame buffer, wherein the guest environment is in a first container, and the first container shares part of a kernel with the host environment. 2. The method of claim 1 , wherein the guest environment provides a second instance of an operating system provided in the host environment. 3. The method of claim 1 , wherein the allocation of the frame buffer by the host environment is compliant with at least one of a display controller or graphics acceleration hardware of the apparatus. 4. The method of claim 1 , further comprising: serving an application on the guest environment; and reporting, from the guest environment to the host environment, whenever the frame buffer is updated. 5. The method of claim 4 , further comprising displaying, on a screen, contents of the updated frame buffer. 6. The method of claim 1 , wherein the host environment performs the allocation of the frame buffer in the physical memory based on information regarding the physical memory that is inaccessible from the guest environment. 7. The method of claim 1 , further comprising securing, by the host environment, the allocated frame buffer. 8. An apparatus, comprising: a processor; and a physical memory coupled to the processor, containing instructions, which when executed by the processor, cause the apparatus to: run a host environment with a host virtual memory, run a guest environment with a guest virtual memory, perform, by the host environment, an allocation of a frame buffer in the physical memory, map the allocated frame buffer into the host virtual memory, pass a handle of the allocated frame buffer to the guest environment, and perform a mapping of the allocated frame buffer into the guest virtual memory, the mapping based on the handle of the allocated frame buffer, wherein the guest environment is in a first container, and the first container shares part of a kernel with the host environment. 9. The apparatus of claim 8 , wherein the guest environment provides a second instance of an operating system provided in the host environment. 10. The apparatus of claim 8 , wherein the allocation of the frame buffer by the host environment is compliant with at least one of a display controller or graphics acceleration hardware of the apparatus. 11. The apparatus of claim 8 , wherein the memory contains instructions, which when executed by the processor, cause the apparatus to: serve an application on the guest environment; and report, from the guest environment to the host environment, whenever the frame buffer is updated. 12. The apparatus of claim 11 , wherein the memory contains instructions, which when executed by the processor, causes the apparatus to display on a screen, contents of the updated frame buffer. 13. The apparatus of claim 8 , wherein the host environment performs the allocation of the frame buffer in the physical memory based on information regarding the physical memory that is inaccessible from the guest environment. 14. The apparatus of claim 8 , wherein the memory contains instructions, which when executed by the processor, cause the apparatus to secure, by the host environment, the allocated frame buffer. 15. A non-transitory computer-readable medium comprising program code, which when executed by a processor, causes an apparatus to: run a host environment with a host virtual memory, run a guest environment with a guest virtual memory, perform, by the host environment, an allocation of a frame buffer in a physical memory, map the allocated frame buffer into the host virtual memory, pass a handle of the allocated frame buffer to the guest environment, and perform a mapping of the allocated frame buffer into the guest virtual memory, the mapping based on the handle of the allocated frame buffer, wherein the guest environment is in a first container, and the first container shares part of a kernel with the host environment. 16. The non-transitory computer-readable medium of claim 15 , wherein the guest environment provides a second instance of an operating system provided in the host environment. 17. The non-transitory computer-readable medium of claim 15 , comprising program code, which when executed by the processor, causes the apparatus to: serve an application on the guest environment; and report, from the guest environment to the host environment, whenever the frame buffer is updated. 18. The non-transitory computer-readable medium of claim 17 , comprising program code, which when executed by the processor, causes the apparatus to display on a screen, contents of the updated frame buffer. 19. The non-transitory computer-readable medium of claim 15 , wherein the host environment performs the allocation of the frame buffer in the physical memory based on information regarding the physical memory that is inaccessible from the guest environment. 20. The non-transitory computer-readable medium of claim 15 , further comprising program code, which when executed by the processor, causes the apparatus to secure, by the host environment, the allocated frame buffer.
Hypervisor-specific management and integration aspects · CPC title
Address space sharing · CPC title
Buffers; Shared memory; Pipes · CPC title
Memory management, e.g. access or allocation · CPC title
Multiple user address space allocation, e.g. using different base addresses (interprocessor communication G06F15/163) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.