Patents by Inventor Joshua de Cesare

Joshua de Cesare 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).

  • Publication number: 20110258640
    Abstract: Techniques for intercommunication amongst device drivers are described herein. In one embodiment, an application programming interface (API) is provided by a kernel of an operating system (OS) running within a data processing system. The API is accessible by device drivers associated with multiple devices installed in the system. In response to a request from a first instance of a driver the API, information indicating whether another instance of the same driver is currently started is returned via the API. Other methods and apparatuses are also described.
    Type: Application
    Filed: June 30, 2011
    Publication date: October 20, 2011
    Inventors: Joshua de Cesare, Simon Douglas, Alexei Elias Kosut
  • Publication number: 20110219252
    Abstract: Methods and systems for managing power consumption in data processing systems are described. In one embodiment, a data processing system includes a general purpose processing unit, a graphics processing unit (GPU), at least one peripheral interface controller, at least one bus coupled to the general purpose processing unit, and a power controller coupled to at least the general purpose processing unit and the GPU. The power controller is configured to turn power off for the general purpose processing unit in response to a first state of an instruction queue of the general purpose processing unit and is configured to turn power off for the GPU in response to a second state of an instruction queue of the GPU. The first state and the second state represent an instruction queue having either no instructions or instructions for only future events or actions.
    Type: Application
    Filed: March 3, 2011
    Publication date: September 8, 2011
    Inventors: Joshua de Cesare, Bernard Semeria, Michael Smith
  • Patent number: 7996578
    Abstract: Data processing systems which operate in different modes, including a mode which supports providing an output of images through a port on the systems. In one embodiment, a data processing system includes a processing system, a cellular telephone transceiver, and a port which is configured to provide, as an output from the handheld data processing system, data representing movie video images. Methods and machine readable media are also described.
    Type: Grant
    Filed: May 3, 2010
    Date of Patent: August 9, 2011
    Assignee: Apple Inc.
    Inventors: Joshua de Cesare, Keith Cox, Kenneth C. Dyke
  • Patent number: 7979868
    Abstract: Techniques for intercommunication amongst device drivers are described herein. In one embodiment, an application programming interface (API) is provided by a kernel of an operating system (OS) running within a data processing system. The API is accessible by device drivers associated with multiple devices installed in the system. In response to a request from a first instance of a driver via the API, information indicating whether another instance of the same driver is currently started is returned via the API. Other methods and apparatuses are also described.
    Type: Grant
    Filed: January 7, 2007
    Date of Patent: July 12, 2011
    Assignee: Apple Inc.
    Inventors: Joshua de Cesare, Simon Douglas, Alexei Elias Kosut
  • Patent number: 7917784
    Abstract: Methods and systems for managing power consumption in data processing systems are described. In one embodiment, a data processing system includes a general purpose processing unit, a graphics processing unit (GPU), at least one peripheral interface controller, at least one bus coupled to the general purpose processing unit, and a power controller coupled to at least the general purpose processing unit and the GPU. The power controller is configured to turn power off for the general purpose processing unit in response to a first state of an instruction queue of the general purpose processing unit and is configured to turn power off for the GPU in response to a second state of an instruction queue of the GPU. The first state and the second state represent an instruction queue having either no instructions or instructions for only future events or actions.
    Type: Grant
    Filed: January 7, 2007
    Date of Patent: March 29, 2011
    Assignee: Apple Inc.
    Inventors: Joshua de Cesare, Bernard Semeria, Michael Smith
  • Publication number: 20100211700
    Abstract: Data processing systems which operate in different modes, including a mode which supports providing an output of images through a port on the systems. In one embodiment, a data processing system includes a processing system, a cellular telephone transceiver, and a port which is configured to provide, as an output from the handheld data processing system, data representing movie video images. Methods and machine readable media are also described.
    Type: Application
    Filed: May 3, 2010
    Publication date: August 19, 2010
    Inventors: Joshua de Cesare, Keith Cox, Kenneth C. Dyke
  • Patent number: 7711864
    Abstract: Data processing systems which operate in different modes, including a mode which supports providing an output of images through a port on the systems. In one embodiment, a data processing system includes a processing system, a cellular telephone transceiver, and a port which is configured to provide, as an output from the handheld data processing system, data representing movie video images. Methods and machine readable media are also described.
    Type: Grant
    Filed: August 31, 2007
    Date of Patent: May 4, 2010
    Assignee: Apple Inc.
    Inventors: Joshua de Cesare, Keith Cox, Kenneth C. Dyke
  • Publication number: 20090295461
    Abstract: A process and apparatus for configuring one or more integrated circuits within a device in a manufacturing process is described. In an exemplary process, a device is manufactured by assembling a chip onto a board such as a printed circuit substrate and the chip is fused from power routed across the board to the chip. The power source for the fusing can be generated from the internal power supply on the board or received on a test point on the board itself or a connection interface (e.g. a USB interface) coupled to the board. In an exemplary apparatus, a device comprises a chip with a plurality of fuses that are used to configure the device and a board coupled to the chip, with the board capable of routing power from the board to the chip and the power is used to blow one or more of the plurality of fuses.
    Type: Application
    Filed: August 6, 2008
    Publication date: December 3, 2009
    Inventors: Joshua de Cesare, Michael Smith, Jonathan Jay Andrews, Alan Gilchrist, Hope Giles
  • Publication number: 20090257595
    Abstract: A method and apparatus for securely booting software components in an electronic device to establish an operating environment are described herein. According to an aspect of the invention, software components are to be executed in sequence in order to establish an operating environment of a device. For each software component, a security code is executed to authenticate and verify an executable code image associated with each software component using one or more keys embedded within a secure ROM (read-only memory) of the device and one or more hardware configuration settings of the device. The security code for each software component includes a common functionality to authenticate and verify the executable code image associated with each software component. In response to successfully authenticating and verifying the executable code image, the executable code image is then executed in a main memory of the device to launch the associated software component.
    Type: Application
    Filed: April 15, 2008
    Publication date: October 15, 2009
    Inventors: Joshua de Cesare, Dallas Blake De Atley, Jonathan Jay Andrews, Michael John Smith
  • Publication number: 20090259855
    Abstract: A method and apparatus for personalizing a software component to be executed in particular environment are described herein. According to an aspect of the invention, in response to an executable code image representing a software component to be installed in an electronic device, the executable code image is encrypted using an encryption key. The encryption key is then wrapped with a UID that uniquely identifies the electronic device, where the UID is embedded within a secure ROM of the electronic device. The wrapped encryption key and the encrypted executable code image are then encapsulated into a data object to be stored in a storage of the electronic device, such that when the electronic device is subsequently initialized for operation, the executable code image can only be recovered using the UID of the electronic device to retrieve a decryption key in order to decrypt the executable code image.
    Type: Application
    Filed: April 15, 2008
    Publication date: October 15, 2009
    Applicant: Apple Inc.
    Inventors: Joshua de Cesare, Dallas Blake De Atley, Jonathan Jay Andrews, Michael Smith
  • Publication number: 20090063715
    Abstract: Data processing systems which operate in different modes, including a mode which supports providing an output of images through a port on the systems. In one embodiment, a data processing system includes a processing system, a cellular telephone transceiver, and a port which is configured to provide, as an output from the handheld data processing system, data representing movie video images. Methods and machine readable media are also described.
    Type: Application
    Filed: August 31, 2007
    Publication date: March 5, 2009
    Inventors: Joshua de Cesare, Keith Cox, Kenneth C. Dyke
  • Publication number: 20090063108
    Abstract: A method and apparatus for executing a first executable code image having a first version number into a memory of a device in an attempt to establish an operating environment of the device are described. The first executable code image retrieves a second version number from the second executable code image after successfully authenticating the second executable code image. If the first version number and the second version number do not satisfy a predetermined relationship, the second executable code image is prevented from being loaded by the first executable code image.
    Type: Application
    Filed: August 31, 2007
    Publication date: March 5, 2009
    Inventors: Dallas Blake De Atley, Joshua de Cesare, Michael Smith, Jerry Hauck, Jeffrey Bush
  • Publication number: 20080307245
    Abstract: Methods and apparatuses to dynamically manage a performance state of a data processing system are described. The data processing system includes a plurality of components; one or more buses coupled to the plurality of components, and a dynamic performance state manager unit coupled to the components. The dynamic performance state manager unit is configured to receive information about a first plurality of current states of components of the system. The dynamic performance state manager unit is configured to determine a second plurality of required system performance states for the components; and to determine a current system performance state based on the first plurality and the second plurality.
    Type: Application
    Filed: June 8, 2007
    Publication date: December 11, 2008
    Inventors: Joshua de Cesare, Keith Alan Cox, Nathaniel Begeman, Jerry Hauck
  • Publication number: 20080168275
    Abstract: A method and an apparatus for establishing an operating environment by certifying a code image received from a host over a communication link are described. The code image may be digitally signed through a central authority server. Certification of the code image may be determined by a fingerprint embedded within a secure storage area such as a ROM (read only memory) of the portable device based on a public key certification process. A certified code image may be assigned a hash signature to be stored in a storage of the portable device. An operating environment of the portable device may be established after executing the certified code.
    Type: Application
    Filed: January 7, 2007
    Publication date: July 10, 2008
    Inventors: Dallas Blake De Atley, Joshua de Cesare, Michael Smith, Matthew Reda, Shantonu Sen, John Andrew Wright
  • Publication number: 20080165971
    Abstract: A method and an apparatus for configuring a key stored within a secure storage area (e.g., ROM) of a device including one of enabling and disabling the key according to a predetermined condition to execute a code image are described. The key may uniquely identify the device. The code image may be loaded from a provider satisfying a predetermined condition to set up at least one component of an operating environment of the device. Verification of the code image may be optional according to the configuration of the key. Secure execution of an unverified code image may be based on a configuration that disables the key.
    Type: Application
    Filed: January 7, 2007
    Publication date: July 10, 2008
    Inventors: Joshua de Cesare, Michael Smith, Dallas Blake De Atley, John Andrew Wright
  • Publication number: 20080168201
    Abstract: Data processing systems with interrupts and methods for operating such data processing systems and machine readable media for causing such methods and containing executable program instructions. In one embodiment, an exemplary data processing system includes a processing system, an interrupt controller coupled to the processing system and a timer circuit which is coupled to the interrupt controller. The interrupt controller is configured to provide a first interrupt signal and a second interrupt signal to the processing system. The processing system is configured to maintain a data structure (such as, e.g., a list) of time-related events for a plurality of processes, and the processing system is configured to cause the entry of a value, representing a period of time, into the timer circuit. The timer circuit is configured to cause an assertion of the first interrupt signal in response to an expiration of the time period.
    Type: Application
    Filed: January 7, 2007
    Publication date: July 10, 2008
    Inventors: Joshua de Cesare, Bernard Semeria, Michael Smith
  • Publication number: 20080165952
    Abstract: A method and an apparatus for executing codes embedded inside a device to verify a code image loaded in a memory of the device are described. A code image may be executed after being verified as a trusted code image. The embedded codes may be stored in a secure ROM (read only memory) chip of the device. In one embodiment, the verification of the code image is based on a key stored within the secure ROM chip. The key may be unique to each device. Access to the key may be controlled by the associated secure ROM chip. The device may complete establishing an operating environment subsequent to executing the verified code image.
    Type: Application
    Filed: January 7, 2007
    Publication date: July 10, 2008
    Inventors: Michael Smith, Joshua de Cesare, Dallas Blake De Atley, John Andrew Wright
  • Publication number: 20080168475
    Abstract: Techniques for intercommunication amongst device drivers are described herein. In one embodiment, an application programming interface (API) is provided by a kernel of an operating system (OS) running within a data processing system. The API is accessible by device drivers associated with multiple devices installed in the system. In response to a request from a first instance of a driver via the API, information indicating whether another instance of the same driver is currently started is returned via the API. Other methods and apparatuses are also described.
    Type: Application
    Filed: January 7, 2007
    Publication date: July 10, 2008
    Inventors: Joshua de Cesare, Simon Douglas, Alexei Elias Kosut
  • Publication number: 20080168285
    Abstract: Methods and systems for managing power consumption in data processing systems are described. In one embodiment, a data processing system includes a general purpose processing unit, a graphics processing unit (GPU), at least one peripheral interface controller, at least one bus coupled to the general purpose processing unit, and a power controller coupled to at least the general purpose processing unit and the GPU. The power controller is configured to turn power off for the general purpose processing unit in response to a first state of an instruction queue of the general purpose processing unit and is configured to turn power off for the GPU in response to a second state of an instruction queue of the GPU. The first state and the second state represent an instruction queue having either no instructions or instructions for only future events or actions.
    Type: Application
    Filed: January 7, 2007
    Publication date: July 10, 2008
    Inventors: Joshua de Cesare, Bernard Semeria, Michael Smith