The disclosure relates in some aspects to protecting systems and data from maliciously caused destruction. Data integrity is maintained by monitoring data to detect and prevent potential attacks. A mechanism for tracking whether data is tainted is implemented in a Data Flow computer architecture or some other suitable architecture. In some aspects, a taint checking mechanism is implemented within a register file, memory management, and an instruction set of such an architecture. To this end, an indication of whether the data stored in a given physical memory location is tainted is stored along with the physical memory location. For example, a register can include a bit for a corresponding taint flag, a memory page can include a bit for a corresponding taint flag, and an input/output (I/O) port can include a bit for a corresponding taint flag.
展开▼