scheduling problem

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

scheduling problem

vasantha.rajan
Hi,

 We use Ecos and lwip_stack to develop our application.

 I have some doubts.

 1.What is the difference bewteen threads resumed before scheduler_start()
 and threads resumed after scheduler_start().

 2.has the scheduler have control over the threads resumed before
 scheduler_start()?? If not how these threads are controlled and scheduled.

 3.I have resumed a thread before scheduler_start() (only thread my
 application has) and used cyg_thread_delay(),but my program got struck at
 that point (i guess the code checks for pending DSR's.... but I am not
 sure)

 Plz reply

 Regards
 vasanth



--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

Reply | Threaded
Open this post in threaded view
|

Re: scheduling problem

Gary Thomas
On Wed, 2005-12-21 at 19:06 +0530, vasantha.rajan wrote:

> Hi,
>
>  We use Ecos and lwip_stack to develop our application.
>
>  I have some doubts.
>
>  1.What is the difference bewteen threads resumed before scheduler_start()
>  and threads resumed after scheduler_start().
>
>  2.has the scheduler have control over the threads resumed before
>  scheduler_start()?? If not how these threads are controlled and scheduled.
>
>  3.I have resumed a thread before scheduler_start() (only thread my
>  application has) and used cyg_thread_delay(),but my program got struck at
>  that point (i guess the code checks for pending DSR's.... but I am not
>  sure)

These are all the same question :-)

In eCos, no threads other than the main/initial thread are
run until the scheduler is started.  This happens either explicitly
(you write the call) or implicitly when cyg_user_start() completes.
When you resume a thread, you are simply making it possible for it
to run, but this does not happen until the scheduler is started.

Similarly, DSR functions will not be called until the scheduler is
running (since they are called as part of the scheduling 'loop')

--
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss