I haven’t seen much hype for frysk, though it certainly
deserves some. (And, by the way, no, the “K.” mentioned on that page
is not Franz Kafka’s compiler-writing alter ego. Though, to be sure,
there are parallels between programming and The Castle.)
Having a programmable monitor and debug tool would be super handy.
There’s a kind of convergence here between tools like valgrind,
simulators, LLVM, and now frysk that is worth some investigation… it
is a rich period for execution tools, just as it is for
next-generation version control systems.
The other day I thought of an odd frysk application: sandboxing.
The idea is that you could run untrusted executable code under frysk.
frysk intercept system calls and force failures for those you want to
disallow. I picture it as being a bit like the java sandbox, where
you could configure the wrapper program to allow or disallow certain
events (allow X connections, disallow other network connections, allow
file reads, disallow writes outside of pwd, etc). The UI would be a
bit like valgrind:
sandbox --whatever program arg arg.
Think of it as SELinux on the cheap.
Come to think of it, this would be very useful for testing as well
— you could easily do controlled failure of certain system calls;
EIO at certain points of the test.