hitzhangjie / tinydbg

This repo teaches you how to build a golang debugger in golang. This repo is forked from go-delve/delve and simplified for linux/amd64.
MIT License
3 stars 0 forks source link

add document to introduce how `mozilla rr` works #5

Open hitzhangjie opened 2 years ago

hitzhangjie commented 2 years ago

how mozilla rr works? see: https://rr-project.org/rr.html#99.0

hitzhangjie commented 2 years ago

see mozilla rr design: https://arxiv.org/abs/1610.02144 see mozilla rr implemention: https://arxiv.org/abs/1705.05937

hitzhangjie commented 2 years ago

see how mozilla works? youtube video: https://www.youtube.com/watch?v=ytNlefY8PIE

this talks more about mozilla internals: rr uses seccomp bpf to do secure computation in filters, to record the syscall input and ouput, and records the results in logging. When debugging in following time, rr will replay the results from logging.

So rr will make the non-deterministic problemns become deterministic in debugging.