Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update chapter2.adoc #43

Merged
merged 3 commits into from
Nov 25, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 87 additions & 0 deletions specification/src/chapter2.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,93 @@ Examples of confidential workloads include:
management, payment clients, DRM clients
* Hosted confidential third party workloads

RISC-V has a range of isolation mechanisms available and in development.

[#cat_sr_sub_iso]
[width=100%]
[%header, cols="10,25,5,5,5,10"]
|===
| Technololgy
| Use Case
| Privilege level
| Memory
| Granularity
| Limitations

| PMP, ePMP
| Boot code isolation, code and data isolation by privilege level. +
Building block for simple trusted execution isolation using high privilege security monitor
| M
| Physical
| Fine Grained
| Switching overhead, limited resource

| SPMP
| OS managed code and data isolation by privilege level. +
Building block to allow multiple OS to manage U mode isolation
| S
| Physical
| Fine Grained
| Switching overhead, limited resource

| Virtual Memory
MMU
| S - U, U - U isolation +
Guest – Guest isolation (VS–VS) +
Host – Guest isolation (HS-VS)
| S +
HS/VS
| Virtual
| Page Based
|

| IOPMP
| System Level PMP
| n/a
| Physical
| Page Based
|

| Pointer Masking
| Simple SW based memory tagging, memory range restriction
| S U
| Both
| Coarse
|

| Smmtt, SDID
| Building block for confidential computing, trusted execution. +
S-S isolation
| S
| Physical
| Page or larger
|

| Hardware Fault Isolation
| Simple memory range based task isolation. Accelerates isolation of containers for webasm etc.
| U
| Virtual
| Fine Grained
|

| Memory Tagging
| Faults on access to an incorrect TAG.
used for debug, garbage collection, security isolation
| S U
| Virtual
| tbd
| Probabilistic, performance impact, +
tag storage overhead

| CHERI
| Full Capability based access for memory safety and isolation
| M S U
| Both
| Fine Grained
| HW/SW impact

|===

==== Device assignment

Isolation policy needs to extend to device assignment:
Expand Down