Hi Guys,
I've been porting my b0 compiler between Linux, Win-x64 and ability to use glibc/libc so it's multi-platform as possible. (See the b0 thread in the compilers section for more info on the compiler/language).
However after some testing, found that the version that uses glibc is roughly 5-6x time quicker than the version that calls the kernel directly for OS services!

(There are about 16 functions that are wrappers for the OS services which either directly call the OS or call the equivalent glibc function - so the number of calls to either the kernel or libc are the same).
Using 'time', shows that user times are roughly equal (1.5sec to recompile the compiler in user code), however the system times are vastly different (0.5sec for libc, 8.5sec for linux version). Total times are 2sec vs 10sec, libc and direct calling respectively.
Has anyone else experienced this? So does libc have any magik in it, that improves it's performance over what calling the kernel directly?
PS. Linux AMD64 is the target, and kernel is v2.6.11.7 (stock from kernel.org).