The variant has been implemented in version 2.0.27. It is not intended as a substitute of the official rtlinux release from NMT. It can be helpfull and more efficient for those that just need a fix ticking but it is less flexible than the original version. However it provides some additional services: semaphores, intertask messages and remote procedure calls that can help in writing complex real time applications. There is no copyright within the code but I would like to be cited if it used. The following comments where provided by Richard Bowser from NMT. They should be of help both to those using version 2.0.27 and 2.0.29. Thanks a lot! I got your package and unpacked it into a subdirectory in my main one. (Since my account is full of differing rtl variants, I don't dare put one into /usr/src/lilnux unlesss its on a test machine. (A test machine is defined as one I can crash, which I regularly do quite well.) I had a few minor problems in getting a running kernel built, but not too many. I built my version of your variant on the 0.5a patch to rtlinux-2.0.29, so I'm not sure how that compares to your kernels. My build blew up on vt.c in drivers/char because rt_latch2 was undefined (defined in rt_time.c). I searched the source tree and found the variable otherwise unused, so I deleted the line assigning it a value. I rebuilt the kernel, but then things blew up while trying to link in liba: init/main.c was calling rt_time_init(), which was similarly undefined. Of course, that wasn't needed any more, so I removed all references to it. After that, things worked fine. I completed the build successfully. Did you encounter any problems with unresolved references? Perhaps this was due to my use of the 0.5a patch as opposed to 0.5, which I think you may have used. I had one more problem after that - your instructions said: 1 - Apply the rtlinux-0.5 patch but do not do make zImage immediatly; 2 - Copy the files rt_time.c, rt_time.h and ksyms.c of this distribuition in the appropriate linux directories; 3 - Carry on the compilation of the kernel by making zImage; 4 - Copy rt_sched.h of this distribution in the appropiate directory; 5 - Copy rt_sched.c of this distribution in rt_prio_sched.c in the appropriate directory; 6 - Do make modules; I had misinterpreted your #5 above. I did as it said, and copied rt_sched.c into rtlinux/kernel. I was rather surprised at first when the make started to produce a stream of unresolved references. That is, until it occurred to me that you meant to copy your rt_sched.c over rt_prio_sched.c, thus causing make to build _your_ scheduler. This was a mistake which came out of a bad habit of mine, namely being overly literal. However, since you requested feedback, I felt I could perhaps suggest that mistake could be prevented if #5 said "Copy rt_sched.c of this distribution into the file rt_prio_sched.c, thus overwriting it." Please do not regard this as a complaint: it is not. It's only my suggestion for helping "idiot proof" your instructions. (In reality you can't idiot proof anything because idiots are so *!$@# ingenious.) Everything worked well, and I had no real problems along the way. Thanks again for sending me this material. It will be helpful. I hope what I've written here will be helpful to you and that the level of detail is not excessive for you. Thanks again for your courtesy. Rich B.