Subject:
|
Re: multiple "execi" with different priorities
|
Newsgroups:
|
lugnet.robotics.rcx.legos
|
Date:
|
Wed, 21 Feb 2001 21:32:53 GMT
|
Viewed:
|
1382 times
|
| |
| |
"Athan Kostakos" <athan@icu.strath.ac.uk> writes:
> Hi,
>
> I am trying to run three different tasks, with the "execi" command. When all of
> the have the same priority=10, everything works ok.
> When I change the priority in one of them priority=11 or 12, then everything
> seems to go much slower, and sometimes the RCX hangs.
> I use the command:
> execi(&process,0,NULL,10,DEFAULT_STACK_SIZE);
>
> Is there a problem with the way I use the command?
That line seems ok to me. Setting priority for a task above 10 (normal
priority) may cause starvation to other tasks. This depend on what your
function process() does. If it never waits (using calls like wait_event(),
sleep(), sem_wait()...) lower priority tasks never get the CPU again and
stop.
RCX hanging should not happen simply by calling exci(). I don't know, may
be there is a deadlock or a memory location overwritten by mistake. Try to
inspect your code for such things. May be you are so lucky to have found a
kernel bug :-).
bye
Bernardo
|
|
Message is in Reply To:
| | multiple "execi" with different priorities
|
| Hi, I am trying to run three different tasks, with the "execi" command. When all of the have the same priority=10, everything works ok. When I change the priority in one of them priority=11 or 12, then everything seems to go much slower, and (...) (24 years ago, 21-Feb-01, to lugnet.robotics.rcx.legos)
|
5 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|