DETAILED ACTION
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1-20 are rejected under 35 U.S.C. 102(a)(1)/(a)(2) as being anticipated by Cheng (US 2013/0,229,421).
Referring to claims 1, 9 and 16, Cheng discloses a method comprising:
based on an allocation (fig. 3, hypervisor 311; para.0028, hypervisor 311 allocates resources) of display surface (fig. 2, virtual machine display 210) to a virtual machine VM (fig. 3, virtual machine 310-1);
transmitting image data (fig. 7, surface 702) representing the display surface over virtual channels (fig. 5, virtual function 513-2) that form a first portion of a scan-out path (fig. 5, from VM 511-2 to virtual function 513-2 and GPU frame buffer memory partition 519-2) from the VM to memory (fig. 3, memory 300; fig. 4, virtual function 411-1 with MMIO regs and memory base address; para.0039) assigned to the display surface in a virtual address space (fig. 5, GPU frame buffer memory partitions for virtual functions 519; fig. 1, IOMMU 113; AAPA, para.0003) corresponding to the VM;
the scan-out path isolating the image data from a host operating system OS (fig. operating system 116) of the VM; and
based on the transmitting, causing a physical display engine (fig. 4, physical card 412) to provide a second portion (fig. 5, VM 511-3 to virtual function 513-3) of the scan-out path from the memory to a display device (fig. 2, host operating system display 200) based on fetching the image data from the memory using the virtual address space (fig. 4, fetching virtual function 411-2/411-2 using MMIO and memory BAR base address), and using the image data fetched from the memory to send/scans-out a surface (fig. 2, using virtual machine display 210/211) corresponding to the display surface to the display device.
As to claim 2, Cheng discloses the method of claim 1, wherein the allocation of the display surface includes: configuring the physical display engine to fetch (fig. 4, configured PCI configurations, MMIO registers, memory BAR) the image data from the memory using the virtual address space.
As to claim 3, Cheng discloses the method of claim 1, wherein the allocation
is performed responsive to the VM transmitting a request (fig. 5, VM 512-2 to virtual function 513-2) for the allocation to privileged software (fig. 5, hypervisor 514) over virtual channel that is from the VM to privileged software, and
is isolated from the host OS (fig. 5, hypervisor 514 isolated from host 510 OS) to cause the privilege software to, responsive to the request, configure the physical display engine to perform configuring a resolution (para.0025, independent resolution) the physical display engine uses to scan-out the surface (fig. 5, via GPU frame buffer memory partitions for virtual machine virtual functions).
As to claims 4-5 and 11-12, Cheng discloses the method of claim 1, wherein the allocation includes a configuration (fig. 5, physical function 512, PCI configurations, MMIO registers and memory BARs) of the physical display engine to perform generation of the surface by the physical display compositing (fig. 6, monitor 617) of the display surface from the virtual machine (fig. 5, virtual machine 511-2, virtual function 513-2; fig. 6, virtual function 620) and one second display surface from a second virtual machine (fig. 5, virtual machine 511-3) while isolating the compositing from the OS.
As to claims 6 and 13, Cheng discloses the method of claim 1, wherein the transmitting the image data is performed using a kernel mode driver (fig. 5, hypervisor 514) of the virtual machine.
As to claims 7 and 14, Cheng discloses the method of claim 1, wherein the display surfaces are isolated, from generation through to scan-out, from the host OS and another VM hosted using the host OS (fig. 5, VM 511-2/511-3 are isolated as in virtual functions 513-2/513-3 and as in frame buffer partitions 519-2/519-3).
As to claim 8, Cheng discloses the method of claim 1, wherein the host OS is running on the VM (fig. 5, host 510 OS).
As to claim 10, Cheng discloses the processor of claim 9, wherein the memory comprises system memory (fig. 1, system memory 112) of a host system (fig. 1, system 100) of the VM.
As to claims 15 and 20, Cheng discloses the processor of claim 9, wherein the processor is a system implemented partially in a data center (para.0024, servers).
As to claim 17, Cheng discloses the system of claim 16, wherein the VM executes a first guest OS (fig. 2, virtual machine display 210) of the host OS, and the transmitting causes the physical display engine (fig. 2, host operating system display 200) to generate the surface as a composite (fig. 5, desktop compositor 515 & GPU driver 516-1) of the display surfaces from the first guest OS and second display surface (fig. 2, virtual machine display 210) from a second guest OS (fig. 5, virtual machine 511-3) of the host OS.
As to claim 18, Cheng discloses the system of claim 16, wherein the operations are performed using a privilege virtual machine (fig. 3, virtualized system 312).
As to claim 19, Cheng discloses the system of claim 16, comprising:
receiving, using second virtual channel (fig. 5, virtual machine 511-3 to virtual function 513-3) allocated to a second virtual machine (fig. 5, VM 511-3), a second request for a second allocation (fig. 3, hypervisor 311; para.0028, hypervisor 311 allocates resources) of second display surface (fig. 5, VM 511-3 to VF 513-2 and VF 519-2) to the second virtual machine; and
based on the receiving of the second request, configuring the physical display engine to fetch second image data representing the second display surface from memory assigned to the second display surface in a second virtual address space of the second virtual machine (fig. 6, VF 610 to PF 610 and monitor 617).
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to examiner Cheng-Yuan Tseng whose telephone number is (571)272-9772, and fax number is (571)273-9772. The examiner can normally be reached on Monday through Friday from 09:00 to 17:30 Eastern Time. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Alicia Harrington can be reached on (571)272-2330. The fax phone number for the organization where this application or proceeding is assigned is (571)273-8300. Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at (866)217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call (800)786-9199 (IN USA OR CANADA) or (571)272-1000.
/CHENG YUAN TSENG/Primary Examiner, Art Unit 2615