Patents Assigned to Sun Microsystems
  • Patent number: 6434577
    Abstract: A computer system's garbage collector employs remembered sets to keep track of references into car sections of a memory-space generation that it manages in accordance with the train algorithm. As it adds entries to a given remembered set, the collector initially employs entries that specify such reference locations with a relatively fine granularity. When the memory initially allocated to the remembered set becomes too full, the collector determines whether re-stating the remembered set with a coarser granularity will reduce the number of entries significantly. If so, it restates the remembered set with the coarser granularity. Otherwise, it allocates more space to the remembered set.
    Type: Grant
    Filed: August 19, 1999
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventor: Alexander T. Garthwaite
  • Patent number: 6430943
    Abstract: Improved methods for the controlled generation of ammonia from an ammoniated metal salt at substantially ambient temperature by applying microwave energy to the salt. The ammoniated salts have the formula MAn·(NH3), wherein M is at least one metal selected from the group consisting of alkali metals, alkaline earth metals, scandium, ytterbium, the lanthanides, titanium, zirconium, hafnium, vanadium, niobium, tantalum, chromium, molybdenum, tungsten, manganese, technetium, rhenium, iron, ruthenium, osmium, cobalt, rhodium, iridium, nickel, palladium, platinum, copper, silver, gold, zinc, cadmium, mercury, tin, and aluminum; A is at least one ion selected from the group consisting Cl−, Br−, F−, I−, ClO3−, ClO4−, BF4−, AlCl4−, PF6−, SbCl6−, and SbF6−; and SbF6− n is from 1 to 6; and X is from 1 to 8.
    Type: Grant
    Filed: June 12, 2001
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Dennis M. Pfister, Charles M. Byrd
  • Patent number: 6434529
    Abstract: A system and method for referencing object instances of an application program, and invoking methods on those object instances from within a recognition grammar. A mapping is maintained between at least one string formed using characters in the character set of the recognition grammar and instances of objects in the application program. During operation of the disclosed system, when either the application program or script within a recognition grammar creates an application object instance, a reference to the object instance is added to the mapping table, together with an associated unique string. The unique string may then be used within scripting language in tags of the rule grammar, in order to refer to the object instance that has been “registered” by the application program in this way. A tags parser program may be used to interpret such object instance names while interpreting the scripting language contained in tags included in a recognition result object.
    Type: Grant
    Filed: February 16, 2000
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: William D. Walker, Andrew J. Hunt, Stuart J. Adams
  • Patent number: 6433603
    Abstract: An integrated circuit device for synchronization of data in a data path includes a driver and a storage element coupled to the driver for driving the storage element. The storage element is coupled to the data path outside the data path. The integrated circuit employs a method of operation including passing a time pulse, sampling data during the time pulse, passing the data to a computation logic along a data path, and storing the sampled data in a storage element connected to but outside the data path.
    Type: Grant
    Filed: August 14, 2000
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Gajendra P. Singh, Joseph I. Chamdani
  • Patent number: 6434694
    Abstract: A computer-implemented method for allocating securely memory resources to a platform-independent device driver is described. In one embodiment, a device driver generates a request for memory allocation in terms of an abstract memory address space. The driver forwards the request to the bus manager. An inner class representation of the bus manager is generated and the identity of the driver is determined. The inner class representation handles the request from the device driver using the same procedures as the bus manager, and appears to the driver as the bus manager itself. Thus, a memory request from a platform-independent device driver can be made in a secure manner.
    Type: Grant
    Filed: June 29, 1998
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Gregory L. Slaughter, Thomas Saulpaugh, Bernard Traversat, Jeffrey A. Schmidt
  • Patent number: 6434714
    Abstract: Method, systems and articles of manufacture consistent with the present invention collects and displays performance data associated with executed programs. A system consistent with an implementation of the present invention collects performance analysis information from various hardware and software components of an instrumented program, and displays the performance data in a multi-dimensional format.
    Type: Grant
    Filed: February 4, 1999
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Bradley Lewis, Jeremy Week, Michael Boucher, Shaun Dennie
  • Patent number: 6434743
    Abstract: Methods and apparatus for allocating and using stack space are disclosed. According to one aspect of the present invention, a computer-implemented method for allocating stack space in an object-based system includes obtaining source code that is suitable for compilation and includes a definition associated with a variable. During register allocation, stack slots and machine registers are treated substantially similarly. This includes the steps of building an interference graph, copy coalescing, attempting to color the interference graph, and determining if the attempt to color the interference graph is successful. If the coloring attempt is not successful, then in lieu of normal spill code being inserted, register-to-register copies, e.g., “reg-reg” copies, are inserted in the source code. The “reg-reg” copies include copies associated with both stack slots and machine registers.
    Type: Grant
    Filed: April 23, 1999
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Clifford N. Click, Jr., Christopher A. Vick, Michael H. Paleczny
  • Patent number: 6434576
    Abstract: A garbage collector that employs the train algorithm identifies popular objects by a count of references to them and places such objects into special, single-object car sections that are normally smaller than the car sections employed for objects that are less popular. When such cars are part of the collection set and evacuated, the evacuation occurs by relinking, without relocating the objects and memory. References to such popular objects therefore do not need to be updated as a result of evacuation. A limit is imposed on the number of entries in the remembered sets used to keep track of references to objects and such popular-object car sections, and any popular-object car section whose remembered set has more than a threshold number of entries is treated as reachable and still popular without having the memory regions that those entries identify searched for valid references.
    Type: Grant
    Filed: August 19, 1999
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventor: Alexander T. Garthwaite
  • Patent number: 6433800
    Abstract: Apparatus, and an associated method, provides iconic representations of actions available to be performed upon an object of a particular datatype. The iconic representations are displayed, for instance, as part of a toolbar on a computer display. A representation of an object upon which an action is to be performed is dragged-and-dropped upon the iconic representation of the selected action to invoke that action upon both the dropped object and the object of a particular datatype.
    Type: Grant
    Filed: August 31, 1998
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventor: Brian Holtz
  • Patent number: 6434651
    Abstract: A network interface is polled by a process operating on a host computer system. Each time the network interface is polled, the process determines whether any packets have been received. If so, they are processed. Interrupts that would normally be issued by the network interface in response to the transfer of packets to the host system are suppressed or postponed during the polling mode of operation. If, however, a predetermined period of time has elapsed or a predetermined number of packets have been received since a previous poll or a previous interrupt, then an interrupt may be generated. The rate at which interrupts may be issued is modulated to decrease the interrupt-processing burden placed on the processor. A time counter may be used to track the passage of time and a packet counter may be used to track the number of packets transferred by the network interface.
    Type: Grant
    Filed: March 1, 1999
    Date of Patent: August 13, 2002
    Assignee: Sun Microsystems, Inc.
    Inventor: Denton E. Gentry, Jr.
  • Publication number: 20020107996
    Abstract: Apparatus, and computer program products are disclosed for constructing dispatch tables. In one embodiment of the present invention, the decision to allocate a new dispatch table entry is sensitive to the accessibility of a class. A dispatch table and dispatch table construction process is described in which the entries for a Vtable are determined such that conflicts between accessibility and class hierarchy are avoided. In particular, a dispatch table and dispatch table construction process is described which takes a method's accessibility and package status into consideration in determining the proper overriding semantics and table building techniques. The dispatch table may have more than one distinct entry for a method.
    Type: Application
    Filed: March 19, 2002
    Publication date: August 8, 2002
    Applicant: Sun Microsystems, Inc.
    Inventors: Gilad Bracha, Deepa Viswanathan
  • Publication number: 20020107711
    Abstract: A method for finding shortest paths is disclosed which uses a piecewise linear cost model to guide the search of through a compact tile graph and to ensure that a shortest path may always be found in a computationally effective manner. Cost function propagation from tile segment to tile segment is used to search for a target location from a source location through a region, and the shortest path is found through tracing backwards using the cost functions calculated during the searching. Linear minimal convolution is used to facilitate the cost function propagation.
    Type: Application
    Filed: November 30, 2001
    Publication date: August 8, 2002
    Applicant: Sun Microsystems, Inc.
    Inventors: Zhaoyun Xing, Russell Kao
  • Publication number: 20020107997
    Abstract: Techniques for transmission of message fragments between Object Request Brokers operating in distributed object oriented environments. The techniques provide an elegant mechanism for fragmentation of messages into sub-messages. In one embodiment, a fragment-offset is provided as a means for determining the location of data bytes in sub-messages with respect to the original message that has been fragmented. During the construction and transmission of sub-messages, the fragment-offset can be updated to indicate the current offset with respect to the original message. Accordingly, in contrast to conventional techniques, a significant amount of computations or bookkeeping to track of several other variables (e.g., number of fragments constructed, total number of bytes constructed, etc.) are not required. As will appreciated, the headers of the sub-messages need not be of the same size. Similarly, the data portions of the sub-messages can vary in size.
    Type: Application
    Filed: February 5, 2001
    Publication date: August 8, 2002
    Applicant: Sun Microsystems, Inc.
    Inventors: Edward E. Anderson, Masood S. Mortazavi
  • Patent number: 6430599
    Abstract: A lightweight containment framework supporting shareable program modules. The containment framework is sufficiently compact and efficient to run on a wide variety of resource-constrained, small footprint devices, such as personal data assistants (PDAs), smart cellular phones, global positioning system (GPS) receivers, etc. The containment framework provides module management services such as module registration, lookup, instance tracking, etc. The basic functionality provided by the framework may be extended by adding system modules into the framework. The shareable program modules may implement services. Modules may be both service providers and clients of other service modules. The lightweight and efficient nature of the system enables application programs traditionally associated with desktop computer systems, such as web browsers, email clients, etc., to run on small footprint devices.
    Type: Grant
    Filed: June 15, 1999
    Date of Patent: August 6, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Mark Baker, Josh Duggan
  • Patent number: 6429867
    Abstract: A system and method for generating and playing back three-dimensional (3D) movies are disclosed. The system is capable of partially rendering frames without relying upon exact viewpoint information. The partially rendered frames may be rendered to the extent possible without performing viewpoint-dependent processes, and then compressed and stored to a carrier medium. To reduce the amount of data to be stored, the viewer's possible viewpoints may be restricted (e.g., by defining a viewpoint-limiting volume or region). The resulting partially-rendered geometry data may be compressed using geometry compression. During playback, the compressed frames are read as a stream, and decompressed. Any final viewpoint-dependent rendering operations may then be performed (e.g., some lighting calculations and atmospheric effects, some fogging, specular highlighting, and reflections). A sensor such as a head-tracker may provide real-time viewpoint information that may be used by the playback system.
    Type: Grant
    Filed: March 15, 1999
    Date of Patent: August 6, 2002
    Assignee: Sun Microsystems, Inc.
    Inventor: Michael F. Deering
  • Patent number: 6430556
    Abstract: A query object generator tool which generates interface definitions and code that implement a query object also generates a graphic user interface (GUI) for controlling the generator tool and plug-in objects, including a database schema access query object and test objects for allowing the GUI to operate with vendor-specific databases. The GUI is “customized” by the various plug-in objects. For example, the database schema access query object is designed specifically for a particular underlying database and retrieves “metadata” concerning the database schema. The retrieved metadata is then displayed as part of the graphic user interface to assist the user in constructing a query object. Test objects are also generated by the GUI in response to a user request. The test objects contain information that characterizes the query object for testing purposes. The information in the test objects is used with a test framework to install and initialize the query object.
    Type: Grant
    Filed: November 1, 1999
    Date of Patent: August 6, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Robert N. Goldberg, Gloria Y. Lam
  • Patent number: 6430578
    Abstract: A method for determining, storing, and managing names for agents and entities installed on a computer network is described. In one embodiment, a method is provided for providing a name service configured to provide unique identifiers and addresses for processes on a computer network. The name service includes a database of identifiers and addresses for the processes. A query is made to the name service that searches the database and the name service returns the answer.
    Type: Grant
    Filed: December 4, 1998
    Date of Patent: August 6, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Tony Vuong, Subodh Bapat, Rajeev Angal
  • Patent number: 6430703
    Abstract: In an object oriented software environment, a system and method is disclosed that addresses both state recovery and relationship recovery in the event of a system halt. The system is suited to enterprise-class distributed systems with extensive object relationships. Each essential object is saved in persistent storage. Essential values within each object are updated in storage according to a method within each object. After a partial or total halt of the system, the state of the software is reconstructed in a two phase process. In the first phase, the essential objects are restored from persistent storage, along with essential values. In the second phase, a method uniquely implemented by each object will reconstruct non-essential objects and variables. The second phase is ideally tailored to allow the system to be reconstructed even when the underlying hardware or software has been altered.
    Type: Grant
    Filed: August 7, 2001
    Date of Patent: August 6, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: William Hayden Connor, Bruce Kenneth Haddon
  • Patent number: 6428360
    Abstract: A memory module with offset notches for improved insertion and a memory module connector for mating thereto. The connector housing includes an accommodating space for receiving a portion of the memory module printed circuit board (PCB). A first key is disposed within the accommodating space of the housing and is positioned between the first end and the center of the housing. A second key is further disposed within the accommodating space and is positioned between the second end of the housing and the center. A distance between the first key and the second key is greater than 40% of the length of the housing. Either the first, second, or both keys may extend from the accommodating space beyond a top plane defined by a top side of the accommodating space of the housing. The memory module comprises the PCB with a first notch positioned between the first end of the PCB and the center of the PCB. A second notch is positioned between the second end of the PCB and the center of the PCB.
    Type: Grant
    Filed: January 4, 2001
    Date of Patent: August 6, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Ali Hassanzadeh, Victor Odisho
  • Patent number: 6430649
    Abstract: One embodiment of the present invention provides a system that enforces dependencies between memory references within a load store unit (LSU) in a processor. When a write request is received in the load store unit, the write request is loaded into a store buffer in the LSU. The write request may include a “watch address” specifying that a subsequent load from the watch address cannot occur before the write request completes. Note that the watch address is not necessarily the same as the destination address of the write operation. When a read request is received in the load store unit, the read request is loaded into a load buffer of the LSU. The system determines if the read request is directed to the same address as a matching watch address in the store buffer. If so, the system waits for the write request associated with the matching watch address to complete before completing the read request.
    Type: Grant
    Filed: June 7, 1999
    Date of Patent: August 6, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Shailender Chaudhry, Marc Tremblay, James M. O'Connor