Rings

Reference 1

(From v7 2.3.14) Use of privileged features within privileged rings, depends on the program-counter capability having a suitable hardware permission set, rather than the traditional permissions in virtual memory as the supervisor.

This feature allows code within kernels, microkernels, and hypervisors to be compartmentalized, preventing bypass of the capability model within the kernel virtual address space through control of virtual memory features.

The feature also allows vulnerability mitigation by allowing only explicit use of privileged features: kernel code can be compiled and linked so that most code executes with a program-counter capability that does not authorize use of privilege, and only by jumping to selected program-counter capabilities can that privilege be exercised, preventing accidental use.

Finally, this feature paves the way for process and object models in which the capability model is used without resource to rings.


  1. CHERI ISAv7. ↩
Created Nov 24, 2019 // Last Updated Nov 24, 2019

If you could revise
the fundmental principles of
computer system design
to improve security...

... what would you change?