Bounds Checking
Bounds checking is a compiler-based technique that adds run-time bounds information for each allocated block of memory, and checks all pointers against those at run-time. For C and C++, bounds checking can be performed at pointer calculation time or at dereference time.
Implementations of this approach use either a central repository, which describes each allocated block of memory, or fat pointers, which contain both the pointer and additional data, describing the region that they point to.
Read more about this topic: Buffer Overflow Protection
Famous quotes containing the word bounds:
“How far men go for the material of their houses! The inhabitants of the most civilized cities, in all ages, send into far, primitive forests, beyond the bounds of their civilization, where the moose and bear and savage dwell, for their pine boards for ordinary use. And, on the other hand, the savage soon receives from cities iron arrow-points, hatchets, and guns, to point his savageness with.”
—Henry David Thoreau (18171862)