threadx - Page 2

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
Re: threadx
says...
Quoted text here. Click to load it


Well, no, it isn't quite that simple.  There is a priority scheduler
involved.
It's necessary to find the highest priority task that is ready to run.
It's necessary to place the task being preempted into a queue.
It's necessary to be able to handle external interrupts under the
control of the OS.
The implementation and speed of this varies between RTOS's.

--Gene




Re: threadx

Quoted text here. Click to load it

I know there are some weird priority schedulers arround :-)

Quoted text here. Click to load it

Ok, lets put it this way: All RTOS with an O(1) scheduler offer fast
taskswitching. On most (if not all) 32Bit CPUs saving/restoring the
register-set takes more time than finding the next task to run.

E.g. ARM5TE with an RTOS with 32 priorities (Sciopta, OSE Epsilon):
Finding the next ready process takes 4 cycles.
But saving and restoring the tasks working registers takes at least 2
times 10 cycles (assuming to save only registers not previously saved
due to a system-call).

And I am pretty sure any RTOS (w/o MMU) is as fast as those two.

Quoted text here. Click to load it
This may vary but I'd say it's effect is hidden by other things, like
RAM/Flash speed.

Quoted text here. Click to load it

This will have no effect on the task-switching times.

Quoted text here. Click to load it

Yes, but I think that RTOS users should not look at the pure
task-switch time because of the reason above.

The real thing is more interresting: That is sending data from one
process/task to another.
--
42Bastian
Do not email to snipped-for-privacy@yahoo.com, it's a spam-only account :-)
We've slightly trimmed the long signature. Click to see the full one.

Site Timeline