diff --git a/README.md b/README.md index dec896f..93f9efc 100644 --- a/README.md +++ b/README.md @@ -18,14 +18,16 @@ naksheap reads the allocator metadata that is already in the dump. It walks glib The pipeline is one command, end to end. -```mermaid +![naksheap pipeline](docs/pipeline.svg) + + B[find arenas and heap regions] B --> C[carve objects: address, size, allocated or freed] C --> D[scan for pointers between objects, registers, stack] D --> E[group identical layouts, detect vtables, strings, vectors] E --> F[object graph: ASCII, JSON, Graphviz, HTML report] -``` +--> ## Quick start diff --git a/docs/pipeline.svg b/docs/pipeline.svg new file mode 100644 index 0000000..72014c8 --- /dev/null +++ b/docs/pipeline.svg @@ -0,0 +1 @@ +

core dump

find arenas and heap regions

carve objects: address, size, allocated or freed

scan for pointers between objects, registers, stack

group identical layouts, detect vtables, strings, vectors

object graph: ASCII, JSON, Graphviz, HTML report

\ No newline at end of file