Patents Assigned to Sun Microsystems
  • Patent number: 7100161
    Abstract: A resource access control mechanism for a multi-threaded computing environment associates a sequence of one or more mutexes with a resource. When a requesting thread attempts to access the resource, a mutex is locked and allocated to the requesting thread, and if a previous mutex in the sequence is present, an attempt to lock the previous mutex is made. If the previous mutex is already locked, the requesting thread is suspended until the previous mutex is unlocked.
    Type: Grant
    Filed: August 13, 2001
    Date of Patent: August 29, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Jean-Francois Latour
  • Patent number: 7100079
    Abstract: One embodiment of the present invention provides a system that facilitates using a multi-variate pattern-recognition technique to trigger software rejuvenation for a computer system. The system operates by periodically measuring values of a target set of performance parameters associated with the computer system while the computer system is operating. The system then predicts values for the target set of performance parameters based upon previously determined correlations between performance parameters in the target set of performance parameters. If the predicted values deviate beyond a predetermined threshold from the measured values, thereby indicating that software aging is likely to have occurred, the system schedules a software rejuvenation operation for the computer system.
    Type: Grant
    Filed: October 22, 2002
    Date of Patent: August 29, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Kenny C. Gross, Kishor S. Trivedi
  • Patent number: 7099984
    Abstract: A computing system comprises two or more processing sets, for example for fault tolerant operation. The multiple processing sets have a connection to at least one device, typically many devices. The ownership of each device is allocated to one of the two or more processing sets. When an interrupt is generated within a device, this is transmitted from the device to the processing set to which ownership of the device has been allocated, but not to the remaining processing sets. In addition, a command for a device may be generated by a processing set. However, receipt of this command by the device is disabled if the processing set that generated the command has not been allocated ownership of the device.
    Type: Grant
    Filed: March 14, 2003
    Date of Patent: August 29, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: John E. Watkins, Paul J. Garnett, Stephen Rowlinson
  • Patent number: 7099345
    Abstract: Memory requests and responses thereto include a tag that has a shift value indicating the misalignment between the first byte of required packet data and the first byte of a line of data in memory. A packet buffer controller receiving data with an associated tag uses the shift value to shift the received line of data accordingly. The first line of data for the packet data payload is shifted accordingly and written into the packet buffer. Subsequent lines of data require masking the previous line of data except for the last N bytes where N equals the shift value. The shifted line of data is written over the previous line so that the lower order bytes of the shifted received line of data are written. Then the shifted line of data is written into the next line of the packet buffer. The packet buffer may be divided into sections containing alternating lines of data to increase storage speed.
    Type: Grant
    Filed: November 27, 2001
    Date of Patent: August 29, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Robert A. Dickson, Farroukh Touserkani, Thomas P. Webber, Hugh Kurth
  • Patent number: 7100083
    Abstract: A check for a knowledge automation engine to use in detecting product issues on products. A knowledge automation engine may evaluate a check against a fact to detect a product issue on a product and provide a user of the product remediation information. A check may contain a product issue description, a rule to evaluate against a fact in order to detect the product issue, and remediation information to help a user address the product issue if the product issue is detected on the product. Product issues may include product installation validation and known product bugs. Facts used by the knowledge automation engine may include product configuration facts.
    Type: Grant
    Filed: December 13, 2002
    Date of Patent: August 29, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Mike E. Little, Rex G. Martin, Matthew J. Helgren, Paris E. Bingham, Jr., Alan J. Treece
  • Patent number: 7100115
    Abstract: A method of managing context-sensitive help data for a computer system includes displaying a plurality of program components to a user for interaction, and retrieving from a first memory area having a first access time first help data corresponding to a first of the components, where the first component is not interacted with by the user. Then store the first help data in a second memory area having a second access time less than the first access time. Subsequent to storing the first help data, determine whether the user has interacted with the first component, and responsive to the determination, retrieve the first help data from the second memory area and display the first help data to the user.
    Type: Grant
    Filed: October 31, 2000
    Date of Patent: August 29, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Robert A. Yennaco
  • Patent number: 7100082
    Abstract: A system for creating and editing checks for a knowledge automation engine to use in detecting product issues on products. A knowledge automation engine may evaluate a check against a fact to detect a product issue on a product and provide a user of the product remediation information. A check may contain a product issue description, a rule to evaluate against a fact in order to detect the product issue, and remediation information to help a user address the product issue if the product issue is detected on the product. Product issues may include product installation validation and known product bugs. Facts used by the knowledge automation engine may include product configuration facts. Checks may be created and edited using a standard interface.
    Type: Grant
    Filed: December 13, 2002
    Date of Patent: August 29, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Mike E. Little, Rex G. Martin, Matthew J. Helgren, Paris E. Bingham, Jr., Alan J. Treece
  • Patent number: 7100041
    Abstract: A computer system 10 with one or more processors 12 can be configured to operate in any one of a number of thermal environments. A setting system 14 sets operating parameters of the computer system such as processor operating voltage and frequency. A selecting system 16 selects values of operating parameters for use in setting by responding to an input of configuring data 20 to select a set of parameter values from a parameter value storage memory 18. The configuring data 20 may be input by the insertion of a smart card 58. Such configuring is useful in adapting computer systems during manufacture for compliance with desired specifications without hardware modification.
    Type: Grant
    Filed: April 7, 2003
    Date of Patent: August 29, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Paul J. Garnett
  • Patent number: 7096251
    Abstract: A distributed system and method generate “layered routes” that reflect a layered representation of a network, which representation provides deadlock-free routes. The layered representation consists of an ordered set of layers, where each layer is a deadlock-free sub-topology of the network. In determining routes, the links used in each route are constrained to be taken from layers of non-decreasing order as the route extends from source to destination. A device that determines a better or equal cost path to a destination node with respect to its current path to that node sends a route information message to its neighbor devices. The receiver of a route information message may then accept the message and begin using the new path described by the message, or reject the message without using the new path.
    Type: Grant
    Filed: July 31, 2002
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Dah Ming Chiu, Miriam C. Kadansky, Radia J. Perlman, Murat Yuksel
  • Patent number: 7096238
    Abstract: A garbage collector collects a generation of a dynamically allocated heap in a computer's memory incrementally. A collection set within the generation is associated with each collection increment. The collector reclaims for reuse the memory space occupied by any collection-set object not reachable by a reference chain that extends from outside the collection set. The collector monitors the total amount of allocation that occurs within the generation between collection increments, and it bases the collection-set size on those allocation amounts.
    Type: Grant
    Filed: December 6, 2002
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Alexander T. Garthwaite
  • Patent number: 7096178
    Abstract: A method for modeling a system configuration, including isotonizing an unconstrained additive model of a cache architecture to obtain an isotonic additive model for the cache architecture, wherein the isotonic additive model is of the same functional form as the unconstrained additive model, smoothing the isotonic additive model using a flat spot technique to obtain a characterization of the cache architecture, and modeling a system configuration using the characterization of the cache architecture.
    Type: Grant
    Filed: July 8, 2002
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Ilya Gluhovsky
  • Patent number: 7096390
    Abstract: A sampling mechanism is disclosed in which software can specify a property or properties which characterize samples of interest. For example, if the software is interested in cache behavior, the software can specify that information for memory operations, or only information for memory instructions which miss in one or more caches, be reported. The sampling mechanism may specify many such properties and events (properties and events may vary from processor to processor, and may also depend on which properties or events are considered useful for performance analysis).
    Type: Grant
    Filed: April 1, 2002
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Adam Talcott, Mario Wolczko
  • Patent number: 7096421
    Abstract: A system and method of comparing a first XML document and a second XML document includes hashing the first and the second XML documents. The first hashed XML document is compared to the second hashed XML document and a difference report is output.
    Type: Grant
    Filed: March 18, 2002
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Edmund G. Lou
  • Patent number: 7096447
    Abstract: An exemplary CAD design flow modifies an existing large scale chip layout to reinforce the redundant via design rules to improve the yield and reliability. The flow operates on each metal-via pair from bottom up to locate and correct isolated via rule violations by adding metal features and vias in a respective patch cell associated with each cluster cell. A large complex design is thus divided into cells so that multiple processes can work concurrently as if every process were working on the top level of the design layout.
    Type: Grant
    Filed: October 15, 2003
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Mu-Jing Li, Suryanarayana R. Maturi, Pankaj Dixit
  • Patent number: 7096393
    Abstract: Disclosed are novel methods and apparatus for efficiently providing instruction-based BIST of memory interconnects. In an embodiment of the present invention, a method of testing a memory interconnect between an external memory module and a chip is disclosed. The method includes: providing an on-chip memory controller coupled to the external memory module, the on-chip memory controller sending and receiving data to and from the external memory module; providing an on-chip built-in self-test (BIST) module coupled to the on-chip memory controller, the BIST module including an instruction register to store a plurality of instructions; testing the external memory module; and once the external memory module has successfully passed the testing, utilizing the external memory module in testing the memory interconnect.
    Type: Grant
    Filed: December 20, 2002
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Olivier Caty, Ismet Bayraktaroglu, Amitava Majumdar
  • Patent number: 7096329
    Abstract: In a garbage collector that more efficiently places newly promoted objects into a generation managed by the train algorithm, a promotion train is established near the oldest train and the objects are placed therein. If some objects are referenced from existing trains in the generation those objects are placed into those trains, and if any such objects are referenced from several existing trains, the objects are placed at the end of the youngest referencing train. The promotion train may be a new train that is placed, or a existing train that is selected, between the oldest train and the youngest train at a position based on the amount of memory compared to the size of a collection set. In the case of multiple collector threads, multiple cars in a promotion train or multiple promotion trains may be formed.
    Type: Grant
    Filed: February 27, 2003
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Alexander T. Garthwaite
  • Patent number: 7096467
    Abstract: Techniques for initialization of Java classes are disclosed. As such, the techniques can be implemented in a Java virtual machine to initialize Java classes represented in Java class files. A Java class loader suitable for loading class files into the Java virtual machine is disclosed. As will be appreciated, the Java class loader facilitates loading and execution of the Java initialization methods that need to be executed in order to initialize Java classes. Moreover, the Java class loader operates to remove the Java initialization methods after they have been executed and no longer serve a useful purpose. This means that the virtual machine can utilize its memory space more efficiently. As a result, the performance of virtual machines, especially those operating with limited resources is improved.
    Type: Grant
    Filed: June 28, 2001
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: David Wallman, Stepan Sokolov
  • Patent number: 7096474
    Abstract: A mobile multimedia framework API is provided that is capable of operation in mobile hardware devices. The mobile multimedia framework API includes a playback interface, controls, an event listener, an error list, exceptions, events, control types, and protocol handlers. Advantageously, a memory size of the mobile multimedia framework API is less than 100 kilobytes.
    Type: Grant
    Filed: August 15, 2001
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Ivan Wong, Michael Bundschuh, Shuangying Huang, Babu Srinivasan, Amith Yamasani
  • Patent number: 7096455
    Abstract: A method and system are provided for defining a Web application including a graphical user interface and a functional component. A custom tag library is accessed, wherein the custom tag library includes one or more tags facilitating the use of XPath in JavaServer Pages (JSPs). A JSP representing the graphical user interface is defined. One or more tags is included in the JSP definition to enable interaction between the user interface and the functional component.
    Type: Grant
    Filed: June 19, 2001
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Stanley P. Santiago
  • Patent number: 7096473
    Abstract: Each driver has a global driver section comprising drive program code and global driver data, both defining driver operations associated with a corresponding class of devices. Each device has an associated driver instantiation comprising local driver data, having an internal pointer to the global driver section of the instantiated driver, and possibly at least one external pointer to another driver instantiation. A device registry forms a list of device registry entries, each corresponding to a respective one of the drive instantiations. Driveer client code may perform operations on a given device by fetching in the device registry a pointer to the driver instantiation associated with the given device, and then use operations provided by the associated driver instantiation, directly or using further operations reached in other driver instantiations by using iteratively the external printer.
    Type: Grant
    Filed: June 13, 2002
    Date of Patent: August 22, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Frederic Ruget, Vladimir Grouzdev, Eric Lescouet
  • Patent number: 4924706
    Abstract: A method and apparatus for resonant frequency testing of free standing turbine blades made of a material, such as titanium, that is not responsive to a magnetic field is disclosed. A lightweight shim 12 made of a magnetically responsive material such as steel, weighing on the order of 0.5 grams, is attached to the convex side of the blade 10. The shim 12 is excited by an oscillating magnetic field and moves the blade 10 accordingly. The maximum amplitude of blade 10 movement is recorded and used to determine the resonant frequency as the excitation frequency of the magnetic field is swept through a frequency window range. The low weight of the shim 12 does not materially change the resonant frequencies of the blade 10.
    Type: Grant
    Filed: April 7, 1989
    Date of Patent: May 15, 1990
    Assignee: Westinghouse Electric Corp.
    Inventor: Donald W. Moore