If I compile the following program: and then run it under strace in “standard” Kubuntu, I get this: As you can see, there is no clock_gettime (full strace output is here). On the other hand, if I run the same app in my custom built linux kernel under qemu, I get the following output: Which is more expected – there
Tag: vdso
Where do the `[stack]`, `[vdso]` and `[vsyscall]` mmaps come from?
Consider the following program targeting Linux x86_64: inf.s: Which is basically an infinite loop. If I link and strip this I get an ELF executable: In the ELF executable the first program header LOAD contains the map that accounts for the first of the entry in the above mmaps (a.out). (Even if I strip everying but this header and code