public inbox for ecos-devel@sourceware.org
 help / color / mirror / Atom feed
* Re: Réf. : Twothreads.c without cyg_thread_delay
       [not found] <OF4BBC549B.0880AA12-ONC1257230.0051C779-C1257230.0051C781@faiveleytransport.com>
@ 2006-11-24 16:08 ` David Luca
  0 siblings, 0 replies; only message in thread
From: David Luca @ 2006-11-24 16:08 UTC (permalink / raw)
  To: Jean-Marc.Lopez, ecos-devel, ecos-discuss

Timeslicing is enabled by default in eCos kernel.
This is what I'm interested, to see two threads of
same priority working. Using cyg_thread_delay doesn't
mean much advantage over infinite loops because the
tasks can be very long in working time before it
reaches cyg_thread_delay. Its just a cooperative
multitasking. Timeslicing is the reason I must use
RTOS. If timeslicing is not working, then eCos is not
a true RTOS. Anyone tested timeslicing?

--- Jean-Marc.Lopez@faiveleytransport.com wrote:


---------------------------------
Hi David.
 

Excuse me but with your explanations, it's looks like
you did not manage properly  the threads priorities. 

 

It's just  a problem of Real time OS. 

 

If your 2 threads had the same priority, and Thread_1
never "give the hand" to the kernel, the Thread 2 will
never run. …Except if you configure the timeSlicing
option in your kernel. ( never done at this moment). 

 

By using a cyg_thread_delay function, we said to the 
kernel to stop the current Thread ( Thread 1 ) and to
run the Thread 2 ( or the thread who have the higtest
priority after the Thread1). 

 

By setting the timeslicing option, the kernel will
commute between the 2 threads every x ms ( depending
of your kernel configuration) even if threads have the
same priority. (but not experimented yet). 

 

 
LPZ

 
-----David Luca <davidluca3000@yahoo.com> a écrit :
-----

Pour : ecos-devel <ecos-devel@sourceware.org>,
ecos-discuss <ecos-discuss@sourceware.org>
De : David Luca <davidluca3000@yahoo.com>
Date : 24/11/2006 14:29
Objet : Twothreads.c without cyg_thread_delay





Hello,
Today I started twothreads.c application, but I
replaced printf(not working yet on my platform) with
leds. My question is, without the cyg_thread_delay, is
it possible to run concurrently the two threads?
Because if I comment this function, only one task is
running, I can see that only one led is turn on and
off.
Thank you in advance,
David Luca.



____________________________________________________________________________________

Do you Yahoo!?
Everyone is raving about the all-new Yahoo! Mail beta.
http://new.mail.yahoo.com







__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2006-11-24 16:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <OF4BBC549B.0880AA12-ONC1257230.0051C779-C1257230.0051C781@faiveleytransport.com>
2006-11-24 16:08 ` Réf. : Twothreads.c without cyg_thread_delay David Luca

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).