转自:http://blog.d-o-n-e-w-s.com/21cnbao/archive/2008/11/26/1388561.aspx
【注】d-o-n-e-w-s,这五个字符是连在一起的,中间没有“-”。服了U,提交的时候竟然告诉我有禁止语言。禁止就禁止吧,为什么不提示我哪个语言是禁止的呢?我也好改进啊!折腾来折腾去,最后发现是这五个字符。强烈建议51CTO,当检测到有禁止语言的时候,给用户提示一下。
#include
#include
#include
#include
int main(int argc, char **argv)
{
    /* first disable all our signals */   
    sigset_t set;
    sigfillset(&set);
    sigprocmask(SIG_BLOCK, &set, NULL);
/* send signals to all processes  _except_ pid 1 */
    printf("sending SIGTERM signal to all processes\n");
    kill(-1, SIGTERM);
    sync();
    sleep(3);
    printf("sending SIGKILL signal to all processes\n");
    kill(-1, SIGKILL);
    sync();
    sleep(3);
   
    /* shutdown */
    printf("system shutdown\n");
    sleep(2);
    reboot(RB_POWER_OFF);
}