Patents Assigned to Sun Microsystems
  • Patent number: 7085853
    Abstract: An invention is disclosed for a distributed shell for use in a distributed computer environment. The distributed shell includes a shell server, which is located on a server computer system. The shell server processes commands for distribution to particular client computer systems of the distributed computer system. In addition, the distributed shell includes a plurality of shell clients. Each shell client is executed on a separate client computer system and is in communication with the shell server. In operation, the shell server selects a particular shell client to perform a task or tasks in response to receiving a command. The tasks are then sent to the selected shell client and the shell client executes the task.
    Type: Grant
    Filed: September 10, 2002
    Date of Patent: August 1, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Alexei Volkov, Allan S. Jacobs
  • Patent number: 7085805
    Abstract: Methods and apparatus for data distribution among servers in a grouped server system. Each server in the group includes a device manager which is responsible for brokering devices to services. A service communicates to a device manager on the same server through an inter-process communication mechanism. A desktop unit, having persistent connections with a single device manager, switches to a peer (other device managers in the group) when the desktop unit is reset or when a device manager fails. At least one device is connected to the desktop unit. When the desktop unit is connected to the new device manager, ownership of the devices may change. The new device manager notifies its peers of any device status changes.
    Type: Grant
    Filed: July 7, 2000
    Date of Patent: August 1, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Alan T. Ruberg, James G. Hanko, Manpop A. Lau
  • Patent number: 7085852
    Abstract: A client-server system may include a primary state of session data. Application servers may include client states of the session data and may access the primary state. The session data may include attributes. An application server may generate a set of attributes of the session data for synchronizing the primary state with the client state. The set may exclude immutable attributes. In some embodiment the set may further exclude attributes only immutably accessed and/or further exclude attributes that were not accessed. In some embodiments, the application server may use a binary comparison or an object graph comparison of the set of attributes to a benchmark of the client state to determine a subset of the generated set of attributes that are modified. The distributed store may synchronize the primary state with the client state using the generated set of attributes or, in some embodiments, using only the modified attributes.
    Type: Grant
    Filed: March 1, 2002
    Date of Patent: August 1, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Ajay Kumar, Hanumantha Rao Susaria, Prakash Khemani
  • Patent number: 7085925
    Abstract: A method and system for evaluating a set of credentials that includes at least one group credential and that may include one or more additional credentials. A trust rating is provided in association with the at least one group credential within the set of credentials and trust ratings may also be provided in other credentials within the set of credentials. Each trust rating provides an indication of the level of confidence in the information being certified in the respective credential. In response to a request for access to a resource or service, an evaluation of the group credentials is performed by an access control program to determine whether access to the requested resource or service should be provided. In one embodiment, within any given certification path a composite trust rating for the respective path is determined. An overall trust rating for the set of credentials is determined based upon the composite trust ratings.
    Type: Grant
    Filed: April 3, 2001
    Date of Patent: August 1, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Stephen R. Hanna, Anne H. Anderson, Yassir K. Elley, Radia J. Perlman, Sean J. Mullan
  • Patent number: 7085178
    Abstract: One embodiment of the present invention provides a system that writes to a cell in a memory using a low-voltage-swing signal across a pair of global bit-lines. During operation, the system receives a low-voltage-swing signal across a pair of global bit-lines, which is too low to reliably write the memory cell. Next, the system converts the low-voltage-swing signal to a high-voltage-swing signal, which is adequate to reliably write the memory cell. The system then writes to the memory cell by applying the high-voltage-swing signal across a pair of local bit-lines that are coupled to the memory cell. The use of low-voltage-swing signals on the global bit-lines reduces overall power consumption. Furthermore, in one embodiment of the present invention, the voltage conversion is achieved using a pair of cross-coupled NMOS transistors whose sources are directly or indirectly coupled with the global bit-lines, and whose drains are directly or indirectly coupled with the local bit-lines.
    Type: Grant
    Filed: January 27, 2005
    Date of Patent: August 1, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Robert J. Proebsting, Ronald Ho, Robert J. Drost
  • Patent number: 7085840
    Abstract: A method for enhanced quality of identification in a data communications network includes obtaining a user identifier that includes an identification server ID and an identification randomized ID. The identification server ID identifies an identification server peer group. The identification server peer group includes at least one server that maintains a mapping between an identification randomized ID and a user authentication peer group capable of authenticating a user associated with a particular randomized ID, and a mapping between the identification randomized ID and user information. The method also includes requesting authorization of the user by presenting the user identifier to a corresponding identification server peer group. Each server in the identification server peer group is configured to search for one or more matching entries including the randomized ID.
    Type: Grant
    Filed: October 29, 2001
    Date of Patent: August 1, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Eduard K. de Jong, Moshe Levy, Albert Y. Leung
  • Patent number: 7086060
    Abstract: Methods, apparatus, and computer program products are disclosed for a process of dynamically adding new software having resource controls to an operating system and having the resource controls added to various resource control files in the operating system. The process also allows for a resource control to have an arbitrary number of limit values before a highest limit value is reached. A method of dynamically checking a resource control associated with newly added software to an operating system is described. A process or other type of entity in the operating system encounters newly added software and its associated resource control. The operating system then determines whether the resource associated with the resource control is active. If so, the operating system then determines whether usage of the resource by the entity exceeds a limiting value stored in the resource control. If so, one or more actions related to the resource are triggered by the operating system.
    Type: Grant
    Filed: February 15, 2001
    Date of Patent: August 1, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Stephen C. Hahn
  • Patent number: 7085905
    Abstract: A memory system which includes a bank of memory chips, a memory interface, and a memory controller. The memory interface stretches a sample period for data from the bank of memory chips, and provides a sufficiently wide timing margin to enable the memory chips to work reliably across various process conditions.
    Type: Grant
    Filed: July 18, 2002
    Date of Patent: August 1, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Fu-Kuang Frank Chao
  • Patent number: 7085779
    Abstract: Methods and systems are provided for reconciling any changes that have occurred in two file trees since they were last synchronized. A reconciler takes as input two logs of the changes made in the respective file trees. The first log resides on a client computing device, and the second log resides on a server computing device. The reconciler outputs two sets of changes that need to be applied to the respective file trees in order to synchronize them. The reconciler detects and outputs a list of changes that conflict with each other.
    Type: Grant
    Filed: December 12, 2001
    Date of Patent: August 1, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Brian Holtz, Vijay Balasubramanian, Nidheesh Dubey, Aseem Sharma, Vivek Pandey
  • Publication number: 20060168614
    Abstract: Content subscribers can dynamically activate content and content publishing resources that are distributed on a network. A content request from the content subscriber can engage a content locator in determining an appropriate content publisher to activate the content. Once the appropriate content publisher is found, the content publisher activates the content by presenting appropriate content publishing resources. Optionally, two more content publishers cooperate together to activate the requested content. Licenses to the content and content publishing resources are monitored to ensure that content publishers are compensated. System components, such as content subscribers, content locators, content publishers, are auto-configured during initial registration and dynamically updated if configuration parameters change. Optionally, a performance driver changes various configuration parameters of system components to ensure a desired performance during content activation.
    Type: Application
    Filed: November 23, 2005
    Publication date: July 27, 2006
    Applicant: Sun Microsystems, Inc.
    Inventors: Jonathan Salas, Edwin Lau, Prashant Navare, Sanjeev Radhakrishnan
  • Patent number: 7082597
    Abstract: Improved techniques for representation of objects in a Java™ programming environment are disclosed. The techniques are highly suitable for representation of Java™ objects inside virtual machines, especially those that operate with limited resources (e.g., embedded systems). In accordance with one embodiment, a Java™ object representation is disclosed. As will be appreciated, the Java™ object representation provides a reference that can be used to directly access the internal class representation associated with the object. The internal class representation provides information regarding the Java™ object (e.g., object size, object type, static fields, etc.) As a result, information regarding Java™ objects can quickly be accessed. This means that the processing time conventionally needed to access information regarding Java™ objects is reduced. Thus, performance of virtual machines, especially in systems with limited computing power and/or memory, can be enhanced.
    Type: Grant
    Filed: June 20, 2001
    Date of Patent: July 25, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Stepan Sokolov, David Wallman
  • Patent number: 7082614
    Abstract: The present invention relates to a system which allows third-party smart cards to be recognized by computing devices configured to receive smart cards. According to one or more embodiments of the present invention, a smart card is presented to a computing device. One or more token IDs are extracted from the smart card. Thereafter, a token type is obtained. In one embodiment, a probe order file is consulted first when the smart card is presented to the computing device. The probe order file is configured to direct a computing device to consult the correct configuration files in the correct order. Using the probe order file, the device inspects each configuration file specified in order. The probing is halted after a configuration file successfully returns a usable identification and card type. If the probing goes through every configuration file and there is no match then the smart card cannot be utilized.
    Type: Grant
    Filed: March 8, 2001
    Date of Patent: July 25, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Michael S. Bender
  • Patent number: 7082560
    Abstract: An apparatus and method of scanning a dual edge-triggered flip-flop with scan capability includes a first scan slave element capable of capturing data on a positive edge of a clock signal; and a second scan slave element capable of capturing data on a negative edge of the clock signal. An apparatus and method of scanning a dual edge-triggered flip-flop with scan capability includes a scan slave element capable of capturing data on either a positive edge or a negative edge of a clock signal; wherein a control signal determines whether the scan slave element captures data on the positive edge or negative edge of the clock signal.
    Type: Grant
    Filed: May 23, 2003
    Date of Patent: July 25, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Ishwardutt Parulkar, Ha M. Pham
  • Patent number: 7082449
    Abstract: A method and apparatus for generating pseudo-random numbers. The method includes defining a first set of R bits and defining a second set of S bits different from the first set of R bits. The method also includes updating the second set of S bits using a predetermined process that operates on the first set of R bits and the second set of S bits to form an updated set of S bits. The method also includes updating the first set of R bits using another predetermined process. The apparatus may include a linear feedback shift register and a second register. The linear feedback shift register is configured to store R bits. The second register is configured to store S bits. Each bit of the S bits is updated using a function that operates on one or more of the R bits from the linear feedback shift register and one or more of the S bits.
    Type: Grant
    Filed: May 3, 2002
    Date of Patent: July 25, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Leonard D. Rarick
  • Patent number: 7082432
    Abstract: A system and method for specifying a transaction manager type at various levels in an application. A system may implement several application components in which each application component may use a different transaction manager type. A transaction manager type may be specified at a module or component level for each of the application components. The transaction manager type may also be specified at an instance wide level.
    Type: Grant
    Filed: April 24, 2003
    Date of Patent: July 25, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Sankara R. Bhogi, Ajay Kumar, Bala Dutt, Venugopal Rao K, Srinivasan Kannan
  • Patent number: 7080989
    Abstract: An assembly for a computer system is mountable on a circuit board of a computer system. The assembly includes a base portion for engaging with an electronic component mounted on the circuit board. The assembly also includes a spring formed of memory metal. The spring is operable to urge the base portion against the electronic component to urge the electronic component towards the circuit board. The spring is configured to provide a greater spring force for urging the base portion against the electronic component when the spring is above a predetermined temperature than when it is below said predetermined temperature.
    Type: Grant
    Filed: June 10, 2004
    Date of Patent: July 25, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: William George Gates
  • Publication number: 20060161760
    Abstract: The present invention provides a method and apparatus for increased efficiency for translation lookaside buffers by collapsing redundant translation table entries into a single translation table entry (TTE). In the present invention, each thread of a multithreaded processor is provided with multiple context registers. Each of these context registers is compared independently to the context of the TTE. If any of the contexts match (and the other match conditions are satisfied), then the translation is allowed to proceed. Two applications attempting to share one page but that still keep separate pages can then employ three total contexts. One context is for one application's private use; one of the contexts is for the other application's private use; and a third context is for the shared page. In one embodiment of the invention, two contexts are implemented per thread. However, the teachings of the present invention can be extended to a higher number of contexts per thread.
    Type: Application
    Filed: December 30, 2004
    Publication date: July 20, 2006
    Applicant: Sun Microsystems, Inc.
    Inventors: Paul Jordan, William Kucharski, Roman Zajcew, Ashley Saulsbury, Quinn Jacobson
  • Publication number: 20060161685
    Abstract: In a wireless portal system having a wireless server, a client aware Extensible Markup Language (XML) content integration and transformation method and system. The client aware XML content integration and transformation system includes logic for identifying wireless client devices connecting to the wireless server by using particular characteristics of the client in presenting XML content formatted in response to connection requests from the client to the server. In one embodiment of the present invention, the client aware XML content transformation system receives an indication of a client type and uses this information to automatically search for XML content from a plurality of back-end resource servers on the Internet and transforms the content into a format suitable for delivery to the client.
    Type: Application
    Filed: March 20, 2006
    Publication date: July 20, 2006
    Applicant: Sun Microsystems, Inc.
    Inventors: Amlan Chatterjee, Divya Jain, Thomas Mueller, Luu Tran
  • Patent number: 7080231
    Abstract: A processor includes a tagging buffer for storing information that advises the processor of potential memory collisions caused by program instruction pairs that refer to the same memory address. In one method for avoiding memory collisions, a program having tagging code identifying program instruction pairs of the program that refer to a same memory address is compiled. The program instruction pairs in the compiled program code are processed while verifying an order in which the program instruction pairs are to be executed using the compiled tagging code, which is loaded into a tagging buffer. In another method, a program that does not include tagging code is compiled. When a trap occurs in the processing of a program instruction pair, program counters that cause the instructions to be executed in a desired order are added to a tagging buffer. A computer system including the processor also is described.
    Type: Grant
    Filed: October 18, 2002
    Date of Patent: July 18, 2006
    Assignee: Sun Microsystems, Inc.
    Inventor: Jan Civlin
  • Patent number: 7080234
    Abstract: According to the invention, a processing core (12) comprising a processing pipeline (100) having N-number of processing paths (56), each of which process instructions (54) on M-bit data words. In addition, the processing core (12) includes one or more register files (60), each preferably having Q-number of registers which are M-bits wide. Preferably, one of the Q-number of registers in at least one of the register files (60) is a program counter register dedicated to hold a program counter, and one of the Q-number of registers in at least one of the register files is a zero register dedicated to hold a zero value. In this manner, program jumps can be executed by adding values to the program counter in the program counter register, and memory address values can be calculated by adding values to the program counter stored in the program counter register or to the zero value stored in the zero register.
    Type: Grant
    Filed: March 8, 2001
    Date of Patent: July 18, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Ashley Saulsbury, Nyles Nettleton, Michael Parkin, David R. Emberson