Patent classifications
G06F11/1407
Method, Apparatus and Data Structure for Copying Values of a Table of a Database
A method for copying values of a table of a database between a primary memory and a secondary memory comprises selecting one or more segments, wherein the table is organized in a plurality of stripes and a plurality of vertical partitions, wherein a stripe comprises at least two rows of the table, wherein a vertical partition comprises one or more columns of the table, wherein each of the plurality of segments comprises values at a cross-section of a stripe and a vertical partition, and wherein each of the plurality of segments stores adjacent column values in adjacent locations of the primary or the secondary memory, and copying the one or more selected segments between the primary memory and the secondary memory.
Continuous run-time validation of program execution: a practical approach
Trustworthy systems require that code be validated as genuine. Most systems implement this requirement prior to execution by matching a cryptographic hash of the binary file against a reference hash value, leaving the code vulnerable to run time compromises, such as code injection, return and jump-oriented programming, and illegal linking of the code to compromised library functions. The Run-time Execution Validator (REV) validates, as the program executes, the control flow path and instructions executed along the control flow path. REV uses a signature cache integrated into the processor pipeline to perform live validation of executions, at basic block boundaries, and ensures that changes to the program state are not made by the instructions within a basic block until the control flow path into the basic block and the instructions within the basic block are both validated.
System and method for validating program execution at run-time
A pipelined processor comprising a cache memory system, fetching instructions for execution from a portion of said cache memory system, an instruction commencing processing before a digital signature of the cache line that contained the instruction is verified against a reference signature of the cache line, the verification being done at the point of decoding, dispatching, or committing execution of the instruction, the reference signature being stored in an encrypted form in the processor's memory, and the key for decrypting the said reference signature being stored in a secure storage location. The instruction processing proceeds when the two signatures exactly match and, where further instruction processing is suspended or processing modified on a mismatch of the two said signatures.
System and method for validating program execution at run-time using control flow signatures
A processor comprising: an instruction processing pipeline, configured to receive a sequence of instructions for execution, said sequence comprising at least one instruction including a flow control instruction which terminates the sequence; a hash generator, configured to generate a hash associated with execution of the sequence of instructions; a memory configured to securely receive a reference signature corresponding to a hash of a verified corresponding sequence of instructions; verification logic configured to determine a correspondence between the hash and the reference signature; and authorization logic configured to selectively produce a signal, in dependence on a degree of correspondence of the hash with the reference signature.
Method of delaying checkpoints by inspecting network packets
A method of delaying checkpointing in a virtual machine system. In one embodiment, the method includes the steps of examining a network frame to determine if it is a deferrable frame and if the frame is a deferrable frame, delaying a checkpoint associated with the frame. In another embodiment, the deferrable frame is one of a group comprising: an IP packet tagged with the ‘more fragments’ attribute; TCP data segments that lack the PSH flag and carry no flags other than ‘ACK’; and TCP segments that contain no data and carry only the ‘ACK’ flag; and any frame originating from or destined to a designated network address or port number. In still another embodiment, the method includes the step of concatenating the delays due to deferrable frames. In still yet another embodiment, the method further includes setting an upper limit to the amount of delay that can be generated.
Method and Apparatus for Generating Simulated Test IO Operations
Different storage platforms and different applications generate different types of traffic. Separate learning processes are trained using live IO operations from different types of reference workloads. The reference workloads are based on multiple types of applications executing in multiple types of environments. Example applications may include Oracle, SAP, SQL, etc. Example environments may include finance/banking, retail, on-line transaction processing, healthcare, etc. Once the learning processes have been trained, trained model checkpoints describing the trained learning processes are stored in a reference workload repository. The trained model checkpoints are used in a testing environment to enable a test server to create a test model configured to generate simulated test IO operations to be applied to a storage system. The generated test IO operations simulate the workload from an intended application and environment where the storage system will be used.
Persistent commit processors, methods, systems, and instructions
A processor includes at least one memory controller, and a decode unit to decode a persistent commit demarcate instruction. The persistent commit demarcate instruction is to indicate a destination storage location. The processor also includes an execution unit coupled with the decode unit and the at least one memory controller. The execution unit, in response to the persistent commit demarcate instruction, is to store a demarcation value in the destination storage location. The demarcation value may demarcate at least all first store to persistent memory operations that are to have been accepted to memory when the persistent commit demarcate instruction is performed, but which are not necessarily to have been stored persistently, from at least all second store to persistent memory operations that are not yet to have been accepted to memory when the persistent commit demarcate instruction is performed.
Pipe inspection and/or mapping camera heads, systems, and methods
Camera heads and associated systems, methods, and devices for inspecting and/or mapping pipes or cavities are disclosed. A camera head may be coupled to a push-cable and may include one or more image sensors to capture images and/or videos from interior of the pipe or cavity. One or more multi-axis sensors may be disposed in the camera head to sense data corresponding to movement of the camera head within the pipe or cavity. The images and/or videos captured by the image sensors may be used in conjunction with the data sensed by the multi-axis sensors to generate information pertaining to the pipe or cavity may be generated.
ANY POINT IN TIME BACKUP ON SECONDARY STORAGE FOR DISTRIBUTED CONSISTENCY GROUPS
Any point in time backups for distributed consistency is disclosed. IOs from a consistency group are received by multiple aggregators and stored in corresponding journals. In response to a bookmark, the multiple journals are synthesized to create a do stream or to add the multiple journals to the do stream. A full synchronization operation can be performed simultaneously with replication operations.
DATA RECOVERY USING BITMAP DATA STRUCTURE
Examples of the present disclosure describe implementing bitmap-based data replication when a primary form of data replication between a source device and a target device cannot be used. According to one example, a temporal identifier may be received from the target device. If the source device determines that the primary replication method is unable to be used to replicate data associated with the temporal identifier, a secondary replication method may be initiated. The secondary replication method may utilize a recovery bitmap identifying data blocks that have changed on the source device since a previous event.