Technology
Bounds
Capability bounds describe the memory region an access may address, allowing the processor to stop references that escape an authorised object or range.
Why it matters
Bounds provide deterministic spatial protection at the point of use and can make object boundaries meaningful to hardware.
In brief
Bounds describe the region of memory a capability may address. When software uses a capability outside that range, the processor raises a fault instead of allowing the access to continue into a neighbouring object.
Key considerations
1. Creation
Software or the runtime derives a capability with bounds appropriate to an allocation, object, stack frame or shared region.
2. Monotonicity
Derived capabilities may narrow authority but cannot legitimately expand beyond their source.
3. Check
Loads, stores and instruction fetches are checked against the capability’s bounds and permissions.
Evidence and caveats
Capability encodings may represent some bounds exactly and others with conservative rounding. Allocation and ABI design must account for representability.
Use the exact architecture and software specification implemented by the target. Separate architectural guarantees from system-level outcomes.