次のコードを実行すると、1秒ごとに alarm と sleep が両方出力される ---- $SIG{ALRM} = sub { print "alarm\n"; alarm 1 }; alarm 1; while (1) { print "sleep\n"; sleep 5; } ---- sleep は alarm を使って実装されていることが多いので、 そのシステムで期待通りに動かないのであれば、ムリ。