3 ms·
As it happens, I wrote a blog post about this not too long ago. Basic summary: (1) Write things down as you go. (2) Learn your tools (e.g. IDE or cscope). (3
by notacoward 8y ago
As it happens, I wrote a blog post about this not too long ago. Basic summary:
(1) Write things down as you go.
(2) Learn your tools (e.g. IDE or cscope).
(3) Learn the core data structures and RPC definitions first.
(4) Trace through important code flows.
(5) Experiment with small changes to see how they affect things.
The full post is here: http://obdurodon.silvrback.com/navigating-a-large-codebase http://obdurodon.silvrback.com/navigating-a-large-codebase
BTW, a lot of folks here need to stop talking about "the entry point" or "main". For many kinds of code, from kernel code to network and storage servers, main will not exist or will be intensely uninteresting. Finding the real entry points is part of the investigative process, not something to be assumed.