Hi I have some questions about kernel programming, i hope i'll find here an approprite help. Thank you I would like to implement some kind of soft real-time system. It has own time scheduler with own timetable and it executes events step-by-step at certain time. Now it works like this: there is an infinite loop,on every iteration the clock timer is checked and if event is scheduled for this time period, it executes. The first question is: Can I use an internal linux scheduler (in 2.6) instead of using this infinite loop? I would like that kernel will care about execution of specified task at specified time by himself. For example like this: when time point comes, the kernel wake up my application, gives them execution control and after execution my application will sleep until next event. Of cource, realtime systems (like RTLinux and rtoi)can be used instead, but i really don't need them - their perfomance slower and they are hard real-time (it means that missing an event is a failure)... I realy don't need so serious stuff. And also i have only one "Real-Time" thread. How do it best? Also this "pseudo" realtime system should react very fast (i prefer immidiatly :) )for incoming network packets. i've changed network driver to send a signal to userspace application when packet arrived to the interface. And i want to do it very fast. So, my next question is : How can kernel driver inform userspace application the fastest way? Now i use only signals (SIGUSR1 and SIGUSR2), it's good enoung, but i want more :) And third question: What is the fastest way to communicate between kernel and userspace? Now i use ioctl (via special device file, e.g. /dev/mydevice), but i think that communication through system calls can be a little bit faster. Is it true? Thank you for you understanding and any corresponding help. Sergey Semionov -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/