Patents by Inventor Matthew Papakipos

Matthew Papakipos 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: 8478798
    Abstract: One embodiment provides a system that facilitates the execution of a web application. During operation, the system allocates a storage space on one or more storage devices for use by the web application. Next, the system creates, for the web application, a private filesystem comprising a private root directory within the storage space. Finally, the system enables access to the private filesystem for the web application through the private root directory in a manner that does not allow access to a host filesystem associated with the one or more storage devices from the web application.
    Type: Grant
    Filed: April 21, 2009
    Date of Patent: July 2, 2013
    Assignee: Google Inc.
    Inventors: Eric J. Uhrhane, Matthew Papakipos
  • Publication number: 20130159394
    Abstract: Some embodiments provide a system that executes a plugin for a web browser. During operation, the system obtains the plugin as a native code module and executes the native code module in a secure runtime environment. Next, the system enables communication between the native code module and the web browser by providing an interface bridge between the native code module and the web browser.
    Type: Application
    Filed: November 29, 2012
    Publication date: June 20, 2013
    Inventors: Antoine LABOUR, Matthew Papakipos, Shiki Okasaka, Jeffrey R. Timanus
  • Patent number: 8464038
    Abstract: Methods and apparatus for implementing modes of operation of computing device are disclosed. An example apparatus includes a mode-selection input device having a first state and a second state. The example apparatus also includes firmware operably coupled with the mode-selection input device. In the example apparatus, when the mode-selection input device is in the first state, the firmware is configured to cause the computing device to operate in a first mode of operation, a user mode. In the example apparatus, when the mode-selection input device is in the second state, the firmware is configured to cause the computing device to operate in second mode of operation, a developer mode.
    Type: Grant
    Filed: March 10, 2010
    Date of Patent: June 11, 2013
    Assignee: Google Inc.
    Inventors: Randall R. Spangler, Ryan Tabone, Anton Staaf, Christopher Masone, Matthew Papakipos
  • Publication number: 20130120418
    Abstract: Some embodiments of the present invention provide a system that renders graphics in a computing system that includes a plugin associated with a web browser in the computing system and a web application configured to execute in the web browser. During operation, the web application specifies a graphics model and provides the graphics model to the plugin. Next, the plugin generates a graphics-processing unit (GPU) command stream from the graphics model. Finally, the plugin sends the GPU command stream to a GPU of the computing system, which renders an image corresponding to the graphics model.
    Type: Application
    Filed: January 3, 2013
    Publication date: May 16, 2013
    Inventors: Robin Green, Matthew Papakipos, Evangelos Kokkevis, Gregg Tavares
  • Patent number: 8424082
    Abstract: A system that safely executes a native code module on a computing device. During operation, the system receives the native code module, which is comprised of untrusted native program code expressed using native instructions in the instruction set architecture associated with the computing device. The system then loads the native code module into a secure runtime environment, and proceeds to execute a set of instructions from the native code module in the secure runtime environment. The secure runtime environment enforces code integrity, control-flow integrity, and data integrity for the native code module. Furthermore, the secure runtime environment moderates which resources can be accessed by the native code module on the computing device and/or how these resources can be accessed. By executing the native code module in the secure runtime environment, the system facilitates achieving native code performance for untrusted program code without a significant risk of unwanted side effects.
    Type: Grant
    Filed: May 8, 2008
    Date of Patent: April 16, 2013
    Assignee: Google Inc.
    Inventors: J. Bradley Chen, Matthew T. Harren, Matthew Papakipos, David C. Sehr, Bennet S. Yee, Gregory Dardyk
  • Publication number: 20130033508
    Abstract: Some embodiments provide a system that executes a web application. During operation, the system loads the web application in a web browser and loads a native code module associated with the web application into a secure runtime environment. Next, the system writes a set of rendering commands to a command buffer using the native code module and concurrently reads the rendering commands from the command buffer. Finally, the system renders an image for use by the web application by executing the rendering commands using a graphics-processing unit (GPU).
    Type: Application
    Filed: September 25, 2012
    Publication date: February 7, 2013
    Applicant: Google Inc.
    Inventors: Antoine LABOUR, Matthew Papakipos
  • Patent number: 8368705
    Abstract: Some embodiments of the present invention provide a system that renders graphics in a computing system that includes a plugin associated with a web browser in the computing system and a web application configured to execute in the web browser. During operation, the web application specifies a graphics model and provides the graphics model to the plugin. Next, the plugin generates a graphics-processing unit (GPU) command stream from the graphics model. Finally, the plugin sends the GPU command stream to a GPU of the computing system, which renders an image corresponding to the graphics model.
    Type: Grant
    Filed: July 16, 2008
    Date of Patent: February 5, 2013
    Assignee: Google Inc.
    Inventors: Robin Green, Matthew Papakipos, Evangelos Kokkevis, Gregg Tavares
  • Patent number: 8352967
    Abstract: Some embodiments provide a system that executes a plugin for a web browser. During operation, the system obtains the plugin as a native code module and executes the native code module in a secure runtime environment. Next, the system enables communication between the native code module and the web browser by providing an interface bridge between the native code module and the web browser.
    Type: Grant
    Filed: November 10, 2008
    Date of Patent: January 8, 2013
    Assignee: Google Inc.
    Inventors: Antoine Labour, Matthew Papakipos, Shiki Okasaka, Jeffrey Timanus
  • Patent number: 8294723
    Abstract: Some embodiments provide a system that executes a web application. During operation, the system loads the web application in a web browser and loads a native code module associated with the web application into a secure runtime environment. Next, the system writes a set of rendering commands to a command buffer using the native code module and concurrently reads the rendering commands from the command buffer. Finally, the system renders an image for use by the web application by executing the rendering commands using a graphics-processing unit (GPU).
    Type: Grant
    Filed: November 7, 2008
    Date of Patent: October 23, 2012
    Assignee: Google Inc.
    Inventors: Antoine Labour, Matthew Papakipos
  • Patent number: 8271995
    Abstract: Some embodiments provide a system that facilitates the execution of a native code module. During operation, the system obtains a service registry comprising a set of service modules and determines a set of system services required by the native code module. Next, the system selects one or more of the service modules providing the system services. Finally, the system enables the system services for the native code module by providing an inter-module communication (IMC) runtime that facilitates communication between the native code module and the one or more service modules.
    Type: Grant
    Filed: March 31, 2009
    Date of Patent: September 18, 2012
    Assignee: Google Inc.
    Inventors: Matthew Papakipos, Antoine Labour
  • Publication number: 20110087870
    Abstract: Methods and apparatus for implementing modes of operation of computing device are disclosed. An example apparatus includes a mode-selection input device having a first state and a second state. The example apparatus also includes firmware operably coupled with the mode-selection input device. In the example apparatus, when the mode-selection input device is in the first state, the firmware is configured to cause the computing device to operate in a first mode of operation, a user mode. In the example apparatus, when the mode-selection input device is in the second state, the firmware is configured to cause the computing device to operate in second mode of operation, a developer mode.
    Type: Application
    Filed: March 10, 2010
    Publication date: April 14, 2011
    Applicant: GOOGLE INC.
    Inventors: Randall R. Spangler, Ryan Tabone, Anton Staaf, Christopher Masone, Matthew Papakipos
  • Publication number: 20100121893
    Abstract: One embodiment provides a system that facilitates the execution of a web application. During operation, the system allocates a storage space on one or more storage devices for use by the web application. Next, the system creates, for the web application, a private filesystem comprising a private root directory within the storage space. Finally, the system enables access to the private filesystem for the web application through the private root directory in a manner that does not allow access to a host filesystem associated with the one or more storage devices from the web application.
    Type: Application
    Filed: April 21, 2009
    Publication date: May 13, 2010
    Applicant: Google Inc.
    Inventors: Eric J. Uhrhane, Matthew Papakipos
  • Publication number: 20100122271
    Abstract: Some embodiments provide a system that executes a plugin for a web browser. During operation, the system obtains the plugin as a native code module and executes the native code module in a secure runtime environment. Next, the system enables communication between the native code module and the web browser by providing an interface bridge between the native code module and the web browser.
    Type: Application
    Filed: November 10, 2008
    Publication date: May 13, 2010
    Applicant: GOOGLE INC.
    Inventors: Antoine Labour, Matthew Papakipos, Shiki Okasaka, Jeffrey R. Timanus
  • Publication number: 20100118038
    Abstract: Some embodiments provide a system that executes a web application. During operation, the system loads the web application in a web browser and loads a native code module associated with the web application into a secure runtime environment. Next, the system writes a set of rendering commands to a command buffer using the native code module and concurrently reads the rendering commands from the command buffer. Finally, the system renders an image for use by the web application by executing the rendering commands using a graphics-processing unit (GPU).
    Type: Application
    Filed: November 7, 2008
    Publication date: May 13, 2010
    Applicant: GOOGLE INC.
    Inventors: Antoine Labour, Matthew Papakipos
  • Publication number: 20100017461
    Abstract: Some embodiments provide a system that executes a web application. During operation, the system loads the web application in a web browser and loads a native code module associated with the web application into a secure runtime environment. Next, the system provides input data associated with the web application to the native code module and processes the input data using the native code module to obtain output data. Finally, the system provides the output data to the web application for use by the web application.
    Type: Application
    Filed: November 7, 2008
    Publication date: January 21, 2010
    Applicant: GOOGLE INC.
    Inventors: Evangelos Kokkevis, Matthew Papakipos, David C. Sehr
  • Publication number: 20100013842
    Abstract: Some embodiments of the present invention provide a system that renders graphics in a computing system that includes a plugin associated with a web browser in the computing system and a web application configured to execute in the web browser. During operation, the web application specifies a graphics model and provides the graphics model to the plugin. Next, the plugin generates a graphics-processing unit (GPU) command stream from the graphics model. Finally, the plugin sends the GPU command stream to a GPU of the computing system, which renders an image corresponding to the graphics model.
    Type: Application
    Filed: July 16, 2008
    Publication date: January 21, 2010
    Applicant: GOOGLE INC.
    Inventors: Robin Green, Matthew Papakipos, Evangelos Kokkevis, Gregg Tavares
  • Publication number: 20090282477
    Abstract: A system that validates a native code module. During operation, the system receives a native code module comprised of untrusted native program code. The system validates the native code module by: (1) determining that code in the native code module does not include any restricted instructions and/or does not access restricted features of a computing device; and (2) determining that the instructions in the native code module are aligned along byte boundaries such that a specified set of byte boundaries always contain a valid instruction and control flow instructions have valid targets. The system allows successfully-validated native code modules to execute, and rejects native code modules that fail validation. By validating the native code module, the system facilitates safely executing the native code module in the secure runtime environment on the computing device, thereby achieving native code performance for untrusted program binaries without significant risk of unwanted side effects.
    Type: Application
    Filed: May 8, 2008
    Publication date: November 12, 2009
    Applicant: Google Inc.
    Inventors: J. Bradley Chen, Matthew T. Harren, Matthew Papakipos, David C. Sehr, Bennet S. Yee
  • Publication number: 20090282474
    Abstract: A system that safely executes a native code module on a computing device. During operation, the system receives the native code module, which is comprised of untrusted native program code expressed using native instructions in the instruction set architecture associated with the computing device. The system then loads the native code module into a secure runtime environment, and proceeds to execute a set of instructions from the native code module in the secure runtime environment. The secure runtime environment enforces code integrity, control-flow integrity, and data integrity for the native code module. Furthermore, the secure runtime environment moderates which resources can be accessed by the native code module on the computing device and/or how these resources can be accessed. By executing the native code module in the secure runtime environment, the system facilitates achieving native code performance for untrusted program code without a significant risk of unwanted side effects.
    Type: Application
    Filed: May 8, 2008
    Publication date: November 12, 2009
    Applicant: GOOGLE INC.
    Inventors: J. Bradley Chen, Matthew T. Harren, Matthew Papakipos, David C. Sehr, Bennet S. Yee, Gregory Dardyk
  • Publication number: 20070165035
    Abstract: A deferred shading graphics pipeline processor and method are provided encompassing numerous substructures. Embodiments of the processor and method may include one or more of deferred shading, a tiled frame buffer, and multiple?stage hidden surface removal processing. In the deferred shading graphics pipeline, hidden surface removal is completed before pixel coloring is done. The pipeline processor comprises a command fetch and decode unit, a geometry unit, a mode extraction unit, a sort unit, a setup unit, a cull unit, a mode injection unit, a fragment unit, a texture unit, a Phong lighting unit, a pixel unit, and a backend unit.
    Type: Application
    Filed: December 19, 2006
    Publication date: July 19, 2007
    Applicant: Apple Computer, Inc.
    Inventors: Jerome Duluk, Richard Hessel, Vaughn Arnold, Jack Benkual, Joseph Bratt, George Cuan, Stephen Dodgen, Emerson Fang, Zhaoyu Gong, Thomas Ho, Hengwei Hsu, Sidong Li, Sam Ng, Matthew Papakipos, Jason Redgrave, Sushma Trivedi, Nathan Tuck, Shun Go, Lindy Fung, Tuan Nguyen, Joseph Grass, Bo Hung, Abraham Mammen, Abbas Rashid, Albert Tsay
  • Patent number: 7075539
    Abstract: A computing system has a graphics processor, a graphics memory, main memory, a bridge, and a central processing unit configured to process floating-point data of a first fixed size. An interconnect grid includes communication paths to link the graphics processor, the graphics memory, main memory, the bridge, and the central processing unit. A computing system component (e.g., the graphics processor or central processing unit) converts floating-point data to graphics floating-point data with a fixed size smaller than the fixed size of the floating-point data. The computing system passes the floating-point data and/or the graphics floating-point data over at least a portion of the interconnect grid. Alternately, the graphics processor may directly read and process previously compressed and stored graphics floating-point data.
    Type: Grant
    Filed: May 30, 2003
    Date of Patent: July 11, 2006
    Assignee: NVIDIA Corporation
    Inventors: Steven Gregory Foster, Jr., Thomas H. Kong, Shaun Ho, Matthew Papakipos