Abstract:
A random sample is obtained from an inverted tree data structure by maintaining a cardinality estimate for each intermediate node in the tree, and selecting a leaf node at random by descending from the root node and performing an acceptance/rejection selection at each intermediate node weighted proportional to the cardinality estimates of the children and weighted inversely proportional to the cardinality estimate of the intermediate node. Even though the selection of an intermediate node is based upon only an estimate of the true cardinality of the intermediate node, the error in the estimate does not cause bias in the overall sampling method because any bias in the selection of the intermediate node is cncelled by an opposite bias in the selection of the child of the intermediate node. The cardinality estimates are maintained when a leaf is inserted or deleted from the data structure by checking whether the insertion or delection causes the cardinality estimate of a parent of the leaf node to differ from the actual cardinality by a predetermined error bound, and if so, the cardinality estimate of the parent is updated, and the checking and updating process is escalated up the tree. The error bound is adjustable for balancing rejection rate during sampling against I/O overhead of cardinality maintenance during database updates.
Abstract:
A distributed computer system has a number of computers coupled thereto at distinct nodes and a naming service with a membership table that defines a list of assumptions concerning which principals in the system are stronger than other principals, and which roles adopted by principals are stronger than other roles. Each object in the system has an access control list (ACL) having a list of entries. Each entry is either a simple principal or a compound principal. The set of allowed compound principals is limited to a predefined set of allowed combinations of simple principals, roles, delegations and conjunctions in accordance with a defined hierarchical ordering of the conjunction, delegation and role portions of each compound principal. The assumptions in the membership table reduce the number of entries needed in an ACL by allowing an entry to state only the weakest principals and roles that are to be allowed access. The reference checking process, handled by a reference monitor found at each node of the distributed system, grants an access request if the requestor is stronger than any one of the entries in the access control list for the resource requested. Furthermore, one entry is stronger than another entry if for each of the conjuncts in the latter entry there is a stronger conjunct in the former. Additional rules used by the reference monitor during the reference checking process govern the processes of comparing conjuncts in a requestor principal with the conjuncts in an access control list entry and of using assumptions to compare the relative strengths of principals and roles.
Abstract:
An update synchronizer includes a two-stage synchronization unit for generating enable signals to select an output signal from among multiple input clock signals of a clock delay multiplexer. The enable signals originate from an asynchronous control signal having a phase different from that of the clock signals. A pre-synchronization logic stage transforms the asynchronous control signal into complementary synchronous control signals for use by the clock synchronization units; these synchronous control signals, in turn, are transformed into complementary selection enable signals having phases within the domains of the input clock signals. This ensures that transitions of the enable signals occur during the same clock period.
Abstract:
The present invention pertains to a method for transforming non-geometric data into a volumetric representation. Non-geometric data is difficult to represent in three-dimensional space because there is typically no inherent spatial relationship between the data. The present invention transforms the data into a volumetric form and it is then displayed using known visualization techniques. The transformation to volumetric representation facilitates the viewer's perception of relationships between the data.
Abstract:
An improved method for linking images at program activation is provided by use of a symbol vector in a sharable code image. The symbol vector is automatically constructed which the linker and operating system use to effect fast lookup of symbol values at program activation, thus providing flexibility similar to that of link-time binding. For each sharable image being constructed, the programmer provides a list of symbols which are to be made visible outside of the image. These symbols may be procedure names, data cells, absolute values, or any other valid use of a symbolic value. The order of this list must remain fixed from one image build to the next. From this list, the 'symbol vector' is constructed (as by the linker) of the value of each of the identified symbols, and the symbol vector is associated with the sharable image. A symbol table is also associated with the sharable image, where each symbol has the value of its index in the symbol vector. When resolving references to other images, the linker does a symbolic lookup in the symbol table of the target image and obtains the index into t the target symbol vector. That index is bound into the calling image. Then, at program activation, the image activator uses the index bound into a calling image to obtain the current value of the symbol in the target image.
Abstract:
A jacketing system automatically interface dissimilar program units during program execution on a computer system. Means are provided for detecting a call for execution of a second program unit having a second call standard from a first program unit having a first call standard during execution of the first program unit on the computer system. A procedure descriptor is used in the code for the first program unit and it includes a signature that defines the call standard for each incoming call to the first program unit. A bound procedure descriptor is also used in the code for each outgoing call from the first program unit and it includes a signature that defines the call standard for the target program unit. Jacketing routines are driven by the descriptors in jacketing calls between the two program units.
Abstract:
A simulation method allowing an experimenter to test and debug computer programs concurrently. The method utilizes the generation of signatures to observe interactions of various subprogram paths with a reference case.
Abstract:
A simulation method allowing an experimenter to model a real-word situation in order to learn something about it. The method permits interaction of concurrent experiments through interaction between different variables during a single simulation run on a computer having at least one central processing unit.
Abstract:
For the detection of errors in DRAM-control signals transmitted across an interconnect between system modules, a comparison of the parity of the control signals as transmitted and as received is performed at the transmitter module. The transmitter module is provided with a parity generator for determining the parity of the control signals being transmitted. The receiver module is provided with a similar parity generator for determining the parity of the control signals as received from the interconnect. The receiver module generates a parity signal indicating the parity determined by the parity generator in the receiver module, and transmits the parity signal over the interconnect to the transmitter module. At the transmitter module, the parity indicated by the parity signal is compared with the parity determined by the parity generator in the transmitter module for generating an error signal when the parity indicated by the parity signal is unequal to the parity determined by the parity generator in the transmitter module. Preferably one of the DRAM-control signals is used as a time reference for determining the point at which the parity signal from the receiver module is compared to the parity determined for previously transmitted control signals. A delay of a predetermined period of time is provided between the time that the control signals are transmitted from the transmitter module and the point at which the comparison of parity signals is performed: this predefined delay is based upon the time required for signals to traverse, in both directions, the path through the interconnection between the transmitter module and the receiver module, as well as the clock skews inherent in the modules.
Abstract:
An optimized division circuit and a method of implementing the circuit includes the steps of determining a Z-Z plot relationship which represents a relationship between a first divisor ratio proportional to a range of previously determined remainder values divided by the divisor and a second divisor ratio equal to a range of succeeding remainder values divided by the divisor. A complete look-up table is automatically built from the Z-Z plot relationship which includes, for each different valid combination of divisor and next remainder values, either a corresponding quotient digit or a DON'T CARE indicator. A state value, used in the logical implementation of the circuit, is then assigned to each different quotient digit. The circuit includes a divisor multiple formation circuit, a quotient determining circuit and a quotient assimilation circuit. The divisor multiple formation circuit includes a divisor multiple multiplexer. The quotient determining circuit includes a next partial remainder determining circuit and a next quotient digit selection circuit. The quotient assimilation circuit subtracts negative values of quotient digits from positive values to determine a final quotient value.