hermit
madsim
hermit | madsim | |
---|---|---|
8 | 5 | |
1,148 | 599 | |
4.1% | 2.8% | |
7.6 | 7.6 | |
24 days ago | 10 days ago | |
Rust | Rust | |
GNU General Public License v3.0 or later | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
hermit
-
Hermit is a hermetic and reproducible sandbox for running programs
That's been my experience as well. It lacks support for certain clone(2) flags like CLONE_VFORK[1], which limits the set of non-trivial programs it can run, and since running non-trivial programs is most of the point, I haven't revisited it since it was first announced.
[1] https://github.com/facebookexperimental/hermit/blob/bd3153b4...
-
So you think you want to write a deterministic hypervisor?
A Meta developer responded to an issue of mine on Hermit, and said:
"Just to let you know we're not actively working on Hermit in the team..."
https://github.com/facebookexperimental/hermit/issues/34#iss...
-
Is Something Bugging You?
I really like antithesis' approach: it's non-intrusive as all the changes are on a VM so one can run deterministic simulation without changing their code. It's also technically challenging, as making a VM suitable for deterministic simulation is not an easy feat.
On a side, I was wondering how this approach compares to Meta's Hermit(https://github.com/facebookexperimental/hermit), which is a deterministic Linux instead of a VM.
-
Deterministic Linux for Controlled Testing and Software Bug-Finding
> AMA!
Eager to try it but encountering the build error here - https://github.com/facebookexperimental/hermit/issues/11
Do you have a reference build log / environment you can share? Last known good commit sha and/or output from "rustup show"?
-
Deterministic Linux for Controlled Testing and Software Bug-finding
Here is the GitHub repository: https://github.com/facebookexperimental/hermit
madsim
-
On Implementation of Distributed Protocols
Being able to control nondeterminism is particularly useful for testing and debugging. This allows creating reproducible test environments, as well as discrete-event simulation for faster-than-real-time simulation of time delays. For example, Cardano uses a simulation environment for the IO monad that closely follows core Haskell packages; Sui has a simulator based on madsim that provides an API-compatible replacement for the Tokio runtime and intercepts various POSIX API calls in order to enforce determinism. Both allow running the same code in production as in the simulator for testing.
- Is Something Bugging You?
- Madsim: Magical Deterministic Simulator for distributed systems in Rust
- madsim: Magical Deterministic Simulator for distributed systems in Rust
-
Announcing Turmoil, a framework for testing distributed systems
How Turmoil different from madsim? Is Turmoil a successor of madsim?
What are some alternatives?
sapling - A Scalable, User-Friendly Source Control System.
mainspring - A CPU simulator framework built around, and to support the other tools under, the constraints of the first principles of computing project.
stabilizer - Stabilizer: Rigorous Performance Evaluation
Hyperspeedcube - Modern, beginner-friendly 3D and 4D Rubik's cube simulator
reverie - An ergonomic and safe syscall interception framework for Linux.
snmp-sim-rust - SNMP Simulator (Rust)
TX-2-simulator - Simulator for the pioneering TX-2 computer
oxidizy - Life, in its smallest form.
visual-system-simulator - Framework for simulating deficiencies and other aspects of the human visual system
name-needed - 🕹 A one man effort to produce an intuitive and high performance Dwarf Fortress-esque game. Needs a name.