Patents Assigned to Sun Microsystems
  • Patent number: 6907608
    Abstract: A small footprint device can securely run multiple programs from unrelated vendors by the inclusion of a context barrier isolating the execution of the programs. The context barrier performs security checks to see that principal and object are within the same namespace or memory space or to see that a requested action is authorized for an object to be operated upon. Each program or set of programs runs in a separate context. Access from one program to another program across the context barrier can be achieved under controlled circumstances by using a global data structure.
    Type: Grant
    Filed: January 22, 1999
    Date of Patent: June 14, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Joshua Susser, Mitchel B. Butler, Andy Streich
  • Patent number: 6907484
    Abstract: One embodiment of the present invention provides a system that facilitates atomically updating selected bits within a register in a computing system. During operation, the system receives a command to update selected bits within the register. This command includes a data word and a control bit pattern. Next, the system examines the control bit pattern to determine an operation to be performed on the register. The system then performs the operation, which involves using the dataword to modify a content of the register atomically, without blocking subsequent commands to update the register.
    Type: Grant
    Filed: September 24, 2002
    Date of Patent: June 14, 2005
    Assignee: Sun Microsystems, Inc
    Inventor: Thomas J. Dwyer, III
  • Patent number: 6907423
    Abstract: A method for controlling access provided to content files during an information search initiated by a client device and performed by a search engine. The method includes receiving a search request from the client. A modified search request is generated by applying a search profile for the user of the client device to the received search request. The modified search request is then routed to the search engine to apply search criteria in the modified search request to search engine collections populated from the content files. The user's search profile includes restrictions defining which of the search engine collections can be searched and how such collections can be searched. The search profile may be generated at the time the search request is received based on login information for the user of the client and based on stored user profile or account information.
    Type: Grant
    Filed: January 4, 2001
    Date of Patent: June 14, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Frank L. Weil, Chadwick K. Boggs
  • Patent number: 6904544
    Abstract: Provided is a method, system, program, and data structures for maintaining a database of objects. At least one structured document is received representing an instance of an object including attributes and attribute values defined for a class. Content of the structured document representing the object is added into a database, wherein the database is capable of storing multiple structured documents representing multiple objects. In another implementation, an instance of at least one object including attributes and attribute values defined for a class is generated. For each generated object, a structured document is generated representing the object and including a representation of the attributes and attribute values in the object. Each structured document is transferred to a database program to maintain.
    Type: Grant
    Filed: January 30, 2001
    Date of Patent: June 7, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: William B. DeRolf, Gavin J. Kirton
  • Patent number: 6904547
    Abstract: One embodiment of the present invention provides a system that facilitates validation of data retrieved from a secondary storage device. The system operates by receiving a write request to write new data to a block of the secondary storage device, and calculating a new checksum value from the new data. The system also retrieves a current checksum value and an old checksum value associated with the block of the secondary storage device. Next, the system performs a checksum write operation to a validation device to update the current checksum value and the old checksum value, and then performs a data write operation to the secondary storage device to write the new data to the block of the secondary storage device.
    Type: Grant
    Filed: January 4, 2002
    Date of Patent: June 7, 2005
    Assignee: Sun Microsystems, Inc
    Inventors: Robert S. Gittins, Richard S. Brown
  • Patent number: 6903926
    Abstract: An apparatus for mounting an accessory to a flat panel monitor is disclosed. The apparatus comprises an arm nestably mounted in an aperture in the flat panel monitor. The arm is extendable between a nested position and an extended position. The arm is also adapted to pivot in the extended position.
    Type: Grant
    Filed: March 11, 2002
    Date of Patent: June 7, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Kuni Masuda, Joe Miseli
  • Patent number: 6903940
    Abstract: The present invention is related to a Compact Peripheral Component Interconnect (cPCI) front panel assembly that is adapted to keep its corresponding cPCI front card's printed circuit board from bending. The cPCI front panel assembly should make its corresponding printed circuit board stronger to prevent circuit board damage and to maintain the cPCI front card envelope standard even before the card is inserted into the card slot. The front panel assembly should be stronger than its corresponding cPCI front card's circuit board. The front panel couples its stronger strength with its weaker circuit board. In addition, the front panel assembly prevents the bending of its corresponding circuit board at the upper, middle, and lower portions. The present invention provides the important advantage of protecting the cPCI front card even before the card is inserted into a card cage.
    Type: Grant
    Filed: September 27, 2002
    Date of Patent: June 7, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Peter Cuong Dac Ta
  • Patent number: 6904516
    Abstract: A mechanism is provided for execution of an instruction having one or more parameters that need to be resolved at runtime. Instructions being executed may be stored in non-rewritable storage. The present invention allows costly parameter resolution to be circumvented during subsequent executions of the same instruction. An interpreter invokes an optimization module when it encounters an instruction with one or more associated parameters that need to be resolved at runtime. If the optimization module determines that resolved values associated with the instruction are available in a cache, then optimization module obtains resolved values associated with the instruction from the cache. Resolving parameters into their corresponding object references is time-consuming and utilizes valuable computer resources. By obtaining resolved values stored during a previous execution of an instruction, the optimization module avoids repeatedly resolving parameters associated with an instruction.
    Type: Grant
    Filed: July 17, 2002
    Date of Patent: June 7, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Ioi K. Lam
  • Patent number: 6904477
    Abstract: A processor-based system (200) with a multipath I/O architecture, including a virtual host controller interface (vHCI) layer (280) between a common architecture layer (270) and a physical host controller interface layer (290), which may include convential host bus adapters (HBAs) coupled to target decives such as storage devices (240, 250) in a storage area network (SAN). Target drivers send I/O requests to a common architecture layer, which forwards them to the vHCI layer (280), which then sends them to HBAs for sending to the target devices (240, 250). A multipathing driver interface (MPXIO) layer (310) resides beneath the vHCI layer (280), and determines target device path information for the vHCI layer (280). Positioning the MPXIO layer (310) beneath the vHCI layer avoids the need for multipathing target drivers (360) above the common architecture layer.
    Type: Grant
    Filed: April 12, 2002
    Date of Patent: June 7, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Seetharaman Padmanabhan, Chitrank Seshadri, John H. Danielson
  • Publication number: 20050120352
    Abstract: A meta directory server which permits an administrator to specify extension points at potentially any point of a work flow, and associate a custom task with each extension point. The custom task is executed when the associated extension point is reached during execution. Due to such a feature, the administrator may customize a work to a desired extent. According to another aspect of the present invention, the custom tasks may be executed synchronously or asynchronously.
    Type: Application
    Filed: November 28, 2003
    Publication date: June 2, 2005
    Applicant: Sun Microsystems, Inc.
    Inventor: Subhashini Subramaniam
  • Patent number: 6900674
    Abstract: In an embodiment, present application describes a system and method to detect the alignment of multiple clocks in multi-clock domains system. In some variations, multiple clocks are derived from one or more reference clocks using various PLLs. The derived clocks maintain frequency relationship with the reference clock. In some variations, a relationship between the frequencies of various clocks is used to generate the alignment signals in the domain of one of the clocks.
    Type: Grant
    Filed: February 27, 2003
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Massimo Sutera, David A. Bunsey, Jr., Daniel Y. Cheung, Lan Lee, Kevin B. Normoyle, Sung-Hun Oh, Shi-Chin Ou-Yang, Ivana Capellano, Fabrizio Romano
  • Patent number: 6901495
    Abstract: A cache memory includes a plurality of memory chips, or other separately addressable memory sections, which are configured to collectively store a plurality of cache lines. Each cache line includes data and an associated cache tag. The cache tag may include an address tag which identifies the line as well as state information indicating the coherency state for the line. Each cache line is stored across the memory chips in a row formed by corresponding entries (i.e., entries accessed using the same index address). The plurality of cache lines is grouped into separate subsets based on index addresses, thereby forming several separate classes of cache lines. The cache tags associated with cache lines of different classes are stored in different memory chips. During operation, the cache controller may receive multiple snoop requests corresponding to, for example, transactions initiated by various processors.
    Type: Grant
    Filed: September 29, 2003
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Robert Cypher
  • Patent number: 6901586
    Abstract: A system and method are provided for thread-safe initialization of static variables in a multitasking system. In one embodiment, the static fields of a class may be “virtualized” such that each application that utilizes the class has its own copy of static fields. Each separate copy of the static fields is initialized only once. Instructions for performing the initialization may be embedded in a class constructor. The class constructor may be executed only once for each separate copy of the static fields. A template class may be loaded for each separate copy of the static fields when a copy of the static fields is sought to be initialized. The template class may include a static initializer for one of the separate copies of the static fields. The static initializer may be executed once for each separate copy of the static fields.
    Type: Grant
    Filed: November 6, 2000
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Grzegorz J. Czajkowski
  • Patent number: 6901591
    Abstract: Improved frameworks for implementing class files that are particularly useful in virtual machine based computing systems will be described. In one aspect of the invention, each method within a class file is associated with a corresponding “reference cell.” The reference cells typically include sufficient information to facilitate the invocation of the corresponding method. By way of example, each reference cell may include a class pointer field, a method name field, a signature field and potentially other fields. In another aspect of the invention, a process for loading class files into a virtual machine based computing system is described. Each method invocation within the class file is translated into an internal invocation that references a reference cell associated with the internal class representation that contains the method.
    Type: Grant
    Filed: October 31, 2000
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Stepan Sokolov
  • Patent number: 6901473
    Abstract: The present invention provides a method and apparatus for configuring an external device. The method comprises receiving configuration information, and providing at least a portion of the configuration information to the external device through a platform-independent interface. The apparatus comprises a storage unit adapted to store a platform-independent routine and a platform-independent interface, and a control unit adapted to execute the platform-independent routine, wherein the platform-independent routine causes the control unit to receive configuration information, and configure a Universal Serial Bus (USB) device through the platform-independent interface using at least the portion of the configuration information.
    Type: Grant
    Filed: October 16, 2001
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Paul K. Klissner
  • Patent number: 6901347
    Abstract: Improved reliability, availability and/or maintainability metrics have been developed that account for customer perceived factors such as frequency of outage, duration of outages, business impact of outages, etc. In various realizations and exploitations, such improved metrics may be utilized for managing and/or monitoring availability of enterprise information services or suites, availability of individual computers, devices or facilities, and/or availability of particular functionality or subsystems of any of the above. In one exploitation, personnel management decisions and/or compensation levels may be based on achieved values for such improved metrics. In other exploitations, contractual commitments and/or incentive fees related to an installed system or systems may be based on such improved metrics.
    Type: Grant
    Filed: February 22, 2000
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Paul S. Murray, Karen Learn
  • Patent number: 6901506
    Abstract: A non-maximal arrangement of component tiles is reconfigured into a maximal arrangement. For each identified active segment of a first span not having a matching active segment in a second span, a maximal component tile having a width generally equal to the width of the identified active segment of the first span and a height generally equal to the distance separating the first and second spans is generated. The first span is then modified by deleting the matching active segment of the first span while adding each unmatched active segment of the second span. Maximal space tiles are generated from inactive segments of the spans using a similar process. The process is then repeated for each unselected span which fails to match the modified first span.
    Type: Grant
    Filed: March 28, 2002
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Zhaoyun Xing
  • Patent number: 6901518
    Abstract: A system consistent with the present invention enables a program in a distributed system to determine whether downloaded code is trustworthy before using the downloaded code to communicate with other programs or services in the distributed system. A client that downloads proxy code from a service can verify that both the service and the downloaded code are trustworthy before using the code to communicate with the service. “Trustworthy” code is code the client knows will enforce the client's security constraints in communicating with the service, e.g., mutual authentication, confidentiality, and integrity.
    Type: Grant
    Filed: April 6, 2000
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Robert W. Scheifler, James H. Waldo, Peter C. Jones
  • Patent number: 6900668
    Abstract: A first sense amp circuit includes a pre-charge circuit, a keeper circuit, a select device and a driver device. The pre-charge circuit coupled to an input data line, the input data line being coupled to an input of a first inverter. The keeper circuit coupled in parallel with the first inverter. The select device coupled to a discharge path of the first inverter. The driver device coupled in parallel to an output data line of the first inverter.
    Type: Grant
    Filed: November 24, 2003
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems Inc.
    Inventors: Kenway W. Tam, Shree Kant
  • Patent number: 6901076
    Abstract: A network device dynamically switches between layer 2 (data link) operation and layer 3 (network) operation. When enabled, bridging logic functions as a data link bridge, receiving data link messages from communications links forming part of a single network-layer segment and forwarding the messages to another communications link using layer-2 addresses in the messages. When enabled, routing logic functions as a network router, receiving network layer messages from different network-layer segments and forwarding the messages to other links based on a routing algorithm and the network layer addresses. Selection logic dynamically selects the desired function under different operating conditions. For a transition from router to bridge, multiple network-layer segments are merged into a single bridged network-layer segment, freeing up link numbers for use in configuring addresses for other segments.
    Type: Grant
    Filed: November 30, 2000
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Radia J. Perlman, Eric A. Guttman