user_task.c

00001 #include <sys/mman.h>
00002 #include <native/task.h>
00003 
00004 #define TASK_PRIO  99 /* Highest RT priority */
00005 #define TASK_MODE  0  /* No flags */
00006 #define TASK_STKSZ 0  /* Stack size (use default one) */
00007 
00008 RT_TASK task_desc;
00009 
00010 void task_body (void *cookie)
00011 
00012 {
00013     for (;;) {
00014     /* ... "cookie" should be NULL ... */
00015     }
00016 }
00017 
00018 int main (int argc, char *argv[])
00019 
00020 {
00021     int err;
00022 
00023     mlockall(MCL_CURRENT|MCL_FUTURE);
00024 
00025     /* ... */
00026 
00027     err = rt_task_create(&task_desc,
00028                          "MyTaskName",
00029                          TASK_STKSZ,
00030                          TASK_PRIO,
00031                          TASK_MODE);
00032     if (!err)
00033         rt_task_start(&task_desc,&task_body,NULL);
00034 
00035     /* ... */
00036 }
00037 
00038 void cleanup (void)
00039 
00040 {
00041     rt_task_delete(&task_desc);
00042 }

Generated on Mon Mar 24 18:02:40 2008 for Xenomai API by  doxygen 1.5.3