A: Timer hook
    Michal Kocer 
    kocer na ipex.cz
       
    Pondělí Březen  9 18:37:37 CET 1998
    
    
  
Dobry den!
Nekdo se zde ptal na to, jak se lze povesit na IRQ 0,
odpoved naleznete na 
  http://www.erols.com/rgerharz/Linux/
 
odkud cituji:
The Timer Hook Patch installs a function pointer in the do_timer()
function in
linux/kernel/sched.c. This pointer is declared void (*do_timer_hook)() =
0;.
An if statement is inserted at the beginning of do_timer() which calls the
function pointed to by
do_timer_hook, if it is not zero. A kernel module may install a handler
with the following code:
int init_module(void)
{
    ...                 /* prepare to receive interrupt calls */
    cli();              /* disable interrupts */
    if(do_timer_hook) {
        sti();          /* don't forget this! */
        printk("timer hook (do_timer_hook) already in use\n");
        return -EIO;
    }
    do_timer_hook = my_timer;
    sti();              /* timer interrupts will start now */
    ...                 /* do rest of module setup */
}
  
Pekny den preje
			MK
    
    
Další informace o konferenci Linux