pepoとネットワークを語ろう

40年前からこれまでとこれからのネットワークを語る

日頃は青臭い中国産の枝豆しか食べられへんねんけど、庭採れは最高や∩(○´∀`○)∩

2011-10-10 09:36:17 | くじら伝説

今年2度目の庭採れ、枝豆の収穫や

びんぼうくじらのだんなは

日頃は青臭い中国産の枝豆しか食べられへんねんけど、庭採れは最高や∩(○´∀`○)∩

庭採れ、枝豆はちがうでそれはー、美味い、美味いで

しかし、庭栽培はバッタが葉っぱを食べるからあんまりみのりは、あらへん

くじらのかあさんに、日頃バッタを潰してとお願いするも拒否られ、

見事に葉っぱが食われとるがな

pepoと

 

 


msleepとsleepとusleepをくらべたよ、うーねむい、sleepy(@Д@;

2011-10-10 09:31:11 | Linux

Open Microserver+FOMA Remote-Handをdaemontoolsでdaemonを

監視しているがやたらとsleepが気になるのと

50ミリ秒とか細かい数字でsleepさせたい場合がある

usleep 50000も桁数が多くて分かり図らい

sleep 0.05とかやっても良いんだけどなんか

psでプロセスを見たときに小数点があるのもイマイチかも

なので、msleepなんぞが標準で無いのでwebを参考に自前で作ってみた

そんでもって検証や

[root@~]# time ./msleep 100

real 0m0.107s

user 0m0.001s

sys 0m0.004s

[root@~]# time ./msleep 100

real 0m0.107s

user 0m0.001s

sys 0m0.004s

[root@~]# ldd ./msleep

linux-gate.so.1 =>  (0x0026c000)

libc.so.6 => /lib/libc.so.6 (0x00831000)

/lib/ld-linux.so.2 (0x0054a000)

[root@~]# ldd /bin/sleep 

linux-gate.so.1 =>  (0x00f30000)

libc.so.6 => /lib/libc.so.6 (0x00753000)

/lib/ld-linux.so.2 (0x00b0a000)

ソースコードはescが邪魔臭いのでうまく貼り付けれんけど参考まで

[root@~]# cat msleep.c 

/* licence GPLv2 ; this is milliseconds to sleep by IZAMUKARERA 2011.6.25 */

省略

int main(int argc, char *argv[]){

  unsigned int msec;

  if (argc < 2) {

printf("Usage: msleep ,miliseconds\n");

exit (1);

  }

  msec = atoi(argv[1]);

  msleep(msec);

  exit(0);

}


int msleep(int ms)

{

struct timeval timeout;

timeout.tv_sec = ms / 1000;

timeout.tv_usec = (ms % 1000) * 1000;

if (select(0, (fd_set *) 0, (fd_set *) 0, (fd_set *) 0, &timeout) < 0) {

perror("msleep");

return -1;

}

return 0;

}

バイナリーコードが1/3ぐらいで、まーちょいとが少ないからええか

[root@~]# ll /usr/local/bin/msleep

-rwxr-xr-x 1 root root 5569 10月  9 04:28 /usr/local/bin/msleep

 

[root@~]# ll /bin/sleep 

-rwxr-xr-x 1 root root 17064  3月  1  2010 /bin/sleep

[root@~]# ll /bin/usleep

-rwxr-xr-x 1 root root 24792  8月 20 00:31 /bin/usleep

 

 

pepo