This is a variation of rtlinux-0.6 for kernel 2.0.33 by Barabanov and Yodaiken, NMT, New Mexico, USA. (http://luz.cs.nmt.edu/~rtlinux/) People at NMT must be praised for their nice work without which this variant would not exist. It uses a different timing policy based on a fix ticking instead of the variable one shot triggering adopted in the original rtlinux-0.6. The fix ticking is less flexible but, with the usual PC hardware, much more efficient. So is up to you which one to choose. Moreover this variant of rtlinux has more services including timings, semaphores, messages and remote procedure calls that makes it easy to develop complex real time applications. To implement it is assumed that you already know how to install rtlinux-0.6. What to do: 1 - Apply the rtlinux-0.6 patch, as explained in the NMT official distribution, do "make menuconfig" but do not "make zImage" immediatly; 2 - Copy the files rt_time.c, rt_time.h and ksyms.c of this distribuition over, i.e.replace, their corresponding in the appropriate linux directories. The file "puthere" (included), appropriately edited, can be of help; 3 - Carry out the compilation of the kernel by "make zImage"; 4 - Copy rt_sched.h of this distribution over, i.e replace, rt_sched.h in the appropiate directory; 5 - Copy rt_sched.c of this distribution over, i.e. replace, rt_prio_sched.c in the appropriate directory. Note that if you used "puthere" the two rt_sched.? are already in the right place; 6 - Do "make modules"; 7 - Do "ldsched" to prepare the scheduler for this variant, its name is rt_sched.o now. Notice that ldsched does a ld command to link the library libgcc.a that can be in a directory differing from the one used in the command script; Before carrying on steps 2, 4, 5 it s suggested to save the original file to be overwritten (rt_time.c, rt_time.h, ksyms.c, rt_sched.h, rt_prio_sched.c). Remember that the script file puthere could be of help in carrying out stepsi 2, 4 and 5, even if it is likely to need some editing to use your appropriate directories. The file "loadmod" and "remod" can be used to insmod and rmmod the scheduler and the fifo modules. Please notice that if you just type "loadmod" rt_sched assumes linux is not using the fpu. Use "loadmod 1" if any foreground linux process uses the fpu. To activate/deactivate fpu support, both for linux and rt_tasks, there are also two functions: rt_linux_use_fpu and rt_task_use_fpu Now you are done and can try the test cases. Be carefull in setting the macro TICK_PERIOD in the various examples to an appropriate value (nanosecs) as the one now used is based on a 200Mhz PentiumPro and can be too demanding for other CPUs. You will not see any copyright whatsoever in this software and you can use it as you like but I would like "to be remembered" if you'll find it usefull. Comments and any feedback are warmly welcomed, email them at: "mantegazza@aero.polimi.it".