Providing 3D graphics across partitions of computing device
First Claim
1. A computing device having a hardware device employed to perform a hardware function, the computing device being partitioned to include a service partition (SP) instantiated at least in part to provide capabilities relating to the hardware device, and also to include a client partition (CP) instantiated at least in part to consume such capabilities, the hardware device being assigned to and controlled by the SP, the CP having:
- a user mode portion of a hardware device driver (UMD) in a user mode portion of such CP, the UMD corresponding to and being developed for the hardware device, the UMD for receiving commands from an application at a user mode portion of the CP and for processing such commands to produce actions to be taken by the hardware device; and
a user mode runtime module in the user mode portion of such CP for assisting the UMD in processing commands of a particular type; and
the SP having;
a partition hardware context object in a kernel mode portion of such SP, the partition hardware context object corresponding to the CP and representing a distinct instance of state for the hardware device with regard to the CP;
a kernel mode portion of the hardware device driver (KMD) in the kernel mode portion of such SP, the KMD corresponding to and being developed for the hardware device and also corresponding to the UMD, the KMD for directly controlling the hardware device;
a kernel mode runtime module in the kernel mode portion of such SP, the kernel mode runtime module corresponding to the user mode runtime module in the CP for assisting the KMD in processing commands and for maintaining state for the hardware device with regard to the CP in the partition hardware context object;
the computing device also including a shared memory module shared by the CP and the SP, with a portion in the CP and a portion in the SP, the portions sharing pages of memory between the CP and the SP and managing related cross-partition notifications, whereby hardware device information placed in the pages shared by the memory module by the CP is directly available to the SP for further action, wherein commands from the CP are shunted by way of the pages shared by the memory module across partitions from the CP to the SP to be acted upon by the hardware device as controlled by the SP.
2 Assignments
0 Petitions
Accused Products
Abstract
A computing device has a graphics hardware device employed to display graphics on a display, and is partitioned to include a video services partition (VSP) instantiated at least in part to provide graphics capabilities, and also to include a video client partition (VCP) instantiated at least in part to consume such graphics capabilities. The graphics hardware device is assigned to and controlled by the VSP. A shared video memory module is shared by the VCP and the VSP such that graphics information placed in the pages shared by the video memory module by the VCP is directly available to the VSP for further action such that graphics commands from the VCP are shunted by way of the pages shared by the video memory module across partitions from the VCP to the VSP to be acted upon by the graphics hardware device as controlled by the VSP.
7 Citations
18 Claims
-
1. A computing device having a hardware device employed to perform a hardware function, the computing device being partitioned to include a service partition (SP) instantiated at least in part to provide capabilities relating to the hardware device, and also to include a client partition (CP) instantiated at least in part to consume such capabilities, the hardware device being assigned to and controlled by the SP,
the CP having: -
a user mode portion of a hardware device driver (UMD) in a user mode portion of such CP, the UMD corresponding to and being developed for the hardware device, the UMD for receiving commands from an application at a user mode portion of the CP and for processing such commands to produce actions to be taken by the hardware device; and
a user mode runtime module in the user mode portion of such CP for assisting the UMD in processing commands of a particular type; and
the SP having;
a partition hardware context object in a kernel mode portion of such SP, the partition hardware context object corresponding to the CP and representing a distinct instance of state for the hardware device with regard to the CP;
a kernel mode portion of the hardware device driver (KMD) in the kernel mode portion of such SP, the KMD corresponding to and being developed for the hardware device and also corresponding to the UMD, the KMD for directly controlling the hardware device;
a kernel mode runtime module in the kernel mode portion of such SP, the kernel mode runtime module corresponding to the user mode runtime module in the CP for assisting the KMD in processing commands and for maintaining state for the hardware device with regard to the CP in the partition hardware context object;
the computing device also including a shared memory module shared by the CP and the SP, with a portion in the CP and a portion in the SP, the portions sharing pages of memory between the CP and the SP and managing related cross-partition notifications, whereby hardware device information placed in the pages shared by the memory module by the CP is directly available to the SP for further action, wherein commands from the CP are shunted by way of the pages shared by the memory module across partitions from the CP to the SP to be acted upon by the hardware device as controlled by the SP. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-readable medium having stored thereon instructions for being implemented on a computing device having a hardware device employed to perform a hardware function, the instructions for partitioning the computing device to include a service partition (SP) instantiated at least in part to provide capabilities relating to the hardware device, and also to include a client partition (CP) instantiated at least in part to consume such capabilities, the hardware device being assigned to and controlled by the SP,
the CP having: -
a user mode portion of a hardware device driver (UMD) in a user mode portion of such CP, the UMD corresponding to and being developed for the hardware device, the UMD for receiving commands from an application at a user mode portion of the CP and for processing such commands to produce actions to be taken by the hardware device; and
a user mode runtime module in the user mode portion of such CP for assisting the UMD in processing commands; and
the SP having;
a partition hardware context object in a kernel mode portion of such SP, the partition hardware context object corresponding to the CP and representing a distinct instance of state for the hardware device with regard to the CP;
a kernel mode portion of the hardware device driver (KMD) in the kernel mode portion of such SP, the KMD corresponding to and being developed for the hardware device and also corresponding to the UMD, the KMD for directly controlling the hardware device;
a kernel mode runtime module in the kernel mode portion of such SP, the kernel mode runtime module corresponding to the user mode runtime module in the CP for assisting the KMD in processing commands and for maintaining state for the hardware device with regard to the CP in the partition hardware context object;
the instructions also for instantiating on the computer device a shared memory module shared by the CP and the SP, with a portion in the CP and a portion in the SP, the portions sharing pages of memory between the CP and the SP and managing related cross-partition notifications, whereby hardware device information placed in the shared memory module by the CP is directly available to the SP for further action, wherein commands from the CP are shunted by way of the pages shared by memory module across partitions from the CP to the SP to be acted upon by the hardware device as controlled by the SP. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification