Patents by Inventor Bryan M. Cantrill

Bryan M. Cantrill 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: 7302542
    Abstract: A method of dynamically allocating a variable in a tracing framework, including allocating a dynamic memory in the tracing framework having a plurality of data chunks, placing at least one of the plurality of data chunks onto a free list, allocating the at least one of the plurality of data chunks on the free list to store the variable and removing the at least one of the plurality of data chunks from the free list, deallocating the at least one of the plurality of data chunks and placing the at least one of the plurality of data chunks on a dirty list, and cleaning the at least one of the plurality of data chunks on the dirty list using a cleaning procedure to place the one of the plurality of data chunks on the free list.
    Type: Grant
    Filed: November 14, 2003
    Date of Patent: November 27, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Bryan M. Cantrill
  • Patent number: 7281240
    Abstract: A method for tracing on a processor including executing an executing control block on the processor to obtain data, wherein an interrupt on the processor is disabled prior to executing the execution control block and the interrupt is enabling after execution of the execution control block is completed, storing the data in a first buffer, wherein the first buffer is set to active, and setting the first buffer to inactive and setting a second buffer to active, wherein the interrupt on the processor is disabled prior to switching the first buffer to inactive and the interrupt is enabling after setting the second buffer to active.
    Type: Grant
    Filed: November 14, 2003
    Date of Patent: October 9, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Bryan M. Cantrill
  • Patent number: 7194731
    Abstract: A method of a speculative tracing, including defining the speculative tracing using a plurality of probes, firing at least one of the plurality of probes defined by the speculative tracing, allocating at least one instance of a first speculative buffer arranged to transfer data to a first principal buffer, if one of the plurality of probes comprises a first speculation function, and determining a first state value associated with the first speculative buffer.
    Type: Grant
    Filed: November 14, 2003
    Date of Patent: March 20, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Bryan M. Cantrill
  • Patent number: 7146473
    Abstract: A method for storing a data set having an enabled probe identification component and an associated data component in a buffer, including storing the data set at a current offset if the buffer has sufficient space to store the data set between a current offset and a limit of the buffer and the buffer is not marked as wrapped, marking the buffer as wrapped, setting the current offset to zero and setting a wrapped offset to zero, if the buffer does not have sufficient space to store the data set between a current offset and a limit of the buffer, and incrementing the wrapped offset by a stored data set size until there is sufficient space between the current offset and the wrapped offset to store the data set if the buffer is marked as wrapped, wherein the stored data set size is determined using an enabled probe identification associated with the stored data set.
    Type: Grant
    Filed: November 14, 2003
    Date of Patent: December 5, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Bryan M. Cantrill
  • Patent number: 6823467
    Abstract: Methods and apparatus for enabling timeouts with arbitrary resolutions to be implemented are disclosed. According to one aspect of the present invention, a method for enabling a device driver to communicate with a processor in a computing system includes exchanging information between the device driver and a clock system, and exchanging information between the clock system and a cyclic system. Information is also exchanged between the cyclic system and the processor. Although the clock system indirectly exchanges information with the processor, the clock system does not directly exchange information with the processor. In one embodiment, the clock system includes a callout system and a system clock, and exchanging information between the device driver and the clock system includes exchanging information between the system clock and the callout system, and exchanging information between the callout system and the device driver.
    Type: Grant
    Filed: February 25, 2000
    Date of Patent: November 23, 2004
    Assignee: Sun Microsystems, Inc.
    Inventor: Bryan M. Cantrill
  • Patent number: 6523141
    Abstract: Methods and apparatus for detecting and reporting memory leaks associated with an operating system are disclosed. In accordance with one aspect of the present invention, a method for identifying a section of dynamically allocated memory which may not be explicitly freed includes processing information associated with a failure of an operating system and identifying a call-site that is associated with the section of the dynamically allocated memory using the information. Once the call-site is identified, a report may be generated to identify the call-site as being associated with the section of dynamically allocated memory. In one embodiment, obtaining information associated with a failure of the operating system includes obtaining an image of the operating system which is created when a kernel associated with the operating system crashes.
    Type: Grant
    Filed: February 25, 2000
    Date of Patent: February 18, 2003
    Assignee: Sun Microsystems, Inc.
    Inventor: Bryan M. Cantrill