Patents Assigned to Sun Microsystems
  • Patent number: 7266582
    Abstract: A computer-based method for generating a Web service. The method includes identifying first and second service components for inclusion in the Web service, which includes locating available services using service detectors that use differing search techniques and displaying the located services to the user to allow the user to make a selection to identify the first and second service components. The method continues with generating a description or contract for the Web service defining service behavior including invoking rules. A transport structure is then created for accessing the new Web service such as a transmission envelope. The Web service is advertised as being available on the communications network including registering the Web service with a services registry linked to the communications network.
    Type: Grant
    Filed: August 9, 2002
    Date of Patent: September 4, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Stephen A. Stelting
  • Patent number: 7266651
    Abstract: A method for in-place interleaving and de-interleaving of a memory includes, in one embodiment, generating a new address corresponding to a new location in the memory by performing a bit-wise XOR operation on a number of bits of a first portion of a current address and a number of bits of a different portion of the current address. The current address corresponds to a current location in the memory. In addition, the method includes performing a data swap on data stored at the current location with data stored at the new location.
    Type: Grant
    Filed: September 7, 2004
    Date of Patent: September 4, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Robert E. Cypher
  • Patent number: 7266731
    Abstract: A method for managing remote software code update includes receiving a message from a remote device that includes a first code space having at least one segment and a second code space having one or more segment. The method also includes decoding the message to determine the execution mode of the remote device, indicating code in the first code space is corrupted if the execution mode indicates the remote device is executing in the second code space and indicating the code in the first code space is valid if the execution mode indicates the remote device is executing in the first code space.
    Type: Grant
    Filed: November 13, 2001
    Date of Patent: September 4, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Gunawan Ali-Santosa, Mehrdad Mojgani
  • Patent number: 7266237
    Abstract: A method for determining a number of colors in a digital image includes receiving a digital image and determining a total number of pixels in the digital image. A proportion of the total number of pixels is selected as having an infrequent color and a respective color for each one of a first portion of the pixels is determined. The respective colors are analyzed to determine whether the respective colors include greater than or equal to the selected proportion infrequent color. If the respective colors include greater than or equal to the selected proportion of infrequent colors then a first subsequent process is selected. If the respective colors include less than the selected proportion of pixels having the infrequent color then a second subsequent process is selected. A system for determining a number of colors in a digital image is also described.
    Type: Grant
    Filed: March 31, 2004
    Date of Patent: September 4, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Tarik Ono
  • Patent number: 7263690
    Abstract: A method for evaluating safety of a tracing program involves loading a byte code in a tracing framework, where the byte code includes instructions of the tracing program, validating the instructions when loading the byte code, performing one or more safety checks on the instructions while performing virtual machine emulation of the instructions, reporting an error condition and aborting virtual machine emulation of an unsafe instruction in the instructions when the safety check(s) detect(s) the unsafe instruction, and completing virtual machine emulation of a safe instruction in the instructions when the safety check(s) detect(s) the safe instruction, after aborting virtual machine emulation of the unsafe instruction.
    Type: Grant
    Filed: November 14, 2003
    Date of Patent: August 28, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Michael W. Shapiro
  • Patent number: 7263628
    Abstract: A Mobile Subscriber Directory Assistance (MSDA) system including originating carrier center initiating a directory assistance call, a directory assistance center providing a directory assistance service, and a search environment. The search environment includes an aggregated pointer database and at least one directory number resolution database. A caller requesting a telephone number is connected to a directory assistance service center where search criteria for the requested number are taken. The requested number is identified by searching the aggregated pointer database and the directory number resolution database. The caller is connected to the identified telephone number without releasing this identified telephone number.
    Type: Grant
    Filed: March 3, 2003
    Date of Patent: August 28, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Claude R. Gauthier, Aninda K. Roy, Pradeep R. Trivedi, Brian W. Amick
  • Patent number: 7263603
    Abstract: One embodiment of the present invention provides a system that avoids read-after-write (RAW) hazards while speculatively executing instructions on a processor. The system starts in a normal execution mode, wherein the system issues instructions for execution in program order. Upon encountering a stall condition during execution of an instruction, the system generates a checkpoint, and executes the instruction and subsequent instructions in a speculative-execution mode. The system also maintains dependency information for each register indicating whether or not a value in the register depends on an unresolved data-dependency. The system uses this dependency information to avoid RAW hazards during the speculative-execution mode.
    Type: Grant
    Filed: August 20, 2004
    Date of Patent: August 28, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Shailender Chaudhry, Paul Caprioli, Marc Tremblay
  • Patent number: 7263699
    Abstract: Configuring software for a target comprises preparing a command file which specifies a subset of components selected from a group of components, and parameters for tuning at least some of the selected subset of components. The command file is written using a single programming language, capable of managing tree structures of objects, preferably an XML type language, having a Document Type Definition enabling it to work as a programming language. An image file is prepared from the command file, to be loaded on the target.
    Type: Grant
    Filed: June 13, 2002
    Date of Patent: August 28, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Christian Jacquemot, Laurent Latil, Vadim Abrossimov
  • Patent number: 7263586
    Abstract: Distinguishing between snoops initiated internally with respect to a processing unit and snoops initiated externally with respect to a processing unit allows maintenance of cache coherency for a processing unit with multiple independent cache nits. A processing unit with multiple independent cache units, issues an externally initiated snoop to its cache units. Responses from the multiple independent cache units are the basis for a unified response provided to at least the initiator of the external snoop. An internally initiated snoop is communicated to the host system, and communicated to peer cache unit(s) within the processing unit.
    Type: Grant
    Filed: February 17, 2004
    Date of Patent: August 28, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Sanjiv Kapil
  • Patent number: 7263560
    Abstract: Embodiments of a shared resource distributed index mechanism that peers in a peer-to-peer network may utilize to distribute index entries corresponding to resources to indexes of shared resources among one or more other peers. These indexes may be used to direct queries to peers where the queries are most likely to be answered. When a query is received by a rendezvous peer including one or more indexes, contents of the query may be “looked up” in the index to find matches. The results of the lookup may include information on one or peer(s) that may hold advertisement(s) to the resource requested by the query. The query may then be forwarded to one or more peers that may hold the advertisement for the resource. Embodiments may provide “loosely-coupled” distribution of index entries for use in querying for resources in the peer-to-peer network.
    Type: Grant
    Filed: August 30, 2002
    Date of Patent: August 28, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Mohamed M. Abdelaziz, Bernard A. Traversat, Michael J. Duigou, Jean-Christophe Hugly, Sherif Botros
  • Patent number: 7263687
    Abstract: One embodiment of the present invention provides a system that facilitates use of an object-oriented enumerated type within a computer program. During operation, the system receives source code for the computer program, wherein the source code contains a declaration for an enumerated type. This declaration specifies a fixed number of enumeration constants that comprise the enumerated type. Next, the system defines the enumerated type using a class defined within an object-oriented programming language, wherein the class includes a constant for each enumeration constant specified in the declaration. If the declaration additionally contains one or more method declarations, these methods are present on the defined class.
    Type: Grant
    Filed: September 9, 2002
    Date of Patent: August 28, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Joshua J. Bloch, Neal M. Gafter
  • Publication number: 20070198554
    Abstract: A method for management of a grid fabric that includes receiving a management request using a protocol, decoupling the management request from the protocol to obtain a decoupled management request, selecting a grid control service from a plurality of grid control services configured to perform the decoupled management request, identifying at least one node in the grid fabric associated with the decoupled management request by the grid control service, executing at least one command based on the decoupled management request using the at least one node and the grid control service, wherein the at least one command generates a result, and outputting the result.
    Type: Application
    Filed: February 10, 2006
    Publication date: August 23, 2007
    Applicant: Sun Microsystems, Inc.
    Inventor: Lei Liu
  • Publication number: 20070198889
    Abstract: A method for reconstructing a logical block, wherein the logical block comprises a first set of sectors. The method including obtaining a copy of the logical block comprising a second set of sectors, determining which of the sectors in the first set of sectors are identical to sectors in the second set of sectors to obtain identical sectors, selecting a first combination of non-identical sectors from the first set of sectors and the second set of sectors, combining a copy of each of the identical sectors with the first combination of non-identical sectors to obtain a first reconstructed logical block, calculating a first checksum for the first reconstructed logical block, and determining whether the first calculated checksum is equal to the stored checksum associated with the first logical block.
    Type: Application
    Filed: April 19, 2006
    Publication date: August 23, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: William Moore, Jeffrey Bonwick
  • Publication number: 20070198518
    Abstract: A system for implementing synchronized objects for software transactional memory comprises one or more processors and a memory comprising program instructions executable by the processor to implement a transactional-memory manager configured to coordinate memory access requests directed at the memory from a plurality of transactions. The transactional-memory manager records, within a collaborator record for a shared data object in the memory, identifications of a set of two or more transactions that have requested synchronization on the object. In response to a commit request from a given transaction of the set, the transactional-memory manager determines whether to commit or abort the given transaction based at least in part on the transactional states of other transactions in the set, examining the collaborator record to identify the other transactions.
    Type: Application
    Filed: February 14, 2006
    Publication date: August 23, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: Victor Luchangco, Virendra Marathe
  • Patent number: 7260576
    Abstract: One embodiment of the present invention provides a distributed file system that is able to use direct connections between clients and disks to perform file system operations. Upon receiving a request at a client to access a file, the client performs a lookup in a local cache to determine what physical disk blocks are associated with the request. If the lookup cannot be satisfied from the local cache, the client forwards the request to a server. In response to the forwarded request, the client receives a block map for the file from the server. This block map includes location information specifying physical disk blocks containing the file. The client uses this block map to determine which physical disk blocks are involved in the request and then accesses the file directly from the disk without going through the server.
    Type: Grant
    Filed: November 5, 2002
    Date of Patent: August 21, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Shankar Pasupathy, Amod K. Dani, Sushil Thomas, Siamak Nazari
  • Patent number: 7260818
    Abstract: In a multi-node computer system, a software version management system is described having a version manager for ensuring that cluster nodes running completely incompatible software are unable to communicate with each other. The version manager provides a mechanism for determining when nodes in the cluster are running incompatible software and providing a way for determining the exact version of software that each node must run. The version manager provides support for rolling upgrades to enable the version management software to ensure the chosen version of software that runs the cluster stays constant even though the software installed on individual nodes is changing.
    Type: Grant
    Filed: May 29, 2003
    Date of Patent: August 21, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Skef F. Iterum, Mark T. Hashimoto
  • Patent number: 7260759
    Abstract: A memory BIST architecture provides an efficient communication interface between external agents, e.g., external tester and a memory BIST module. The memory BIST architecture reduces diagnostics efforts by dividing the search space and allowing the test and debug to be concentrated on the failing memory. The memory BIST architecture is divided into two levels, a memory BIST sequencer level and a satellite memory BIST module. The memory BIST sequencer level includes a set of registers that provide an interface between external agents attempting to communicate with the MBIST module and the Satellite MBIST module.
    Type: Grant
    Filed: June 16, 2004
    Date of Patent: August 21, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Kamran Zarrineh, Kenneth A. House, Syed A. Obaidulla
  • Patent number: 7260703
    Abstract: In general, in one aspect, a method for storing data, including receiving a request to store data in a storage pool, determining a quantized deadline for the request, placing the request in an Input/Output (I/O) queue using the quantized deadline, placing a copy of the request in a logical block address (LBA) data structure using a LBA corresponding to the copy of the request, issuing the request to the storage pool using the I/O queue, and issuing an adjacent request to the storage pool using the LBA data structure, wherein the adjacent request is determined using the LBA of the copy of the request.
    Type: Grant
    Filed: August 20, 2004
    Date of Patent: August 21, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: William H. Moore, Jeffrey S. Bonwick, George R. Cameron
  • Patent number: 7260515
    Abstract: A method and apparatus for cycle-based simulation of a transparent latch includes classifying a phase of the transparent latch, classifying a phase of an input to the transparent latch, and classifying a phase of a simulation cycle. The transparent latch is simulated as a cycle-based simulation element based on the phase of the transparent latch, the phase of the input to the transparent latch, and the phase of the simulation cycle.
    Type: Grant
    Filed: March 28, 2002
    Date of Patent: August 21, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Liang T. Chen
  • Patent number: 7260805
    Abstract: Ports at which a cell served by a local powergrid is to be modeled are designated on a selected metal layer N-levels down from the topmost metal layer of the local powergrid. The cell is modeled at the designated ports, excluding any metal layers above the selected metal layer. Any metal layers of the local powergrid above the selected metal layer are included as part of a model of the global powergrid, rather than as part of the local powergrid, and a hierarchical powergrid analysis is performed.
    Type: Grant
    Filed: June 24, 2004
    Date of Patent: August 21, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Kenneth Y. Yan, Anuj Trivedi, Xiaoning Qi