RustBelt - Rust 的形式化语义模型
RustBelt - Rust 的形式化语义模型 Outline Background • RustBelt Project • Rust Types Overview Rust Semantics • Type System • The own Predict • Exclusive Ownership & Mutable Borrow Examples • Rc Logics 1)} {x ↦ −} drop(x) {True} Separation Logic (Iris) Type System of λRust (selective) Rust Semantics λRust Type Rust Type bool | int bool | BigInt own Box| &’a mut T | &’a T | (T1, T2) Mod ∋ ::= mut | shr Type ∋ ::= | bool | int | own | | | ̄ | ⋯ The own Predict Rust Semantics ⟦bool⟧.own(v̄) := v̄ = [true] ∨ v̄ = [false] ⟦τ⟧.own(v̄)- A relation between a type and a list 0 码力 | 21 页 | 2.63 MB | 1 年前3hazard pointer synchronous reclamation
- No use of unavailable resource Concurrency TS2 Global Cleanup Performance? Simple and strong semantics Hazard Pointer Synchronous Reclamation Beyond Concurrency TS2 – Maged Michael Global Cleanup Implementation repeating whenever dependent retirement happens. • Folly supports transitive global cleanup. • Stronger semantics than TS2 global cleanup. In Library How about Custom Domains? Hazard Pointer Synchronous Reclamation Hazard Pointer Synchronous Reclamation Beyond Concurrency TS2 – Maged Michael • Weaker and stronger semantics than (TS2) hazard_pointer_clean_up. • Weaker: Doesn’t cover all retired objects. • Stronger: Seamlessly0 码力 | 31 页 | 856.38 KB | 5 月前3
共 2 条
- 1