shadow
testground
Our great sponsors
shadow | testground | |
---|---|---|
11 | 2 | |
1,348 | 401 | |
1.0% | 1.0% | |
9.8 | 1.6 | |
18 days ago | 7 months ago | |
Rust | Go | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 or later |
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.
shadow
-
Turmoil, a framework for developing and testing distributed systems
Cool, will be interested to see how this develops! tokio's loom framework has been a big help in testing some tricky concurrency code I've worked on.
Folks interested in this space might also be interested in the system I spend most of my time working on: Shadow. It also performs deterministic simulation of a network of hosts, but it intercepts network and system interactions at the syscall level via seccomp. As such it can work with binaries compiled from ~any language, usually without any code modification or special compilation. https://shadow.github.io/
-
I reinvented another wheel, linux threads.
Nice writeup! I've also had to dig a bit into this area in my work on shadow.
-
Shadow Simulation Developer
It is no longer active. If you are asking about Shadow, check out https://shadow.github.io
-
How to avoid bounds checks in Rust (without unsafe!)
I do share this hesitation. I think for simple cases iterators are usually fine, but I've definitely run into cases where an iterator adapter caused unexpected performance problems. e.g. https://github.com/shadow/shadow/pull/2543
-
Sending signals to Unix process groups
Yes. Though I'm not sure I see the connection to the OP...?
The example I'm most familiar with, because I work on it, is Shadow. We used ptrace for a bit but now use seccomp.
https://github.com/shadow/shadow/
- Shadow Simulator โ run real applications over a simulated Internet topology
-
Shadow Simlulator โ run real applications over a simulated Internet topology
For anyone interested in following current development on Shadow, we've been publishing a series of updates. Most recent: https://github.com/shadow/shadow/discussions/1274
The previous update has links back to the whole series; I stopped including it in the most-recent update since it was getting a bit cumbersome: https://github.com/shadow/shadow/discussions/1060
testground
-
Testing Distributed Systems
They have their own solutions for these problems as well, see e.g. https://github.com/testground/testground, which comes from the IPFS/Filecoin folks to coordinate distributed state, network traffic shaping, etc. for testing distributed systems.
-
Shadow Simlulator โ run real applications over a simulated Internet topology
related, but "higher level" project: project:https://github.com/testground/testground
What are some alternatives?
mininet - Emulator for rapid prototyping of Software Defined Networks
tor - unofficial git repo -- report bugs/issues/pull requests on https://gitlab.torproject.org/ --
imunes - Integrated Multiprotocol Network Emulator/Simulator
shadow-plugin-tor - A Shadow plug-in that runs the Tor anonymity software
core - Common Open Research Emulator
rebop - Fast stochastic simulator for chemical reaction networks
garden - Automation for Kubernetes development and testing. Spin up production-like environments for development, testing, and CI on demand. Use the same configuration and workflows at every step of the process. Speed up your builds and test runs via shared result caching
simuwaerm - A simple heat simulation in pure Rust.
dettrace - A determinizing tracer using Ptrace