【发布时间】:2015-11-29 06:51:43
【问题描述】:
我正在做作业。
作业是在 Linux 系统(在 Ubuntu 上)上制作虚拟实时操作系统。
我的问题是 SIGALRM,它是调度程序的处理程序。
void scheduler(int signo) {
/*variables */
printf("Scheduler awake!!\n");
/* Do
Schedule */
}
int RunScheduler(void) {
signal(SIGALRM, scheduler);
alarm(1);
while(1)
pause();
return 0;
}
int main() {
RunScheduler();
}
函数 scheduler(handler) 不起作用。 alarm(1) 有效,但在 alarm(1) 后暂停。
信号处理程序不起作用有什么原因吗??
【问题讨论】: