int init_module(void) { hide = FALSE; pause = FALSE; rtf_create(Keyboard, 1000); rtf_create_handler(Keyboard, keybrd_handler); rtf_create(Screen, 10000); rt_sem_init(&keybrd_sem, 0); rt_task_init_cpuid(&read, ClockChrono_Read, 0, 2000, 0, 0, 0, READ_RUN_ON_CPU); rt_task_init_cpuid(&chrono, ClockChrono_Chrono, 0, 2000, 0, 0, 0, CHRONO_RUN_ON_CPU); rt_task_init_cpuid(&clock, ClockChrono_Clock, 0, 2000, 0, 0, 0, CLOCK_RUN_ON_CPU); rt_task_init_cpuid(&write, ClockChrono_Write, 0, 2000, 0, 0, 0, WRITE_RUN_ON_CPU); start_rt_apic_timers(apic_setup_data, 0); rt_task_resume(&read); rt_task_resume(&chrono); rt_task_resume(&clock); rt_task_resume(&write); return 0; }
int init_module(void) { int err; if( (err = rtf_create(FROM_KERN, 1000)) < 0 ) { printk("rtf_create: %d, errno = %d\n", FROM_KERN, err); return err; } if( (err = rtf_create(TO_KERN, 1000)) < 0 ) { printk("rtf_create: %d, errno = %d\n", TO_KERN, err); return err; } if( (err = rtf_create_handler(TO_KERN, &handler)) ) { printk("rtf_create_handler: %d, errno = %d\n", TO_KERN, err); return err; } rt_mount(); return 0; }
int RTFHandler(int descr, int (*func)(unsigned int)) { return rtf_create_handler(descr, func) == 0; }