Patents by Inventor Darryl E. Havens

Darryl E. Havens 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: 20130305239
    Abstract: Multiple software component identifiers are maintained in a catalog of an operating system running on a device. Each of these software component identifiers corresponds to one of multiple software components installed on the device. The catalog is accessed in response to a request regarding one of the multiple software components, and the request is responded to based at least in part on information included in the catalog. Additionally, two or more versions of a software component that are installed on the computing device can be identified. Which one of the two or more versions of the software component is an active version of the software component to be run is determined. In response to requests for information regarding the software component, information regarding the active version of the software component is returned.
    Type: Application
    Filed: July 22, 2013
    Publication date: November 14, 2013
    Inventors: Eric P. Traut, Darryl E. Havens, Jose Manuel Bernabeu-Auban, Mark R. Brown, Richard B. Ward, Suyash Sinha, Tahsin Erdogan, Adam D. Stritzel, Adriaan W. Canter
  • Patent number: 8495621
    Abstract: Multiple software component identifiers are maintained in a catalog of an operating system running on a device. Each of these software component identifiers corresponds to one of multiple software components installed on the device. The catalog is accessed in response to a request regarding one of the multiple software components, and the request is responded to based at least in part on information included in the catalog. Additionally, two or more versions of a software component that are installed on the computing device can be identified. Which one of the two or more versions of the software component is an active version of the software component to be run is determined. In response to requests for information regarding the software component, information regarding the active version of the software component is returned.
    Type: Grant
    Filed: June 15, 2009
    Date of Patent: July 23, 2013
    Assignee: Microsoft Corporation
    Inventors: Eric P. Traut, Darryl E. Havens, Jose Manuel Bernabeu-Auban, Mark R. Brown, Richard B. Ward, Suyash Sinha, Tahsin Erdogan, Adam D. Stritzel, Adriaan W. Canter
  • Publication number: 20100318968
    Abstract: Multiple software component identifiers are maintained in a catalog of an operating system running on a device. Each of these software component identifiers corresponds to one of multiple software components installed on the device. The catalog is accessed in response to a request regarding one of the multiple software components, and the request is responded to based at least in part on information included in the catalog. Additionally, two or more versions of a software component that are installed on the computing device can be identified. Which one of the two or more versions of the software component is an active version of the software component to be run is determined. In response to requests for information regarding the software component, information regarding the active version of the software component is returned.
    Type: Application
    Filed: June 15, 2009
    Publication date: December 16, 2010
    Applicant: Microsoft Corporation
    Inventors: Eric P. Traut, Darryl E. Havens, Jose Manuel Bernabeu-Auban, Mark R. Brown, Richard B. Ward, Suyash Sinha, Tahsin Erdogan, Adam D. Stritzel, Adriaan W. Canter
  • Patent number: 7802256
    Abstract: A method and apparatus for enabling a general purpose operating system to maximize the probability of time-sensitive threads, e.g., multimedia threads, gaining access to CPU resources quickly enough to meet the demands of time-sensitive tasks while allowing time-insensitive threads to meet the demands of time-insensitive tasks, is disclosed. The priorities of time-sensitive threads in an operating system are adjusted so that the time-sensitive threads have a high probability of gaining access to CPU resources quickly enough to meet the demands of time-sensitive tasks while allowing time-insensitive threads to meet the demands of time-insensitive tasks. A system responsiveness cell (SRC) value is used to determine how quickly the operating system needs to respond to time-sensitive threads and time-insensitive threads. Priorities of threads are dynamically changed according to the relative CPU resource access requirements of system profile tasks.
    Type: Grant
    Filed: June 27, 2005
    Date of Patent: September 21, 2010
    Assignee: Microsoft Corporation
    Inventor: Darryl E Havens
  • Patent number: 7665143
    Abstract: A secure process may be created which does not allow code to be injected into it, does not allow modification of its memory or inspection of its memory. The resources protected in a secure process include all the internal state and threads running in the secure process. Once a secure process is created, the secure process is protected from access by non-secure processes. Process creation occurs atomically in kernel mode. Creating the infrastructure of a process in kernel mode enables security features to be applied that are difficult or impossible to apply in user mode. By moving setup actions previously occurring in user mode such as creating the initial thread, allocating the stack, initialization of the parameter block, environment block and context record into kernel mode, the need of the caller for full access fights to the created process is removed.
    Type: Grant
    Filed: May 16, 2005
    Date of Patent: February 16, 2010
    Assignee: Microsoft Corporation
    Inventors: Darryl E. Havens, Arun U. Kishan, Richard B. Ward
  • Publication number: 20090265180
    Abstract: A method of representing a first end-user license agreement (EULA) offered to a user and automatically responding to a subsequent EULA offered to the user is disclosed. The representation may be in a logical language having parameters corresponding to legal terms of the EULA, logical operators, and the capability to form and nest logical expressions. A logical library may store parameters corresponding to legal terms. A logical expression may be created that corresponds to a user's term preferences, and may be evaluated using the terms of a subsequent EULA to automatically determine the user's acceptance or rejection of the subsequent EULA. A user's application preferences of the logical expressions and terms may be received and used by the method. EULA responses may be signified in a log and/or by sending a record or message to the offering party. A similar method is disclosed for other types of electronic agreements.
    Type: Application
    Filed: April 21, 2008
    Publication date: October 22, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Carl M. Ellison, Valerie R. See, John M. Parchem, Charles Thomas Lenzmeier, Darryl E. Havens, Richard B. Ward
  • Patent number: 6223207
    Abstract: A technique for performing multiple simultaneous asynchronous input/output operations in a computer operating system. An input/output completion port object is created and associated with a file descriptor. When I/O services are requested on the file descriptor, completion is indicated by a message queued to the I/O completion port. A process requesting I/O services is not notified of completion of the I/O services, but instead checks the I/O completion port's queue to determine the status of its I/O requests. The I/O completion port manages multiple threads and their concurrency.
    Type: Grant
    Filed: January 13, 1998
    Date of Patent: April 24, 2001
    Assignee: Microsoft Corporation
    Inventors: Mark H. Lucovsky, John D. Vert, David N. Cutler, Darryl E. Havens, Steven R. Wood
  • Patent number: 5758184
    Abstract: A technique for performing multiple simultaneous asynchronous input/output operations in a computer operating system. An input/output completion port object is created and associated with a file descriptor. When I/O services are requested on the file descriptor, completion is indicated by a message queued to the I/O completion port. A process requesting I/O services is not notified of completion of the I/O services, but instead checks the I/O completion port's queue to determine the status of its I/O requests. The I/O completion port manages multiple threads and their concurrency.
    Type: Grant
    Filed: April 24, 1995
    Date of Patent: May 26, 1998
    Assignee: Microsoft Corporation
    Inventors: Mark H. Lucovsky, John D. Vert, David N. Cutler, Darryl E. Havens, Steven R. Wood