摘要:
In an embodiment, a processor includes a binary translation engine to receive a code segment, to generate a binary translation of the code segment, and to store the binary translation in a translation cache, where the binary translation includes at least one policy check routine to be executed during execution of the binary translation on behalf of a security agent. Other embodiments are described and claimed.
摘要:
Technologies for assembling an execution profile of an event are disclosed. The technologies may include monitoring the event for a branch instruction, generating a callback to a security module upon execution of the branch instruction, filtering the callback according to a plurality of event identifiers, and validating a code segment associated with the branch instruction, the code segment including code executed before the branch instruction and code executed after the branch instruction.
摘要:
This disclosure is directed to binary translator driven program state relocation. In general, a device may protect vulnerable program functions by setting them as non-executable. If an attempt is made to execute a protected program function, the program may trap to a binary translator in the device that may be configured to relocate program state from what has already been established (e.g., on a stack register). Program state may include resources (e.g., memory locations) used by the program during the course of execution. The binary translator may then translate the program into an executable form based on the relocated program state, and may be executed accordingly. Intruding code that attempts to overcome normal program execution and implement hostile operations (e.g., based the program state that is reflected in the stack register) will not function as intended since the relocated program state will cause unexpected results.
摘要:
Various embodiments are generally directed to techniques to detect a return-oriented programming (ROP) attack by verifying target addresses of branch instructions during execution. An apparatus includes a processor component, and a comparison component for execution by the processor component to determine whether there is a matching valid target address for a target address of a branch instruction associated with a translated portion of a routine in a table comprising valid target addresses. Other embodiments are described and claimed.
摘要:
A method and system uses exceptions for code specialization in a system that supports transactions. The method and system includes inserting one or more branchless instructions into a sequence of computer instructions. The branchless instructions include one or more instructions that are executable if a commonly occurring condition is satisfied and include one or more instructions that are configured to raise an exception if the commonly occurring condition is not satisfied.
摘要:
Devices for use in cold-field emission and methods of forming the device are generally presented. In one example, a method may include providing a conductive base, dispersing carbon-filled acrylic onto the conductive base to form a conductive film, coupling a copper plate to a first side of the conductive film, and irradiating the conductive film. The method may further include dispersing carbon nanotubes (CNTs) on a second side of the conductive film to form a substantially uniform layer of CNTs, removing excess CNTs from the second side, and curing the conductive film. In one example, a device may include a polycarbonate base, a layer of carbon-filled acrylic on one side of the polycarbonate base and a layer of irradiated carbon-filled acrylic on the other, a copper plate coupled to the carbon-filled acrylic, and a substantially uniform layer of randomly aligned CNTs dispersed on the irradiated carbon-filled acrylic.
摘要:
Energy harvesting elements or membranes are provided that use a layer of electrodes with a mixture of carbon nanotubes (CNT). The energy harvesting device of this type can be used as in sensor-based system in which on application of a bending load, the energy harvesting device produces a voltage across the electrodes. The energy harvesting device may include an electrode coating including carbon nanotubes (CNT) substantially homogenously dispersed in epoxy resin system to form a CNT-epoxy electrode coating. The CNT-epoxy electrode can be realized by dispersing about 5% CNT (by weight) in an epoxy-resin system, followed by mixing the system to achieve a near-homogenous dispersion resulting in a CNT-epoxy mixture. The CNT-epoxy mixture can then be uniformly coated on surfaces of a polymer to form electrodes.
摘要:
A method of memory disambiguation hardware to support software binary translation is provided. This method includes unrolling a set of instructions to be executed within a processor, the set of instructions having a number of memory operations. An original relative order of memory operations is determined. Then, possible reordering problems are detected and identified in software. The reordering problem being when a first memory operation has been reordered prior to and aliases to a second memory operation with respect to the original order of memory operations. The reordering problem is addressed and a relative order of memory operations to the processor is communicated.
摘要:
A mechanism for tracking the control flow of instructions in an application and performing one or more optimizations of a processing device, based on the control flow of the instructions in the application, is disclosed. Control flow data is generated to indicate the control flow of blocks of instructions in the application. The control flow data may include annotations that indicate whether optimizations may be performed for different blocks of instructions. The control flow data may also be used to track the execution of the instructions to determine whether an instruction in a block of instructions is assigned to a thread, a process, and/or an execution core of a processor, and to determine whether errors have occurred during the execution of the instructions.
摘要:
A method and system uses exceptions for code specialization in a system that supports transactions. The method and system includes inserting one or more branchless instructions into a sequence of computer instructions. The branchless instructions include one or more instructions that are executable if a commonly occurring condition is satisfied and include one or more instructions that are configured to raise an exception if the commonly occurring condition is not satisfied.