Patents Assigned to Sun Microsystems
  • Patent number: 7225437
    Abstract: A distributed make command is used when compiling a computer program in order to allow non-dependent processes in the compiling be performed in parallel, such as with different resources, in order to speed compile time. The distributed make command is typically executed by a user who also specifies a maximum number of resources to allocate to the compiling. The present invention dynamically adjusts this maximum number of resources to allocate if the resources become overloaded during the compiling, which has the effect of optimizing the efficiency of the compiling, either by reducing the number of resources utilized or by reducing the amount of time the compiling takes (or both).
    Type: Grant
    Filed: March 26, 2003
    Date of Patent: May 29, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Nikolay Molchanov, Raj Prakash
  • Patent number: 7225239
    Abstract: A system unit has at least a first network identity and a second network identity for communicating with a network, and an indication of which of the network identities was effective on the most recent complete initialization of the system unit. On a subsequent initialization of the system unit, for example after moving the system unit, the effective network identity is changed. The indication is reset to the effective network identity if initialization completes. A system unit can thus be taken out of service and then restarted with a different identity. This enables the system unit reliably to check information from the network without fear of conflict with its previous network identity. The system unit can be a service processor that is operable to allocate network identities to further units (e.g. on a shelf on which the service processor resides).
    Type: Grant
    Filed: June 14, 2002
    Date of Patent: May 29, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: James E King, Stephen C Evans
  • Patent number: 7225363
    Abstract: A method and apparatus for abandoning an interrupted task is provided. The method includes setting at least one of a plurality of logic elements associated with at least one of a plurality of first registers, wherein the plurality of first registers are adapted to access data stored in a plurality of second registers at substantially the same time when the plurality of logic elements are set. The method further includes resetting the plurality of logic elements substantially before the plurality of first registers access the data stored in the plurality of second registers.
    Type: Grant
    Filed: March 18, 2002
    Date of Patent: May 29, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Daniel P. Drogichen, Eric E. Graf, James A. Gilbert
  • Patent number: 7225298
    Abstract: A system may include several nodes coupled by in inter-node network. Each node includes several active devices coupled by an address network. The address network included in one of the nodes may be configured to convey address packets specifying a particular coherency unit in broadcast mode. The address network included in a different one of the nodes may be configured to convey address packets specifying that coherency unit in point-to-point mode.
    Type: Grant
    Filed: March 31, 2004
    Date of Patent: May 29, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Robert E. Cypher
  • Patent number: 7225383
    Abstract: An apparatus and method for resending a request in a computer system using a delay value is provided. In response to receiving a request, a target device in a computer system may detect that it is temporarily unable to process the request. The target device can send a response to the sending device to indicate that it is temporarily unavailable. The response can include a delay value that can provide a hint to the sending device as to when to resend the request. The target device may generate the delay value according to the type of condition that is causing it to be temporarily unavailable. The delay value may be generated according to a static heuristic or a dynamic algorithm based on previous temporarily unavailable conditions. The delay value may also be used by an error recovery mechanism where a sending device exceeds a retry limit for a particular request.
    Type: Grant
    Filed: January 19, 2000
    Date of Patent: May 29, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: David Wood, Robert C. Zak, Jr., Monica Wong-Chan, Christopher J. Jackson, Thomas P. Webber, Mark D. Hill
  • Patent number: 7225314
    Abstract: A method for storing a first data block, including evaluating the first data block comprising a first plurality of data, if the first plurality of data includes only zeros storing a first block pointer indicating that the first data block includes only zeros in a first indirect block, and if the first plurality of data does not include only zeros storing the first calculating a first data block checksum for the first data block, and storing the first block pointer comprising the first data block location and the first data block checksum in the first indirect block.
    Type: Grant
    Filed: May 26, 2004
    Date of Patent: May 29, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Jeffrey S. Bonwick, Matthew A. Ahrens
  • Patent number: 7224689
    Abstract: A method for routing a message from a source node to a destination node, where the source node and the destination node are connected by a plurality of nodes in a cycle-based system, is disclosed. The method includes generating a maze data structure including the plurality of nodes, where each of the plurality of nodes is associated with a dimension corresponding to time, and routing the message from the source node to the destination node using the dimension corresponding to time.
    Type: Grant
    Filed: July 17, 2002
    Date of Patent: May 29, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Jay R. Freeman
  • Publication number: 20070118821
    Abstract: A system includes a Scalable Vector Graphics (SVG) image for representing at least one portion of a consumer electronic device and a scaler for scaling the SVG image to obtain a scaled SVG image where a display size of the scaled SVG image equals a predefined physical size of the at least one portion of the consumer electronic device where the SVG image is defined by an SVG tag.
    Type: Application
    Filed: November 18, 2005
    Publication date: May 24, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: Alan Yee, Timothy Dunn
  • Publication number: 20070118654
    Abstract: A method for provisioning a plurality of heterogeneous operating systems on a plurality of target hosts that includes for each of the plurality of target hosts, obtaining a type of operating system (OS) to be provisioned on the target host, populating an OS profile model based on the type of operating system obtained, activating a deployment service based on the type of operating system, and provisioning the target host using a deployment service and the OS profile model.
    Type: Application
    Filed: November 23, 2005
    Publication date: May 24, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: Prashant Jamkhedkar, Ravi Chitloor, Amresh Prasad, Anand Bhalerao, Pierre Couture, Ushasree Kode
  • Publication number: 20070118622
    Abstract: A method for configuring a switch with a switch controller that includes obtaining a switch program, wherein the switch program comprises a plurality of instructions written using a switch control language, and executing the switch program on the switch controller, wherein executing the switch program includes for each instruction in the plurality of instructions determining a switch specified by the instruction, sending the instruction to the switch, and configuring the switch based on the instruction.
    Type: Application
    Filed: November 23, 2005
    Publication date: May 24, 2007
    Applicant: Sun Microsystems France S.A.
    Inventors: Pedro Vazquez, Alejandro Lopez, Pablo Martikian
  • Publication number: 20070118578
    Abstract: In general, embodiments of the invention relate to a disk, which includes a plurality of files and rectory associated with the plurality of files comprising a plurality of directory entries. Further, each of the plurality of directory entries is associated one of the plurality of files and each of the plurality of directory entries is associated with a collision differentiator (CD). In one aspect of the invention, a hash value calculated for each of the plurality of directory entries is used to determine the CD associated with each of the plurality of directory entries.
    Type: Application
    Filed: May 11, 2006
    Publication date: May 24, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: Matthew Ahrens, Mark Maybee
  • Publication number: 20070118576
    Abstract: A method for writing a data block to a storage pool. The method including receiving a write operation for a block, determining whether the block comprises metadata, and if the block comprises metadata: determining a first replication type for the block, and writing the block to the storage pool in accordance with the first replication type. If the block does not comprise metadata: determining a second replication type for the block and writing the block to the storage pool in accordance with the second replication type.
    Type: Application
    Filed: April 19, 2006
    Publication date: May 24, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: William Moore, Jeffrey Bonwick, Matthew Ahrens
  • Patent number: 7222145
    Abstract: One embodiment of the present invention provides a system for solving a system of equations in fixed-point form. During operation, the system receives a representation of the equations in fixed-point form and stores the representation a computer memory. Next, the system reduces the dimension of the system of equations, when possible, by eliminating variables in the system of equations to produce a reduced system of equations. The system then performs interval intersections based on the Fixed Point theorem to reduce the size of a box containing solutions to the reduced system of equations. In a variation on this embodiment, the system additionally applies interval techniques to find solutions to the system of equations, when such solutions exist.
    Type: Grant
    Filed: August 2, 2002
    Date of Patent: May 22, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: G. William Walster, Ramon E. Moore
  • Patent number: 7222138
    Abstract: A versioning Application Programming Interface (API) is provided for a software platform based on an object-oriented platform-independent programming language. The versioning API includes (a) main interfaces defining versioning functionality, the main interfaces allowing access to the versioning functionality, (b) a functional implementation of the main interfaces, the functional implementation including classes and libraries implementing the versioning functionality, the classes including a reference to a program module to perform a requested versioning function, and (c) a user interface for using the versioning functionality. The versioning API may further include native programming interfaces allowing code written in the object-oriented platform-independent language to operate with code written in a native language other than the object-oriented platform-independent language. The classes and some libraries are written in an object-oriented platform-independent programming language.
    Type: Grant
    Filed: February 20, 2002
    Date of Patent: May 22, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Anatoli Fomenko
  • Patent number: 7222187
    Abstract: Embodiments of a decentralized, distributed trust mechanism that may be used in various networking platforms including peer-to-peer platforms, to implement trust relationships between and among nodes on a network and to implement trust relationships between nodes and content and data (codat). Protocols and methods may be provided for determining, disseminating and updating trust. For participating nodes, trust may be biased towards data relevance. Trust may have multiple components or factors, which may include node confidence, codat confidence and risk components, and embodiments may provide for the inclusion of factors of trust based on groups of nodes' common interests and/or group content relevance. Embodiments may be used for a variety of applications in which trust may be based on the norm for social interaction between participating nodes.
    Type: Grant
    Filed: June 7, 2002
    Date of Patent: May 22, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: William J. Yeager, Rita Y. Chen
  • Patent number: 7222218
    Abstract: A scheduler may be configured to schedule a plurality of blocks of concurrent code for multi-threaded execution. The scheduler may be configured to initiate multi-threaded execution of the blocks of concurrent code in an order determined by block-level performance criteria for the blocks of concurrent code to reduce overall execution time of the concurrent code. In one embodiment, the scheduler may be configured to schedule code blocks having a longer run time ahead of blocks having a shorter run time. The scheduler may be configured to schedule a group of said blocks based on a goal of each of the blocks of the group completing execution at approximately the same time. The scheduler may also be configured to initiate multi-threaded execution of each block of the group at different times according to the block-level performance criteria to the goal.
    Type: Grant
    Filed: October 22, 2002
    Date of Patent: May 22, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Bala Dutt, Ajay Kumar, Hanumantha R. Susarla
  • Patent number: 7222337
    Abstract: A range check elimination loop structure is provided. The range check elimination loop structure includes a pre-loop structure based on an original loop structure, where the pre-loop structure is capable of testing indexing expressions for underflow. In addition, a main loop structure having indexing expressions based on the original loop structure is included. The indexing expressions included in the main loop preferably cannot produce an underflow or an overflow. Also included in the range check elimination loop structure is a post-loop structure based on the original loop structure that is capable of testing indexing expressions for overflow.
    Type: Grant
    Filed: May 31, 2001
    Date of Patent: May 22, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Clifford N. Click, Christopher A. Vick, Michael H. Paleczny
  • Patent number: 7219714
    Abstract: A field-replaceable active pumped liquid heat sink module includes a front portion and a back portion, each including a liquid pump, a radiator, an optional receiver, and a cold plate heat exchanger, all of which are connected together in a liquid pump loop through which a coolant such as water is circulated. The liquid pump, radiator, optional receiver and cold plate heat exchanger are in a liquid pump loop and are self-contained in a field-replaceable active pumped liquid heat sink module.
    Type: Grant
    Filed: August 4, 2005
    Date of Patent: May 22, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Ali Heydari
  • Patent number: 7222331
    Abstract: Linking a virtual method comprises receiving a program comprising multiple program units, enumerating classes of the program, determining whether a virtual method of the program has been overridden at least once, creating a virtual method jump table indexed by a type indicator if the virtual method has been overridden and rewriting at least one call instruction that calls the virtual method. The at least one call instruction is rewritten to include the type indicator of a called object. The table comprises at least one entry including an address of a virtual method.
    Type: Grant
    Filed: January 16, 2003
    Date of Patent: May 22, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Eduard de Jong
  • Patent number: 7222146
    Abstract: One embodiment of the present invention provides a system that facilitates performing exception-free arithmetic operations within a computer system. During execution of a computer program, the system receives an instruction to perform an arithmetic operation that involves manipulating floating-point values. If the arithmetic operation manipulates a floating-point value representing {+0}, the arithmetic operation is performed in a manner consistent with {+0} representing a set containing a single value “?0”, wherein “?0” is the limit of a sequence of values that approaches zero only from above. Similarly, if the arithmetic operation manipulates a floating-point value representing {?0}, the arithmetic operation is performed in a manner consistent with {?0} representing a set containing a single value “+0”, wherein “+0” is the limit of a sequence of values that approaches zero only from below.
    Type: Grant
    Filed: August 16, 2002
    Date of Patent: May 22, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: G. William Walster, Eldon R. Hansen