We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello,
I was wondering if any of you uses RTX with a tick rate faster than 10 milliseconds. Franc Urbanc, RTX's author, recommends this setting but I am not sure why - a context switch overhead of a LPC2478 running at 72[MHz] will be about 6 microseconds. However, when we try to set the tick rate to 1 millisecond or 100 microsecond, RTX seems to hang after about 10 minutes (when at 100 microseconds) in this code:
void os_put_prio (P_XCB p_CB, P_TCB p_task) { /* Put task identified with "p_task" into list ordered by priority. */ /* "p_CB" points to head of list; list has always an element at end with */ /* a priority less than "p_task->prio". */ . . . /* Search for an entry in the list */ while (p_CB2 != NULL && prio <= p_CB2->prio) { p_CB = (P_XCB)p_CB2; p_CB2 = p_CB2->p_lnk; }
sometimes, we see only one entry in the linked list whose left and right pointer point to the entry itself, resulting in a system deadlock. Yes, we probably can get away with a tick rate of 10 milliseconds, but I would appreciate your insight anyway.
HI.
we r using the str9 @ 96MHz and teh rtx tick is 1ms
won of uor dev board has been running for 37 days continuos and keeps going.
Always yo're freind.
Zeusti.
I use a LM3S6965 based board with a tick of 1ms and all is running fine.
Viktor,
Are you using the isr_xxx functions in your product?
yo'll probably ignore me agin but i give info anyway
14 tasks'. 5 irq's. and fiq. 3 irqs' call isr_xxx funcs.
this is a public forum, Zeusti. you cannot always expect personal treatment. I have read your comments with interest, however I managed to break RTX. Keil is informed.
Zeusti,
Lately you seem to excel in finding my mistakes. Why don't you try that again using the public link to my test program (the first link might not work for non-dropbox members)? I'm curious if this is indeed my mistake or RTX's. General comment: the program's tick rate is 50 microseconds to make it fail fast. A tick rate of 1000 microsecond will cause a failure within 1 or 2 minutes.
Tapeer,
we follow yo're thread with interest. i have alredy took yo're code :)
we hope the solution is found soon. we all must have confidence in the rtx and the problem must be understood. this is very important.
anothar (not arm and dull) project is keeping us very very busy at the moment. but i hope to try yo're code soon.
Yes, I use isr_xxx functions