Patents Assigned to Sun Microsystems, Incorporated
  • Patent number: 6427166
    Abstract: An embodiment consistent with the present invention includes a method and apparatus for distributing multicast data. The method may be performed by a data processor and comprises the steps of forming a multicast repair tree including a sender, a plurality of heads, and a plurality of receivers, wherein at least one head is associated with the sender and at least one receiver is associated with the head; sending, by a sender to the plurality of heads and the plurality of receivers, a plurality of multicast messages at a data rate; receiving, by the sender from one of the plurality of heads, a congestion status associated with a receiver of the head; and slowing the data rate, by the sender, in accordance with the congestion status.
    Type: Grant
    Filed: September 22, 2000
    Date of Patent: July 30, 2002
    Assignee: Sun Microsystems, Incorporated
    Inventors: Stephen A. Hurst, Joseph Wesley, Stephen R. Hanna, Miriam C. Kadansky, Philip M. Rosenzweig
  • Patent number: 6349407
    Abstract: A method and apparatus for maintaining source control for successive versions of software where modifications are made to an initial version that are not included in the successive versions. When the initial version is received, it is modified and both the initial version and the modified initial version are placed under source control in the form of a source tree. When a new version of the software is received, the invention determines differences between the initial version and the new version and creates a record of differences between the initial version and the new version. The differences are integrated into a copy of the initial version and are then incorporated to the modified initial version, which is then incorporated to a modified initial version to yield a modified new version. In some embodiment of the present invention, the original source tree is retained in case modifications are again made to the initial version.
    Type: Grant
    Filed: December 29, 1995
    Date of Patent: February 19, 2002
    Assignee: Sun Microsystems, Incorporated
    Inventor: Mark M. Towfiq
  • Patent number: 6272517
    Abstract: A method and apparatus for allowing a first thread to “share” its remaining time quantum with a second thread when the first thread is blocked. A thread may be blocked, for example, if it is waiting for a resource such as a data file or a lock. A thread may also be blocked if it is waiting for an event, such as a user keystroke. If there is a thread on the run queue that “owns” the resource needed by the consumer thread, the blocked consumer thread transfers its right to execute for a remaining time quantum to the owner thread, and the owner thread executes next. If the threads are in a same process, this transfer means that no process context switch is required, since the consumer thread and the owner thread are threads of the same process. In addition, this transfer means that the time before the resource becomes available to the blocked consumer thread will be short.
    Type: Grant
    Filed: June 30, 1998
    Date of Patent: August 7, 2001
    Assignee: Sun Microsystems, Incorporated
    Inventors: Kelvin K. Yue, Daniel A. Stein, Michael A. Sebrée
  • Patent number: 6272522
    Abstract: A data packet switching and server load balancing device is provided by a general-purpose multiprocessor computer system. The general-purpose multiprocessor computer system comprises a plurality of symmetrical processors coupled together by a common data bus, a main memory shared by the processors, and a plurality of network interfaces each adapted to be coupled to respective external networks for receiving and sending data packets via a particular communication protocol, such as Transmission Control Protocol/Internet Protocol (TCP/IP). A first one of the processors is adapted to serve as a control processor and remaining ones of the processors are adapted to serve as data packet switching processors. The data packet switching processors are each coupled to at least one of the plurality of network interfaces. The control processor receives raw load status data from the external networks and generates load distribution configuration data therefrom.
    Type: Grant
    Filed: November 17, 1998
    Date of Patent: August 7, 2001
    Assignee: Sun Microsystems, Incorporated
    Inventors: Cher-Wen Lin, Kumar Ramaswamy, Mizanur Mohammed Rahman, Randall David Rettberg, Robert Arthur Doolittle
  • Patent number: 6272136
    Abstract: A data packet switching system comprises a plurality of network interfaces each adapted to be coupled to respective external networks for receiving and sending data packets to and from the external networks via a particular communication protocol. The data packet switching system further includes a plurality of symmetrical processors, including a first processor providing a control processor and remaining ones of said processors each providing data packet switching processors. The control processor is coupled to a corresponding one of the plurality of network interfaces and the data packet switching processors are coupled to each remaining one of the plurality of network interfaces. A switch is coupled to the control processor through the corresponding one of the network interfaces and is coupled to at least one of the switching processors through at least one other one of the network interfaces.
    Type: Grant
    Filed: November 16, 1998
    Date of Patent: August 7, 2001
    Assignee: Sun Microsystems, Incorporated
    Inventors: Cher-Wen Lin, Kumar Ramaswamy, Mizanur Mohammed Rahman, Randall David Rettberg
  • Patent number: 6240440
    Abstract: A method and apparatus that implement a new class of objects: the virtual thread. A virtual thread can execute on the same computer as the application program that creates it or can execute a virtual runnable object on a different computer that is coupled to the computer executing the application program. A virtual thread acts just like a conventional thread and an application program generally accesses a virtual thread in the same way as it does a conventional thread. In a preferred embodiment of the present invention, a Virtual Thread Server object (VTS) maintains a list of available computing resources in a computing system. These resources represent the available computing resources of the system that have registered themselves as having spare computer resources.
    Type: Grant
    Filed: June 30, 1997
    Date of Patent: May 29, 2001
    Assignee: Sun Microsystems Incorporated
    Inventor: Jeffrey M. Kutcher
  • Patent number: 6185698
    Abstract: An embodiment consistent with the present invention includes a method and apparatus for forming a multicast repair tree. The method may be performed by a data processor and comprises the steps of determining, for each of a plurality of potential heads in a multicast group, a ranking value associated with the potential head; advertising, by the potential heads to a plurality of potential receivers; prioritizing, by a potential receiver, the ranking values from the potential heads; and binding, by a potential receiver to the head having the highest ranking value, thereby forming a group of which the potential receiver is a member and the potential head is the head. The head may also be the sender. There may be a plurality of heads. The ranking values may include “able”, “unable”, “willing”, and “reluctant.” The ranking value of a potential head may be determined in accordance with a static or a dynamic configuration.
    Type: Grant
    Filed: April 20, 1998
    Date of Patent: February 6, 2001
    Assignee: Sun Microsystems, Incorporated
    Inventors: Joseph Wesley, Stephen A. Hurst, Miriam C. Kadansky, Stephen R. Hanna, Philip M. Rosenzweig, Dah Ming Chiu, Radia J. Perlman
  • Patent number: 6144999
    Abstract: A file disaster recovery system that employs geographical replication of data from a local site to remote site in a such a manner that file requests from clients of the local site can be handled by a file server on the remote site following a failover from the local site to the remote site. Geographical data replication software running on a local server checkpoints to a log in local stable storage all information on file operations that change the file state of the local file system. According to a selected mode, the local geographical data replication software flushes information in the log pertaining to the file operations since the last flush to the remote site. At the remote site, compatible remote geographical data replication software running on a remote file server receives the flushed log and replicates in sequence order the file operations represented in the flushed log. The results of the operations are stored on remote stable storage. The local and remote servers can be clusters or single servers.
    Type: Grant
    Filed: May 29, 1998
    Date of Patent: November 7, 2000
    Assignee: Sun Microsystems, Incorporated
    Inventors: Yousef A. Khalidi, Madhusudhan Talluri, David Dion, Anil Swaroop
  • Patent number: 6122745
    Abstract: A method and apparatus for performing power management in a Java operating system environment is disclosed in which a state change request having a value and a type is received, wherein the value is associated with a power management state, and the type is one of a system or a device. The type of the state change request is determined and the request is processed in accordance with the state change request type. The power management state is changed in accordance with the processed request.
    Type: Grant
    Filed: December 31, 1998
    Date of Patent: September 19, 2000
    Assignee: Sun Microsystems Incorporated
    Inventor: Becky H. Wong-Insley
  • Patent number: 5987123
    Abstract: A method and apparatus that allows a computer system to trust both program and data files without the intervention of the user and without the possibility of circumventing the model of trust. A file system incorporates two levels of validation for programs and data. A first level of validation specifies sources that the user has decided are trustworthy or untrustworthy. A second level of validation specifies sources that the system itself considers trustworthy or untrustworthy. For data to be acceptable, it must be acceptable to both levels of checking. In addition, both the user and the system can specify multiple acceptable signatures and further allows various ones of the multiple signatures to have different levels of access to the system.
    Type: Grant
    Filed: July 3, 1996
    Date of Patent: November 16, 1999
    Assignee: Sun Microsystems, Incorporated
    Inventors: Glenn C. Scott, Benjamin J. Stoltz
  • Patent number: 5982834
    Abstract: A clock recovery system that allows recovery of a clock signal from a high speed, potentially small amplitude data stream. The invention uses a normally avoided property of a non-linear oscillator in the clock recovery system in order to lock the oscillator in phase to an incoming signal. This property relates a characteristic of an oscillator that an oscillator amplifies noise near its inherent frequency; and if the noise is large enough, the oscillator squelches the inherent oscillator frequency signal and outputs a signal locked in frequency and phase to the noise. The clock recovery system comprises a processing circuit, an oscillator, and a control circuit. The processing circuit processes an input data stream to generate a current signal as a first control signal based on data transitions in the input data stream. The first control signal is a "noise signal" to the oscillator.
    Type: Grant
    Filed: May 9, 1997
    Date of Patent: November 9, 1999
    Assignee: Sun Microsystems, Incorporated
    Inventors: Robert J. Drost, Robert J. Bosnyak
  • Patent number: 5928355
    Abstract: The present invention solves the problems associated with the prior art by decoupling the issuing of instructions from their dispatch into their respective pipeline. This permits the determination of whether a particular instruction can safely be issued from an instruction queue to the next stage of the pipeline by providing such information at a point early in the machine cycle.
    Type: Grant
    Filed: June 27, 1997
    Date of Patent: July 27, 1999
    Assignee: Sun Microsystems Incorporated
    Inventor: Joseph Anthony Petolino, Jr.
  • Patent number: 5903756
    Abstract: A description language and a parser generator for top-down parsers allows grammars for top-down parsers to be defined using a sequence of productions written as extended BNF expressions. For productions that are ambiguous, a lookahead construct in the grammar allows the programmer to specify an increased number of lookahead tokens. The lookahead construct can be specified on an expansion-by-expansion basis. As a result, the generated parser only maintains an increased number of lookahead tokens when required to process ambiguous productions.
    Type: Grant
    Filed: October 11, 1996
    Date of Patent: May 11, 1999
    Assignee: Sun Microsystems, Incorporated
    Inventor: Sriram Sankar