Patents Assigned to Sun Microsystems, Inc.
-
Patent number: 7669015Abstract: The present disclosure describes a unique way for each of multiple processes to operate in parallel using (e.g., reading, modifying, and writing to) the same shared data without causing corruption to the shared data. For example, each of multiple processes utilizes current and past data values associated with a global counter or clock for purposes of determining whether any shared variables used to produce a respective transaction outcome were modified (by another process) when executing a respective transaction. If a respective process detects that shared data used by respective process was modified during a transaction, the process can abort and retry the transaction rather than cause data corruption by storing locally maintained results associated with the transaction to a globally shared data space.Type: GrantFiled: June 27, 2006Date of Patent: February 23, 2010Assignee: Sun Microsystems Inc.Inventors: David Dice, Ori Shalev, Nir N. Shavit
-
Patent number: 7667967Abstract: A cooling system for a rack-mount server including at least one blade and a system enclosure includes a liquid cooling line, at least one heat exchanger connected to the liquid cooling line and including a plurality of fins divided into one or more sections of the plurality of fins, wherein the fin density of the plurality of fins varies over the one or more sections, and a plurality of fans configured to blow air through the at least one heat exchanger and cool the at least one blade in the rack-mount server.Type: GrantFiled: August 6, 2008Date of Patent: February 23, 2010Assignee: Sun Microsystems, Inc.Inventors: David W. Copeland, Marlin R. Vogel, Andrew R. Masto
-
Patent number: 7667966Abstract: A fan enclosure for a system including one more fans and a system enclosure includes a first pivot removably attached to the system enclosure, a safety compliant fan grill attached to the first pivot rotatably between a natural closed position and a forced open position, and a cam disposed on the safety compliant fan grill. The safety compliant fan grill covers the one or more fans in the natural closed position. The cam is configured to force the safety compliant fan grill into the forced open position when a top cover of the system enclosure is placed in a closed position.Type: GrantFiled: June 26, 2008Date of Patent: February 23, 2010Assignee: Sun Microsystems, Inc.Inventors: Brett C. Ong, William A. De Meulenaere, Timothy W. Olesiewicz
-
Patent number: 7668862Abstract: A system and method for controlling the use by caller objects to a restricted method of a resource object in an object-oriented computing environment are provided in accordance with one embodiment of the invention. The method is based on associating an access-token with a caller object which is to be allowed to access the restricted method and sharing this access-token with the resource object. When subsequent calls to the restricted method are made by a caller object, access is made contingent on the caller object providing the access-token as part of the call procedure. Where no access-token is provided, or an invalid access-token is provided, access to the method is denied or restricted. The method provides protection against innocently made wrong calls to a restricted method by a caller object, for example due to coding errors. The method also provides protection against maliciously made calls to a restricted method by caller objects that should not have access to it.Type: GrantFiled: February 2, 2005Date of Patent: February 23, 2010Assignee: Sun Microsystems, Inc.Inventor: Michael Hoennig
-
Patent number: 7669187Abstract: A low-level process, which was mapped from a high-level graphical notation diagram, is debugged using the high-level graphical notation diagram. To debug the low-level process, a debugging interface allows a user to set and track breakpoints and other debug events from the high-level graphical notation diagram. When a breakpoint or other debug event is encountered during low-level processing, the high-level graphical notation diagram is updated to show the status of the low-level process.Type: GrantFiled: March 22, 2006Date of Patent: February 23, 2010Assignee: Sun Microsystems, Inc.Inventors: Peter Tehchuan Liu, Matthew T. Stevens, Michael C. Frisino
-
Patent number: 7669186Abstract: A system for debugging applications at resource-constrained virtual machines may include a target device configured to host a lightweight debug agent to obtain debug information from one or more threads of execution at a virtual machine executing at the target device, and a debug controller. The lightweight debug agent may include a plurality of independently deployable modules. The debug controller may be configured to select one or more of the modules for deployment at the virtual machine for a debug session initiated to debug a targeted thread, to deploy the selected modules at the virtual machine for the debug session, and to receive debug information related to the targeted thread from the lightweight debug agent during the session.Type: GrantFiled: November 16, 2005Date of Patent: February 23, 2010Assignee: Sun Microsystems, Inc.Inventors: John S. Nolan, Bernard Horan
-
Patent number: 7669040Abstract: A system that executes a long transaction in a system with limited transactional hardware resources. During operation, the system executes the long transaction in a non transactional mode, which does not use transactional hardware resources. The system defers stores generated during the long transaction so that the stores are not committed to the architectural state of a processor until the transaction is successfully completed. If the long transaction successfully completes, the system commits the long transaction, which involves performing multiple hardware transactions to commit the deferred stores to the architectural state of the processor.Type: GrantFiled: December 15, 2006Date of Patent: February 23, 2010Assignee: Sun Microsystems, Inc.Inventor: David Dice
-
Publication number: 20100042983Abstract: A system and method are provided for inlining a program call between processes executing under separate ISAs (Instruction Set Architectures) within a system virtual machine. The system virtual machine hosts any number of virtual operating system instances, each of which may execute any number of applications. The system virtual machine interprets or dynamically compiles not only application code executing under virtual operating systems, but also the virtual operating systems. For a program call that crosses ISA boundaries, the virtual machine assembles an intermediate representation (IR) graph that spans the boundary. Region nodes corresponding to code on both sides of the call are enhanced with information identifying the virtual ISA of the code. The IR is optimized and used to generate instructions in a native ISA (Instruction Set Architecture) of the virtual machine. Individual instructions are configured and executed (or emulated) to perform as they would within the virtual ISA.Type: ApplicationFiled: August 12, 2008Publication date: February 18, 2010Applicant: Sun Microsystems, Inc.Inventors: Christopher A. Vick, Gregory M. Wright, Mario I. Wolczko
-
Publication number: 20100042973Abstract: XACML (eXtensible Access Control Markup Language) documents, PolicySets and Policies can become long, complex and difficult to completely comprehend. A method is provided for facilitating analysis of such code to make it easier to answer questions such as: Given a particular set of Attribute values (and/or others unknown as of now), what is permitted or denied; are any of the rules redundant; are any of the rules inconsistent; for any pair of policies in the code, what set of Attributes will they both return Permit; how can a policy be refactored into an equivalent set of policies in which each branch of the policy tree pertains to specific values of specified Attributes? To facilitate such analysis and refactoring, every Rule in the collection of policies being analyzed is reduced to an equivalent expression in DNF (Disjunctive Normal Form). Some terms, predicates and other elements may be eliminated.Type: ApplicationFiled: August 12, 2008Publication date: February 18, 2010Applicant: Sun Microsystems, Inc.Inventors: Anne H. Anderson, Seth T. Proctor
-
Publication number: 20100039765Abstract: A mounting assembly includes two side rails that mechanically couple to at least two sides on an exterior of a device, where a given side rail includes one or more circumferential edges that define one or more holes on a surface and into an interior of the given side rail, and the surface is approximately parallel to one of the at least two sides on the exterior of the device. Moreover, the mounting assembly includes mechanical collars that mechanically couple to mechanical couplers that mechanically couple the mounting assembly to a chassis in a computer system, where a given mechanical collar is included in a given hole in the given side rail. Additionally, the mounting assembly includes energy-absorbing material encapsulating the mechanical collars, where the energy-absorbing material is positioned between an outer surface of the given mechanical collar and an inner surface of the given hole.Type: ApplicationFiled: August 15, 2008Publication date: February 18, 2010Applicant: Sun Microsystems, Inc.Inventors: Robert S. Antonuccio, Timothy W. Olesiewicz, Brett C. Ong
-
Patent number: 7665092Abstract: One embodiment of the present invention provides a system that performs load balancing between task queues in a multiprocessor system. During operation, the system conditionally requests load information from a number of neighboring CPUs in a neighborhood of a requesting CPU. In response to the request, the system receives load information from one or more neighboring CPUs. Next, the system conditionally requests one or more neighboring CPUs to transfer tasks to the requesting CPU based on the received load information, thereby balancing load between the CPUs in the neighborhood.Type: GrantFiled: December 15, 2004Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventor: David Vengerov
-
Patent number: 7663517Abstract: A method for configuring a circuit for providing a power OK (POK) signal is described. The method includes identifying a voltage range and voltage interval, dividing the voltage range into a plurality of segments, selecting a reference voltage for each segment, and selecting resistor values for a plurality of voltage dividers for dividing an output voltage from a precision voltage reference into each of the reference voltages. A power OK signal generator and method for generating a power OK signal are also described.Type: GrantFiled: June 28, 2006Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventors: Deepak Rao, Han Y. Ko
-
Patent number: 7665089Abstract: One embodiment of the present invention provides a system that performs thread migration within an array of computing nodes, wherein computing nodes in the array contain central processing units (CPUs) and/or memories. During operation, the system identifies CPUs within the array of computing nodes that are available to accept a given thread. For each available CPU, the system computes an average communication distance between the CPU and memories which are accessed by the given thread. Next, the system determines whether to move the given thread to an available CPU based on the average communication distance for the available CPU.Type: GrantFiled: November 2, 2004Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventor: David Vengerov
-
Patent number: 7663889Abstract: An assembly is disclosed which enables a printed circuit board (PCB) to be added to or removed from a computer system without deactivating other parts of the system. The assembly, which holds the PCB, translates lateral motion into vertical motion to enable lateral motion to be applied to derive the vertical motion needed to plug and unplug a PCB into and out of an expansion slot. This motion translation makes it possible to insert or remove a PCB via a rear, front, or side access portal of a housing rather than through the top of the housing. Thus, the assembly eliminates the need to remove the housing from a rack, or to remove a top from the housing, which in turn eliminates the need to shut down any other parts of the system. Thus, the assembly enables a PCB to be “hot swapped” into and out of a computer system.Type: GrantFiled: October 23, 2006Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventors: Robert J. Lajara, Kenneth Kitlas, Bakul V. Herekar
-
Patent number: 7664213Abstract: A data communications system is disclosed. The data communications system comprises two clock domains. Each of the clock domains are coupled to receive a source clock signal. The first clock domain includes a first clock signal and the second clock domain includes a second clock signal, each of the first clock signal and the second clock signal are derived from the source clock signal. The first clock signal has a frequency which is different from that of the second clock signal, and which is not an integer multiple of the frequency of the second clock signal. The first clock domain includes circuitry which is configured to generate both the first clock signal and a reference clock signal derived from the source clock signal.Type: GrantFiled: November 22, 2005Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventor: Mahmudul Hassan
-
Patent number: 7665075Abstract: A method for sharing dynamically compiled code between different class loaders is provided. In this method, loader-reentrant compiled code is produced from bytecodes by generating native code implementing a class initialization barrier when compiling bytecodes that require a class to be initialized, by generating native code implementing a link resolution barrier when compiling bytecodes that require a symbolic link to be resolved, and by generating code to retrieve loader-dependent data from a loader-dependent table when compiling bytecodes that use data computed from a resolved symbolic link.Type: GrantFiled: May 18, 2004Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventors: Laurent Daynes, Grzegorz Czajkowski
-
Patent number: 7663961Abstract: A reduced-power memory (such as for a cache memory system of a processor or a microprocessor) provides per-sector power/ground control and early address to advantageously reduce power consumption. Selective power control of sectors comprised in the reduced-power memory is responsive to a subset of address bits used to access the memory. The selective power control individually powers-up a selected one of the sectors in response to an access, and then powers-down the selected sector when the access is complete. The power-up is via an increase of differential between power and ground levels from a retention differential to an access differential. Time needed to vary the differential is masked by providing address information used by the selective power control in advance of providing other address information. For example, in a cache, a tag access is overlapped with power-up of a selected sector, thus masking latency of powering up the selected sector.Type: GrantFiled: April 26, 2007Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventors: Joseph B. Rowlands, Laurent R. Moll, John Gregory Favor, Daniel Fung
-
Patent number: 7664942Abstract: Embodiments of the present invention provide a system that executes program code in a processor. The system starts by executing the program code in a normal mode using a primary strand while concurrently executing the program code ahead of the primary strand using a subordinate strand in a scout mode. Upon resolving a branch using the subordinate strand, the system records a resolution for the branch in a speculative branch resolution table. Upon subsequently encountering the branch using the primary strand, the system uses the recorded resolution from the speculative branch resolution table to predict a resolution for the branch for the primary strand. Upon determining that the resolution of the branch was mispredicted for the primary strand, the system determines that the subordinate strand mispredicted the branch. The system then recovers the subordinate strand to the branch and restarts the subordinate strand executing the program code.Type: GrantFiled: August 25, 2008Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventors: Marc Tremblay, Shailender Chaudhry
-
Patent number: 7665071Abstract: A management system is provided for the generation of a management object model for performing management of a computer system. The object model includes a structured hierarchy of objects representing components of a computer system. The management system can include component modules operable to define mappings from instrumentation of the components to objects representing those components and configuration modules operable to configure associations between the component modules for the generation of the management object model.Type: GrantFiled: December 11, 2003Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventors: Karen C. Roles, Stephen C. Evans, Steven J. Glover
-
Patent number: 7661316Abstract: One embodiment of the present invention provides a system that determines fan speeds for a set of fans in a computer system. During operation, the system receives time-series data collected by a vibration transducer associated with the computer system, wherein the vibration transducer is configured to record mechanical vibrations from the set of fans. Next, the system performs a spectral analysis on the time-series data to obtain frequency peaks associated with fan speeds for individual fans in the set of fans. The system then identifies fan speeds for the individual fans in the set of fans from the frequency peaks.Type: GrantFiled: July 12, 2007Date of Patent: February 16, 2010Assignee: Sun Microsystems, Inc.Inventors: Kenny C. Gross, Aleksey M. Urmanov