Patents Assigned to Sun Microsystems
-
Patent number: 7404182Abstract: The present invention provides a technique for reducing the number of write barriers without compromising garbage collector performance or correctness. To that end, a compiler defers emitting write barriers until it reaches a subsequent instruction in the mutator code. At this point, the compiler may elide repeated or unnecessary write-barrier code so as to emit only those write barriers that provide useful information to the garbage collector. By eliminating write-barrier code in this manner, the amount of write-barrier overhead in the mutator can be minimized, consequently enabling the mutator to execute faster and more efficiently. Further, collocating write barriers after the predetermined instruction also enables the compiler to generate object code having better cache performance and more efficient use of guard code than is possible using conventional write-barrier implementations.Type: GrantFiled: October 3, 2003Date of Patent: July 22, 2008Assignee: Sun Microsystems, Inc.Inventors: Alexander T. Garthwaite, Steven K. Heller
-
Patent number: 7400590Abstract: An Infiniband device can be provided. The device can have an input port for receiving a packet. The port can be operable to extract a destination descriptor and a quality of service requirement descriptor for the packet and simultaneously to determine an output port of the device for onward transmission of the packet on the basis of the destination descriptor and to determine an output port virtual lane for each output port of the device on the basis of the quality of service requirement descriptor. The port can additionally be operable subsequently to use the determined output port to select between the determined output port virtual lanes.Type: GrantFiled: June 8, 2004Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Hans Rygh, Steinar Forsmo, Ola Torudbakken
-
Patent number: 7401128Abstract: A method for generating a channel for displaying channel content for a portal by a user, involving accessing a portal server via a network using a client computer, accessing a channel generating link in response to the user interacting with a content link of the portal server, accessing an information inputting interface in response to the user interacting with the channel generating link, inputting information to the portal server using the information inputting interface wherein said information describes the channel, and generating the channel in response to the inputting information to the portal server.Type: GrantFiled: May 20, 2004Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventor: Thomas Mueller
-
Patent number: 7401114Abstract: The present invention provides a method and apparatus for making a computational service highly available in a multiple server computer environment. In the thin client computing paradigm, end user terminals rely on remote server computers for operation of most functions traditionally associated with personal computing. If the remote server computer fails, all of the users' computers will likewise fail. The present invention provides a solution by implementing a redundant server strategy and a redirection process. One or more servers hosting a communication to the terminal do not contain the only copy of permanent user data. This makes all session hosting servers interchangeable. If a server fails, the failure is detected and the terminal switches to another host server.Type: GrantFiled: February 25, 2000Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Robert J. Block, James G. Hanko, J. Kent Peacock
-
Patent number: 7401153Abstract: A system and method for providing an open network computing platform designed for peer-to-peer computing. The peer-to-peer platform may provide protocols for peer-to-peer services and applications that allow peers to discover each other, communicate with each other, and cooperate with each other to form peer groups. The protocols may include a peer membership protocol, a peer discovery protocol, a peer resolver protocol, a peer information protocol, a pipe binding protocol, and a peer endpoint protocol. Services and applications that participate in the protocols may be provided to deal with higher-level concepts. Advertisements may be used to publish peer resources. The peer-to-peer platform provides the ability to replicate information toward end users and may enable peers to find content that is closest to them. The peer-to-peer protocols and unique peer identifiers may allow peer nodes to move to different locations and access services and other content independent of network physical addresses.Type: GrantFiled: January 22, 2002Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Bernard A. Traversat, Gregory L. Slaughter, Thomas E. Saulpaugh, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, Li Gong, William J. Yeager, Kuldipsingh Pabla, William N. Joy, Michael J. Clary
-
Patent number: 7400650Abstract: A system and method for improving the efficiency with which data communications are passed through a protocol stack. Protocol layer modules within a protocol stack built upon the Streams framework are modified to establish tight embraces between adjacent modules. A tight embrace may be established by passing from one, upper, protocol layer module to its adjacent lower protocol layer module a pointer or reference to the upper module's functionality (e.g., rput) for reading a data communication into the upper module from the lower module. Similarly, the lower module passes the upper module a pointer or reference to its functionality (e.g., wput) for writing a data communication into the lower module from the upper module. After a tight embrace is established, the protocol layer modules can directly invoke each other's functionality, without incurring the overhead associated with the Streams framework's “canputnext” and “putnext” messages.Type: GrantFiled: January 31, 2005Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventor: Francesco DiMambro
-
Patent number: 7401152Abstract: A system and method for uniquely identifying peers and other resources in a peer-to-peer networking environment. In one embodiment, every peer in the peer-to-peer network may have a unique peer identifier. Other peer-to-peer network resources may also have unique identifiers, including peer groups, services, applications, pipes, endpoints, content and resource advertisements. Identifiers may serve to canonically refer to resources. Identifiers may be embedded in advertisements for resources. In one embodiment, a peer identifier may identify a peer group in which the peer is a member peer. In one embodiment, a peer may have a different peer identifier for each group in which it is a member peer. In one embodiment, an identifier may be bound to a network address of the resource. If the resource changes network addresses, the identifier may be bound to the new network address. Thus, identifiers provide dynamic addressing for resources in the peer-to-peer environment.Type: GrantFiled: January 22, 2002Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Bernard A. Traversat, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, Li Gong, William N. Joy, Michael J. Clary
-
Patent number: 7401161Abstract: A storage array interconnection fabric may be configured using multiple independent paths. A storage system including a plurality of communication paths is configured for connecting each node of a plurality of nodes forming an interconnection fabric. Each of the communications paths is an independent communications path. In addition, a first portion of the plurality of nodes is configured to communicate with a plurality of mass storage devices such as disk drives. A second portion of the plurality of nodes may be configured to communicate with a host.Type: GrantFiled: December 18, 2000Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Whay S. Lee, Randall Rettberg, Nisha D. Talagala, Chia Y. Wu, Fay Chong, Jr.
-
Patent number: 7401110Abstract: An MD5 arithmetic unit including multiple carry look-ahead adders. The carry look-ahead adders are configured to execute substantially simultaneously. A method of executing an MD5 algorithm is also disclosed.Type: GrantFiled: September 9, 2004Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventor: Leonard D. Rarick
-
Patent number: 7401259Abstract: A system and method may emulate scenarios for testing a distributed system. The distributed system may include a plurality of nodes, each having one or more resources. The system may include a resource driver for each type of the one or more resources in the distributed system, as well as one or more agents configured to access each resource through the corresponding resource driver. At least one node in the distributed system may be configured to run on a different platform than another node in the distributed system. The system may further include a central controller configured to communicate with each agent. The central controller may further execute a test scenario script containing one or more test scenarios for the distributed system.Type: GrantFiled: June 19, 2003Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Sushrut Bhowmik, Shubhankar Sumar
-
Patent number: 7401215Abstract: One embodiment of the present invention provides a system that communicates cryptographic data through multiple network layers. During operation, the system receives the cryptographic data and divides the cryptographic data into multiple pieces. The system then encapsulates different pieces of the cryptographic data into fields associated with different network layers in a data packet, whereby an item of cryptographic data that is too large to be communicated in a single field can be communicated through multiple fields associated with different network layers.Type: GrantFiled: September 29, 2003Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Gabriel E. Montenegro, Julien H. Laganier
-
Patent number: 7401012Abstract: One embodiment of the present invention provides a system that characterizes computer system workloads. During operation, the system collects metrics for a number of workloads of interest as the workloads of interest execute on a computer system. Next, the system uses the collected metrics to build a statistical regression model, wherein the statistical regression model uses a performance indicator as a response, and uses the metrics as predictors. The system then defines a distance metric between workloads, wherein the distance between two workloads is a function of the differences between metric values for the two workloads. Furthermore, these differences are weighted by corresponding coefficients for the metric values in the statistical regression model.Type: GrantFiled: April 20, 2005Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Jan L. Bonebakker, Ilya Gluhovsky
-
Patent number: 7401206Abstract: An apparatus and method for fine-grained multithreading in a multipipelined processor core. According to one embodiment, a processor may include instruction fetch logic configured to assign a given one of a plurality of threads to a corresponding one of a plurality of thread groups, where each of the plurality of thread groups may comprise a subset of the plurality of threads, to issue a first instruction from one of the plurality of threads during one execution cycle, and to issue a second instruction from another one of the plurality of threads during a successive execution cycle. The processor may further include a plurality of execution units, each configured to execute instructions issued from a respective thread group.Type: GrantFiled: June 30, 2004Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Ricky C. Hetherington, Gregory F. Grohoski, Robert T. Golla
-
Patent number: 7401324Abstract: One embodiment of the present invention provides a system for performing time measurements during instrumentation-based profiling. The system operates by first measuring time required to execute instrumentation code in isolation. Next, it receives the code to be profiled (user application), inserts the instrumentation code into it, and executes this combined code. The system then measures the time it takes to execute the combined code. Finally, it subtracts the previously obtained instrumentation code execution time from the total combined code execution time, thus obtaining the exact execution time for the user application.Type: GrantFiled: September 18, 2003Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventor: Mikhail A. Dmitriev
-
Patent number: 7400624Abstract: In a system and method for distributing and processing messages, a message may be sent to a message middleware component by a message producer. The message middleware component may provide the message to a cluster of nodes (such as a cluster of application servers or a cluster of application components). The node may implement a message verifier to determine if it is the node responsible for processing the message. The node that is responsible for processing the message may process the message and communicate the result to the other nodes. The other nodes not responsible for processing the message may ignore the message.Type: GrantFiled: May 27, 2003Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Venkateshwara T V, Ajay Kumar
-
Patent number: 7401355Abstract: Methods and systems for load balancing a plurality of entities, such as firewalls, in a network environment are disclosed. In particular, the load balancing of firewalls on a bidirectional traffic path is performed using a single device that controls both incoming and outgoing traffic through the firewalls. The single device may include virtual routers for controlling the bidirectional traffic through the firewalls. A first virtual router may control incoming traffic to the firewalls and the other virtual router may control outgoing traffic to the firewalls. The virtual routers are logical partitions of the device layered on the physical resources of the device. The virtual routers share all or portions of the physical resources of the single device.Type: GrantFiled: April 30, 2004Date of Patent: July 15, 2008Assignee: Sun MicrosystemsInventors: Robert M. Supnik, David S. Caplan, Paul G. Phillips, Michael Banatt
-
Patent number: 7400581Abstract: Embodiments of the present invention provide a novel method of implementing a network communication protocol. In one embodiment, the state of the network communication process is determined based upon one or more conditions. The protocol stack is then executed as a single thread of execution if the network communication process is in a first state. Alternatively, the protocol stack is executed as a receive thread of execution and a drainer thread of execution if the network communication process is in a second state.Type: GrantFiled: March 3, 2003Date of Patent: July 15, 2008Assignee: Sun Microsystems, Inc.Inventors: Cahya Adi Masputra, Kacheong Poon
-
Publication number: 20080165501Abstract: An apparatus for dissipating heat in a computer system includes a heat sink, at least one fastener which secures the heat sink to at least one first support member, and at least one cup. The first support member has a top side and a bottom side. The at least one cup includes a cylindrical cavity, an upper protruding lip, and a lower base having a hole through which the at least one fastener passes. A method for dissipating heat in a computer system includes, mounting a heat emitting component onto a printed circuit board, pressing a heat sink into thermal contact with a heat emitting component, inserting a cup into an aperture of the heat sink, and supporting a heat sink.Type: ApplicationFiled: January 10, 2007Publication date: July 10, 2008Applicant: Sun Microsystems, Inc.Inventors: Thomas E. Stewart, Daniel Hruska
-
Patent number: 7398329Abstract: A method for pipelining execution input/output (I/O) includes obtaining a first I/O operation, determining a first plurality of stages of a pipeline needed to execute the first I/O operation, and executing each of the first plurality of stages to complete the I/O operation, wherein the first plurality of stages is a subset of a plurality of stages associated with pipeline, and wherein each of the first plurality of stages of the pipeline is executed in sequence.Type: GrantFiled: April 20, 2006Date of Patent: July 8, 2008Assignee: Sun Microsystems, Inc.Inventors: William H. Moore, Jeffrey S. Bonwick
-
Patent number: 7397136Abstract: A single-chip module is described. The module includes a first semiconductor die having a first surface and a second surface. The first semiconductor die is configured to communicate by capacitive coupling using one or more of a plurality of proximity connectors coupled to the first semiconductor die. A cable coupled to the first semiconductor die is configured to couple power signals to the first semiconductor die. A flexibility compliance of at least one section of the cable is greater than a threshold value thereby allowing the module to be positioned in a mounting structure.Type: GrantFiled: July 15, 2005Date of Patent: July 8, 2008Assignee: Sun Microsystems, Inc.Inventors: Arthur R. Zingher, Bruce M. Guenin, Edward L. Follmer