We are planning to move our flagship product to ARM platform along with RealView RTX kernel RTOS. We have used UCOS2 RTOS for years and it has proved itself to be a very robust operating system. I would like to have expert comments on features and robustness of RealView RTX Kernel RTOS in comparison with UCOS2 RTOS robustness in preemptive multitasking environment on ARM processor.
Several years ago, I attempted to use uCOS-II. I had a difficult time configuring such a general purpose RTOS but since your people are experienced with uCOS-II that would be no problem for you. Also, at that time the uCOS-II RTOS required royalty payments for commercial use. I don't know if that is still true.
I found RTX to be easy to implement and no royalties. Also, the basic RTX is included in the ARM toolset. If you purchase the RTX library package, you get the source code for some of the library files.
Watching this formun, I have noticed some esoteric problems that I have never run into personally but I must admit my needs for an RTOS are quite basic.
I have an older copy of RTL_ARM so maybe Tamir might be a better person to answer this post. He seems quite experienced with RTL_ARM. Bradford
Hello,
RTX is easy to use and has a small RAM/ROM foot-print, in addition to good timing characteristics. the latest released version includes fixes for problems that could have caused it to fail in the past (see here:http://www.keil.com/forum/docs/thread15346.asp). another discussion that you might want to pay attention to can be found here:http://www.keil.com/forum/docs/thread15620.asp. ; Ignore the insults in this thread - it was a meaningful discussion. I Hope this helps.
One other positive thing: Keil are dedicated to this product and are quick to fix problems and address any other issue/question.
Refer to
http://www.keil.com/forum/docs/thread15620.asp
Tamir,
Are there any docs displaying comparison and differences between RTX and UCOS2 features and capability ? I could not find any thing on web.
Are there any docs displaying comparison and differences between RTX and UCOS2 features and capability ?
Not as far as I know - sorry.
I originally used UCOS-II on a 80C390 processor and ported my applications to the RTX kernel for ARM. I did this about a year ago, and it didn't actually take that long for both the processor and OS ports, maybe a month.
I would generally say UCOS-II is a bit more advanced than RTX, as RTX lacks some UCOS-II features. However with some recoding I was able to do everything I was doing in UCOS-II on RTX. I did miss UCOS-II's extra features, however I feel that RTX's integration with the Keil simulator is worth more than all of RTX's other limitations.
We did this to remove the need for re-licensing UCOS-II, as well as the better Keil simulator integration.
Stuart
one of the absolutely missing items in the RTX/uv3,4 integration is the PC per task. Why isn't it there?
One I thing could not do in RTX was suspend a task from another task, this can be easily done in uC/OS-II.
I had to result to terminating and then restarting the task, which was far from ideal in the particular circumstances.
I am not sure if this could have been done some other way? Any ideas?
Drop the thread priority very low and have a running dummy thread with higher priority making sure that the thread stays inactive?
Per that is a good idea. I would still prefer it as a feature though as I do loath to have an extra task acting as an effective second idle task.
I am going to try something dangerous as an experiment (not that I would use it in my real system!). If it is possible I am going to try and raise the idle task priority to 2 and then move other tasks to 1... and see the havoc this creates!