> 指定した秒数(実際は 1 を引いたもの)が経過した後、 SIGALRM をプロセスに伝える。
> つまり、 `alarm(15)' はそれから 14 秒以上経ったある時点で SIGALRM を起こす。

らしいので、alarm(1); でディレイ0になるんじゃないかな。