Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation 2022
DOI: 10.1145/3519939.3523434
|View full text |Cite
|
Sign up to set email alerts
|

Islaris: verification of machine code against authoritative ISA semantics

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
0
0

Year Published

2023
2023
2024
2024

Publication Types

Select...
5
1

Relationship

0
6

Authors

Journals

citations
Cited by 8 publications
(4 citation statements)
references
References 57 publications
0
0
0
Order By: Relevance
“…Since Cerise, we have seen more instantiations of low-level languages in Iris. For example, Sammler et al [2022] present Islaris, which can used to verify machine code against authoritative ISA semantics of Armv8-A and RISC-V, and Liu et al [2023] introduce VMSL, a novel separation logic, which can be used to reason about virtual machines which communicate through a hypercall API. To reason about stored code, the latter work introduces a new kind of weakest precondition (called single-step weakest precondition), which could probably be used to slightly simplify the formal treatment of stored code in Cerise.…”
Section: Discussion and Perspectivesmentioning
confidence: 99%
“…Since Cerise, we have seen more instantiations of low-level languages in Iris. For example, Sammler et al [2022] present Islaris, which can used to verify machine code against authoritative ISA semantics of Armv8-A and RISC-V, and Liu et al [2023] introduce VMSL, a novel separation logic, which can be used to reason about virtual machines which communicate through a hypercall API. To reason about stored code, the latter work introduces a new kind of weakest precondition (called single-step weakest precondition), which could probably be used to slightly simplify the formal treatment of stored code in Cerise.…”
Section: Discussion and Perspectivesmentioning
confidence: 99%
“…We demonstrate in Section 6 that our UC supports this using the femtokernel case study: a minimal RISC-V PMP machine mode kernel that interacts with untrusted user-mode code over a simple system call. Interestingly, this verification reuses Katamaran as a verification tool for RISC-V assembly, by reusing an idea from previous work [46].…”
Section: Verifying and Applying A Universal Contractmentioning
confidence: 98%
“…It then remains to prove contracts for the kernel and interrupt handler, establishing that they jump to user-mode code in a correct state (i.e., in user-mode, with the intended PMP configuration) and use but don't break the registered invariants. Inspired by Islaris [46], we can largely automate the remaining verification, by reusing existing components and proofs of Katamaran to derive a sound verifier for known assembly code. Essentially, the idea is that a contract for {Pre}B{Post} for a basic block of assembly code can also be regarded as a contract for the ISA semantics, under the assumption that it is looking at basic block 𝐵.…”
Section: Applying the Universal Contract: Femtokernel Verificationmentioning
confidence: 99%
See 1 more Smart Citation