marselester.com - marselester's blog

Example domain paragraphs

In the simplest case of symbolization we used -fno-pie -no-pie flags, so gcc wouldn't produce a position independent executable (PIE). It is produced by default for security measures such as address space layout randomization (ASLR). That means each time the program runs, its segments are loaded into different regions of virtual memory, but their relative positions stay the same.

Let's see what happens when those flags are omitted.

﹩ gcc -Og -fcf-protection=none -o fib main.c ﹩ ./fib & ﹩ sudo go run ./cmd/profiler3 -pid=$(pidof fib) /proc/19978/maps start=0x555806f2c000 limit=0x555806f2d000 offset=0x1000 /vagrant/diy-parca-agent/fib start=0x7f4e21595000 limit=0x7f4e2172a000 offset=0x28000 /usr/lib/x86_64-linux-gnu/libc.so.6 start=0x7f4e2179f000 limit=0x7f4e217c9000 offset=0x2000 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 start=0x7fffe4d9e000 limit=0x7fffe4da0000 offset=0x0 [vdso] start=0xffffffffff600000 limit=0xffffffffff601000 o