3 ms·
I particularly like using strace/dtrace/dtruss to show the communications between the user process and the kernel. You can learn some very interesting system ca
by msla 9y ago
I particularly like using strace/dtrace/dtruss to show the communications between the user process and the kernel. You can learn some very interesting system calls like that, and see how experienced programmers use them.
There's another tool of that variety: ltrace shows calls to functions in dynamically-loaded libraries. It... works, mostly, but it doesn't know things like function type signatures, so it has to guess, and sometimes gets it wrong in weird ways. It also doesn't know defines and enums, so it can't turn numbers back into symbolic constants like strace and its close kin can:
https://en.wikipedia.org/wiki/Ltrace https://en.wikipedia.org/wiki/Ltrace
- jwilk 9y agoFor tracing functions, there's also latrace: https://people.redhat.com/jolsa/latrace/index.shtml https://people.redhat.com/jolsa/latrace/index.shtml
- lathiat 9y agoThanks for the link, I've mostly been focussing on perf and bpf related things but TIL about LD_AUDIT http://man7.org/linux/man-pages/man7/rtld-audit.7.html http://man7.org/linux/man-pages/man7/rtld-audit.7.html