Rubyの、 Time.now は最終的には clock_gettime(3) を呼び出しているそうな。 masterの当該箇所 Time.now は Time.new を無引数で呼び出しているに過ぎない ここで、 Time#initialize の実態は time_init time_init は引数がない場合 time_init_0 を呼ぶ time_init_0 は timespec 構造体のポインタを引数に rb_timespec_now を呼ぶ rb_timespec_now で clock_gettime(3) が使えるシステムであればそれを呼ぶ。そうでない場合 gettimeofday(2) らしい… ここで、以下のような小さなCのコードを書く。 /* man になかったけどこの宣言がないと RTLD_NEXT が定義されなかった */ #define _GNU_SOURCE