git://scm.lunaixsky.com
/
lunaix-os.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
slides for multitasking (ep10)
[lunaix-os.git]
/
lunaix-os
/
kernel
/
lxinit.c
diff --git
a/lunaix-os/kernel/lxinit.c
b/lunaix-os/kernel/lxinit.c
index fa5ce38783fc301b35e5fa0e452fcc9522acc933..91a4e504192401162709b8dafad6d11b266e8b38 100644
(file)
--- a/
lunaix-os/kernel/lxinit.c
+++ b/
lunaix-os/kernel/lxinit.c
@@
-33,6
+33,13
@@
sigsegv_handler(int signum)
_exit(signum);
}
_exit(signum);
}
+void __USER__
+sigalrm_handler(int signum)
+{
+ pid_t pid = getpid();
+ kprintf(KWARN "I, pid %d, have received an alarm!\n", pid);
+}
+
void __USER__
_lxinit_main()
{
void __USER__
_lxinit_main()
{
@@
-48,6
+55,9
@@
_lxinit_main()
signal(_SIGCHLD, sigchild_handler);
signal(_SIGSEGV, sigsegv_handler);
signal(_SIGCHLD, sigchild_handler);
signal(_SIGSEGV, sigsegv_handler);
+ signal(_SIGALRM, sigalrm_handler);
+
+ alarm(5);
int status;
#ifdef WAIT_DEMO
int status;
#ifdef WAIT_DEMO