Patents by Inventor Simon M. Douglas
Simon M. Douglas has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11860796Abstract: Embodiments described herein provide techniques to manage drivers in a user space in a data processing system. One embodiment provides a data processing system configured perform operations, comprising discovering a hardware device communicatively coupled to the communication bus, launching a user space driver daemon, establishing an inter-process communication (IPC) link between a first proxy interface for the user space driver daemon and a second proxy interface for a server process in a kernel space, receiving, at the first proxy interface, an access right to enable access to a memory buffer in the kernel space, and relaying an access request for the memory buffer from the user space driver daemon via a third-party proxy interface to enable the user space driver daemon to access the memory buffer, the access request based on the access right.Type: GrantFiled: August 9, 2021Date of Patent: January 2, 2024Assignee: Apple Inc.Inventors: Jeremy C. Andrus, Joseph R. Auricchio, Russell A. Blaine, Daniel A. Chimene, Simon M. Douglas, Landon J. Fuller, Yevgen Goryachok, John K. Kim-Biggs, Arnold S. Liu, James M. Magee, Daniel A. Steffen, Roberto G. Yepez
-
Patent number: 11670252Abstract: A device implementing a system for displaying an image includes a processor configured to, generate, during a first power state of a device, a data structure specifying image frames and a respective display time for each of the image frames, and retrieve, during a second power state of the device and from the data structure, an image frame based on the respective display time for the image frame. The at least one processor is further configured to display, during a third power state of the device, the retrieved image frame on a display of the device.Type: GrantFiled: May 29, 2020Date of Patent: June 6, 2023Assignee: Apple Inc.Inventors: Simon M. Douglas, Ross Thompson, Russell A. Blaine, Arthur L. Spence, Brad W. Simeral, Giovanni M. Agnoli, Chendi Zhang, Jacob Z. Weiss, Yiqiang Nie, Brent W. Schorsch
-
Patent number: 11086800Abstract: Embodiments described herein provide techniques to manage drivers in a user space in a data processing system. One embodiment provides a data processing system configured perform operations, comprising discovering a hardware device communicatively coupled to the communication bus, launching a user space driver daemon, establishing an inter-process communication (IPC) link between a first proxy interface for the user space driver daemon and a second proxy interface for a server process in a kernel space, receiving, at the first proxy interface, an access right to enable access to a memory buffer in the kernel space, and relaying an access request for the memory buffer from the user space driver daemon via a third-party proxy interface to enable the user space driver daemon to access the memory buffer, the access request based on the access right.Type: GrantFiled: May 22, 2020Date of Patent: August 10, 2021Assignee: Apple Inc.Inventors: Jeremy C. Andrus, Joseph R. Auricchio, Russell A. Blaine, Daniel A. Chimene, Simon M. Douglas, Landon J. Fuller, Yevgen Goryachok, John K. Kim-Biggs, Arnold S. Liu, James M. Magee, Daniel A. Steffen, Roberto G. Yepez
-
Publication number: 20200379925Abstract: Embodiments described herein provide techniques to manage drivers in a user space in a data processing system. One embodiment provides a data processing system configured perform operations, comprising discovering a hardware device communicatively coupled to the communication bus, launching a user space driver daemon, establishing an inter-process communication (IPC) link between a first proxy interface for the user space driver daemon and a second proxy interface for a server process in a kernel space, receiving, at the first proxy interface, an access right to enable access to a memory buffer in the kernel space, and relaying an access request for the memory buffer from the user space driver daemon via a third-party proxy interface to enable the user space driver daemon to access the memory buffer, the access request based on the access right.Type: ApplicationFiled: May 22, 2020Publication date: December 3, 2020Inventors: Jeremy C. Andrus, Joseph R. Auricchio, Russell A. Blaine, Daniel A. Chimene, Simon M. Douglas, Landon J. Fuller, Yevgen Goryachok, John K. Kim-Biggs, Arnold S. Liu, James M. Magee, Daniel A. Steffen, Roberto G. Yepez
-
Patent number: 9336560Abstract: The disclosed embodiments provide a system that facilitates seamlessly switching between graphics-processing units (GPUs) to drive a display. In one embodiment, the system receives a request to switch from using a first GPU to using a second GPU to drive the display. In response to this request, the system uses a kernel thread which operates in the background to configure the second GPU to prepare the second GPU to drive the display. While the kernel thread is configuring the second GPU, the system continues to drive the display with the first GPU and a user thread continues to execute a window manager which performs operations associated with servicing user requests. When configuration of the second GPU is complete, the system switches the signal source for the display from the first GPU to the second GPU.Type: GrantFiled: August 4, 2014Date of Patent: May 10, 2016Assignee: Apple Inc.Inventors: Thomas W. Costa, Simon M. Douglas, David J. Redman
-
Publication number: 20140340411Abstract: The disclosed embodiments provide a system that facilitates seamlessly switching between graphics-processing units (GPUs) to drive a display. In one embodiment, the system receives a request to switch from using a first GPU to using a second GPU to drive the display. In response to this request, the system uses a kernel thread which operates in the background to configure the second GPU to prepare the second GPU to drive the display. While the kernel thread is configuring the second GPU, the system continues to drive the display with the first GPU and a user thread continues to execute a window manager which performs operations associated with servicing user requests. When configuration of the second GPU is complete, the system switches the signal source for the display from the first GPU to the second GPU.Type: ApplicationFiled: August 4, 2014Publication date: November 20, 2014Inventors: Thomas W. Costa, Simon M. Douglas, David J. Redman
-
Patent number: 8797334Abstract: The disclosed embodiments provide a system that facilitates seamlessly switching between graphics-processing units (GPUs) to drive a display. In one embodiment, the system receives a request to switch from using a first GPU to using a second GPU to drive the display. In response to this request, the system uses a kernel thread which operates in the background to configure the second GPU to prepare the second GPU to drive the display. While the kernel thread is configuring the second GPU, the system continues to drive the display with the first GPU and a user thread continues to execute a window manager which performs operations associated with servicing user requests. When configuration of the second GPU is complete, the system switches the signal source for the display from the first GPU to the second GPU.Type: GrantFiled: January 6, 2010Date of Patent: August 5, 2014Assignee: Apple Inc.Inventors: Thomas W. Costa, Simon M. Douglas, David J. Redman
-
Patent number: 8327171Abstract: One embodiment of the present invention provides a system that enables a computing device to save additional power by entering a “hibernation mode,” wherein the active state of the computing device is preserved in non-volatile storage while power to volatile storage is turned off. During operation, the system reanimates a computing device from a hibernation image by restoring reanimation code from the hibernation image and then executing the reanimation code. While executing this reanimation code, the system restores the rest of the hibernation image by, reading compressed data containing the rest of the hibernation image, and decompressing the compressed data using computational circuitry within the computing device. During this process, the decompression operations are overlapped with the reading operations to improve performance.Type: GrantFiled: March 22, 2012Date of Patent: December 4, 2012Assignee: Apple Inc.Inventors: Dean Reece, Simon M. Douglas
-
Publication number: 20120185715Abstract: One embodiment of the present invention provides a system that enables a computing device to save additional power by entering a “hibernation mode,” wherein the active state of the computing device is preserved in non-volatile storage while power to volatile storage is turned off. During operation, the system reanimates a computing device from a hibernation image by restoring reanimation code from the hibernation image and then executing the reanimation code. While executing this reanimation code, the system restores the rest of the hibernation image by, reading compressed data containing the rest of the hibernation image, and decompressing the compressed data using computational circuitry within the computing device. During this process, the decompression operations are overlapped with the reading operations to improve performance.Type: ApplicationFiled: March 22, 2012Publication date: July 19, 2012Applicant: APPLE INC.Inventors: Dean Reece, Simon M. Douglas
-
Patent number: 8161306Abstract: One embodiment of the present invention provides a system that enables a computing device to save additional power by entering a “hibernation mode,” wherein the active state of the computing device is preserved in non-volatile storage while power to volatile storage is turned off. During operation, the system reanimates a computing device from a hibernation image by restoring reanimation code from the hibernation image and then executing the reanimation code. While executing this reanimation code, the system restores the rest of the hibernation image by, reading compressed data containing the rest of the hibernation image, and decompressing the compressed data using computational circuitry within the computing device. During this process, the decompression operations are overlapped with the reading operations to improve performance.Type: GrantFiled: October 16, 2009Date of Patent: April 17, 2012Assignee: Apple Inc.Inventors: Dean Reece, Simon M. Douglas
-
Publication number: 20120026403Abstract: The disclosed embodiments relate to a system for managing power for a display. During operation, the system receives a video-blank command, which specifies that the display is to enter a video-blank mode wherein the display outputs a blank screen. In response to the video-blank command, the system causes the display to output a blank screen, and powers down display components associated with outputting a display signal to the display. In some embodiments, the display additionally comprises audio components including an audio-output device, and powering down the display components involves maintaining an existing power state for the audio components, so that the audio components can continue to output an audio signal while the display components are powered down.Type: ApplicationFiled: September 17, 2010Publication date: February 2, 2012Applicant: APPLE INC.Inventors: Maciej Maciesowicz, Maria A. Tovar, Simon M. Douglas
-
Publication number: 20110164045Abstract: The disclosed embodiments provide a system that facilitates seamlessly switching between graphics-processing units (GPUs) to drive a display. In one embodiment, the system receives a request to switch from using a first GPU to using a second GPU to drive the display. In response to this request, the system uses a kernel thread which operates in the background to configure the second GPU to prepare the second GPU to drive the display. While the kernel thread is configuring the second GPU, the system continues to drive the display with the first GPU and a user thread continues to execute a window manager which performs operations associated with servicing user requests. When configuration of the second GPU is complete, the system switches the signal source for the display from the first GPU to the second GPU.Type: ApplicationFiled: January 6, 2010Publication date: July 7, 2011Applicant: APPLE INC.Inventors: Thomas W. Costa, Simon M. Douglas, David J. Redman
-
Publication number: 20100037076Abstract: One embodiment of the present invention provides a system that enables a computing device to save additional power by entering a “hibernation mode,” wherein the active state of the computing device is preserved in non-volatile storage while power to volatile storage is turned off. During operation, the system reanimates a computing device from a hibernation image by restoring reanimation code from the hibernation image and then executing the reanimation code. While executing this reanimation code, the system restores the rest of the hibernation image by, reading compressed data containing the rest of the hibernation image, and decompressing the compressed data using computational circuitry within the computing device. During this process, the decompression operations are overlapped with the reading operations to improve performance.Type: ApplicationFiled: October 16, 2009Publication date: February 11, 2010Applicant: APPLE INC.Inventors: Dean Reece, Simon M. Douglas
-
Patent number: 7640440Abstract: One embodiment of the present invention provides a system that enables a computing device to save additional power by entering a “hibernation mode,” wherein the active state of the computing device is preserved in non-volatile storage while power to volatile storage is turned off. During operation, the system reanimates a computing device from a hibernation image by restoring reanimation code from the hibernation image and then executing the reanimation code. While executing this reanimation code, the system restores the rest of the hibernation image by, reading compressed data containing the rest of the hibernation image, and decompressing the compressed data using computational circuitry within the computing device. During this process, the decompression operations are overlapped with the reading operations to improve performance.Type: GrantFiled: April 25, 2006Date of Patent: December 29, 2009Assignee: Apple Inc.Inventors: Dean Reece, Simon M. Douglas