Abstract: Signed objects and sealed objects can be generated using embodiments of the invention. A signed object is an object that has an associated digital signature that can be used to authenticate the object. A sealed object is an object that is encrypted to limit access to only authorized entities. A signedObject class is used to create, maintain and authenticate a signed object. A sealed object is created, maintained, and authenticated using a sealedObject class. Nesting can be used to provide multiple levels of signing and/or sealing.
Abstract: A copying-type garbage collector operates in multiple concurrent threads. Each thread evacuates potentially reachable objects from the from space to the to space in a depth-first manner: if a thread has evacuated an object containing references to any from-space objects, it evacuates all of that object's descendants before it evacuates any other reachable objects. To keep track of descendants that must be evacuated before non-descendants can be, the thread places objects containing references to non-evacuated objects into a linked list maintained by pointers that it installs in the from-space locations from which the objects on the list were evacuated. Additionally, it divides the to space into local-allocation buffers (“LABs”) to which respective threads exclusively evacuate objects, and each thread maintains a LAB stack representing all the LABs it has filled that still contain references to unevacuated from-space objects.
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 shared interface objects. Shared interface objects have a property that permits them to be accessed across the context barrier regardless of security restrictions that would otherwise apply. Shared interface objects, however, may enforce their own security rules independently of the context barrier.
Type:
Grant
Filed:
January 22, 1999
Date of Patent:
August 15, 2006
Assignee:
Sun Microsystems, Inc.
Inventors:
Joshua Susser, Mitchel B. Butler, Andy Streich
Abstract: A method of determining an optimal transistor fanout. The method includes creating a sizing model by replacing at least one logic element in a circuit description with a sizing element that includes a dynamic resistor. The method also includes determining a steady state solution to the sizing model and determining at least one transistor fanout from the steady state solution.
Abstract: A method and apparatus are disclosed for testing the accuracy of digital test images generated by a computer graphics program executed on a computer graphics system. A test program is utilized to compare the test image with a reference image. The user defines regions of interest and a maximum error for each region. This allows the user to focus on a particular object or group of objects. Global image quantification verification generates one measurement of error or image difference for each region of the test image. Each region is divided into sub-regions and an average color value is calculated for each sub-region and the corresponding sub-region in the reference image. The differences between the averages for corresponding sub-regions in the test and reference images are calculated. A test image region may be unacceptably different from a reference image if a normalized sum of the absolute differences exceeds the maximum error.
Type:
Grant
Filed:
March 29, 2002
Date of Patent:
August 15, 2006
Assignee:
Sun Microsystems, Inc.
Inventors:
Shuangying Huang, Teh-Ming Hsieh, Tat Leung Chung, Lie-Hwang Hwang
Abstract: A method and apparatus are disclosed for testing the accuracy of digital test images generated by a computer graphics program executed on a computer graphics system. A test program is utilized to compare a test image with a reference image. Regional image quantification verification aims at an image comparison test that accepts minor color value differences and spatial shifts in rendered pixel values. The test image and reference image are divided into corresponding sub-regions. The average color value for each sub-region of the test image is compared to the average color value of the corresponding reference image sub-region and also to other nearby reference image sub-regions. A test image is unacceptably different from a reference image, if for any sub-region of the test image, no reference image sub-region is found with an average color value difference and spatial shift less than specified maximums.
Abstract: A distributed data system may include a plurality of nodes one or more of which may include at least one multi-threaded process operable to access portions of distributed data. A lock mechanism may grant locks to the multi-threaded processes for portions of the distributed data. Only a process holding a lock may access a portion corresponding to the lock. Threads of other processes may not access the portion. A process may include a lock management thread pool dedicated to managing locks for portions of the distributed data for access by other threads of the process. Each lock management thread of the lock management thread pool may request a lock for a portion of distributed data on behalf of the process. The process may hold one or more locks for portions of distributed data corresponding to one or more lock management threads of the lock management thread pool.
Abstract: A mechanism is provided for causing a transaction to fail at a predetermined transaction state. A transaction coordinator is instructed to process a transaction until the transaction has reached a predetermined transaction state. The transaction coordinator is caused to fail while the transaction is in the predetermined transaction state. Failure of the transaction at the predetermined transaction state is thereby effectuated.
Abstract: A method of identifying applications installed on a customer computer system by collecting signature information associated with installed binaries. The binaries are precisely identified by comparing the collected signature information to previously stored signatures. In a specific implementation the signatures comprise MD5 signatures.
Abstract: A technique is provided for reducing the number of write barriers executed in mutator code without compromising garbage collector performance. Advantageously, a compiler generates two forms of a mutator code—a first version with write barriers and a second version substantially without write barriers. In operation, the first version of the code may be accessed by a vtable in a “mature” near-class and the second version may be accessed by a vtable in a “nascent” near-class. According to the invention, mapping of functionally equivalent points in the first and second versions of the mutator code may be facilitated by an associated pcmap. Further, each of the first and second versions may also be associated with a respective nr_map that facilitates mapping functionally equivalent points within different branches of guard code sequences corresponding to reference-writes to non-receiver objects.
Type:
Grant
Filed:
June 18, 2003
Date of Patent:
August 8, 2006
Assignee:
Sun Microsystems, Inc.
Inventors:
Alexander T. Garthwaite, David L. Detlefs
Abstract: A method and apparatus for creating a modified dynamic flip-flop avoids the power waste created by prior art dynamic flip-flops by including a conditional pre-charge control circuit and method. When the modified dynamic flip-flop is in a holding mode, i.e., in the clock disable state, the modified dynamic flip-flop does not use power pre-charging and discharging the internal dynamic node every cycle.
Type:
Grant
Filed:
September 10, 2004
Date of Patent:
August 8, 2006
Assignee:
Sun Microsystems, Inc.
Inventors:
Bo Tang, Edgardo F. Klass, Geoffrey M. Pilling
Abstract: Use of a policy object for verification in a distributed system. A machine downloads a policy object containing a reference to code governing verification of data. The machine uses the reference to obtain the code and locally verify data or other information. As particular rules for the data change, the policy object may be updated to provide a reference to the code for the new rules when it is downloaded.
Type:
Grant
Filed:
May 10, 2002
Date of Patent:
August 8, 2006
Assignee:
Sun Microsystems, Inc.
Inventors:
Kenneth C. R. C. Arnold, Ann M. Wollrath, James H. Waldo
Abstract: One embodiment of the present invention provides a system that uses a block-partitioned technique to efficiently solve a system of linear equations. The system first receives a matrix that specifies the system of linear equations to be used in performing a time-based simulation. This matrix includes a static portion containing entries that remain fixed over multiple time steps in the time-based simulation, as well as a dynamic portion containing entries that change between time steps in the time-based simulation. Next, the system performs the time-based simulation, wherein performing the time-based simulation involves solving the system of linear equations for each time step in the time-based simulation. In solving the system of linear equations, the system factorizes the static portion of the matrix only once, and reuses the factorization of the static portion in performing an overall factorization of the matrix for each time step of the time-based simulation.
Abstract: One embodiment of the present invention provides a system that facilitates selectively unmarking load-marked cache lines during transactional program execution, wherein load-marked cache lines are monitored during transactional execution to detect interfering accesses from other threads. During operation, the system encounters a release instruction during transactional execution of a block of instructions. In response to the release instruction, the system modifies the state of cache lines, which are specially load-marked to indicate they can be released from monitoring, to account for the release instruction being encountered. In doing so, the system can potentially cause the specially load-marked cache lines to become unmarked. In a variation on this embodiment, upon encountering a commit-and-start-new-transaction instruction, the system modifies load-marked cache lines to account for the commit-and-start-new-transaction instruction being encountered.
Type:
Grant
Filed:
January 23, 2004
Date of Patent:
August 8, 2006
Assignee:
SUN Microsystems, Inc.
Inventors:
Marc Tremblay, Quinn A. Jacobson, Shailender Chaudhry, Mark S. Moir, Maurice P. Herlihy
Abstract: A modular parser architecture and methods related thereto make use of a number of miniparsers. Each miniparser is capable of receiving input and generating an output dependent thereon. In one embodiment, a lexer or a miniparser capable of lexical analysis receives certain code and provides an abstract syntax tree. Each miniparser performs operations on a set of syntactical constructs to produce a corresponding output syntax tree, which in turn may become an input syntax tree for a next miniparser which may operate on a different set of syntactical constructs.
Abstract: A method, apparatus, and system for providing a standard, generic contract between an application server and a message provider which allows the message provider to deliver messages to message endpoints (each of which is associated with a corresponding message application) residing in the application server is disclosed. By generic, it is meant that the contract is independent of the specific messaging style, messaging semantics and messaging infrastructure used to deliver messages. In this way, the contract also serves as the standard message provider pluggability contract that allows any message provider to be plugged into any application server via an associated resource adapter.
Type:
Grant
Filed:
March 25, 2002
Date of Patent:
August 8, 2006
Assignee:
Sun Microsystems, Inc.
Inventors:
Thulasiraman Jeyaraman, Mark William Hapner, William A. Shannon, Kenneth David Saks, Kathleen A. Stout, Rahul Sharma, Qingqing Ouyang
Abstract: A method and apparatus for providing a Web application framework is provided. The framework includes four main components which are used in combination to create Web servers of varying complexity depending on the needs of the end use. The framework includes a Server object, a Handler object, a Properties object, and a Request object. A Server object is created with an initial set of properties and calls a Hander object. The Handler object defines how URL requests are processed by the Web server. When a request appears at the server, the Request object obtains and formats the request for subsequent processing. The Handler object works with the Properties object to process the request. Multiple Handler objects may be chained together to create a Web application that can perform many operations without being restricted to traditional server designs.
Type:
Grant
Filed:
July 24, 2000
Date of Patent:
August 8, 2006
Assignee:
Sun Microsystems, Inc.
Inventors:
Stephen Uhler, Rinaldo DiGiorgio, Colin Stevens
Abstract: A computer system includes a scoreboard mechanism that provides a locking scheme to preserve data dependencies. An index is used to unlock (i.e., invalidate) scoreboard entries when a terminating event associated with that entry's instruction has occurred. For a load instruction, the terminating event that triggers invalidation for a particular scoreboard entry is the return of the load data. An index is used to identify the scoreboard entry associated with the returning load instruction, since load instructions may return load data out of order.
Abstract: A standard for security management in a client server computer system is disclosed. In one aspect, the present invention specifies a security contract between an application server and a resource adapter, supporting access to an enterprise information system by passing a connection request from the resource adapter to the application server, propagating a a security context from the application server to the resource adapter. The security contract includes a subject class representing a grouping of related information for a single entity, and security-related attributes of the subject class.
Abstract: The propagation of a feedback signal, such as a DQS signal generated in response to a read request in a Double Data Rate (DDR) memory system, into a digital host system, such as an ASIC, is controlled by using a programmable delay circuit and detection sequence to compensate for variable I/O delay. The memory system includes a controller and an interface, both on the ASIC, and memory units coupled to the controller through the interface. The interface uses the read request signal, sent by the controller to initiate read operations, to generate a select signal. A programmable delay element inside the interface unit is programmed using a delay value generated by a delay manager unit inside the controller. The programmable delay element delays the select signal, and an enable signal is generated from the delayed select signal, using DQS. The propagation of DQS is controlled by the enable signal.