public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] IPv6 stacks
@ 2001-09-16 23:22 Gustav Kälvesten
  2001-09-16 23:45 ` [ECOS] ecos scheduler Sunil Mohan Savanur
  2001-09-18 13:23 ` [ECOS] IPv6 stacks Jonathan Larmour
  0 siblings, 2 replies; 12+ messages in thread
From: Gustav Kälvesten @ 2001-09-16 23:22 UTC (permalink / raw)
  To: ecos-discuss

Hello,

- Which and which version of the BSD IP-stacks is the ECOS stack based on?

- What is the level of the IPv6 support of the ECOS TCP/IP stack? It is listed as non-supported but is it functional? What is included/missing?

- Are there any successful ports of other more (maybe) complete IPv6 stacks to ECOS? E.g. www.kame.net

- What was the main issues then porting the current TCP/IP stack to ECOS? 

- Are there any short-cuts to take now then one BSD stack has been ported to ECOS if porting another similar stack?

with kind regards
Gustav Kalvesten

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [ECOS] ecos scheduler
  2001-09-16 23:22 [ECOS] IPv6 stacks Gustav Kälvesten
@ 2001-09-16 23:45 ` Sunil Mohan Savanur
  2001-09-18 13:25   ` Jonathan Larmour
  2001-09-18 13:23 ` [ECOS] IPv6 stacks Jonathan Larmour
  1 sibling, 1 reply; 12+ messages in thread
From: Sunil Mohan Savanur @ 2001-09-16 23:45 UTC (permalink / raw)
  To: ecos-discuss

Hello All,

I am running eCos1.3.1 library (libtarget.a) under synthetic linux (redhat 6.2).
My question is
1. Does libtarget.a library contain eCos scheduler? (target is synthetix linux)
2. When my application built with libtarget.a runs, which scheduler it uses
    a. eCos scheduler ( within libtarget.a)   OR
    b. Synthetic linux scheduler.

Thanks & regards
Sunil Savanur

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ECOS] IPv6 stacks
  2001-09-16 23:22 [ECOS] IPv6 stacks Gustav Kälvesten
  2001-09-16 23:45 ` [ECOS] ecos scheduler Sunil Mohan Savanur
@ 2001-09-18 13:23 ` Jonathan Larmour
  1 sibling, 0 replies; 12+ messages in thread
From: Jonathan Larmour @ 2001-09-18 13:23 UTC (permalink / raw)
  To: Gustav Kälvesten; +Cc: ecos-discuss

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1346 bytes --]

Gustav Kälvesten wrote:
> 
> Hello,
> 
> - Which and which version of the BSD IP-stacks is the ECOS stack based on?

The default one is OpenBSD.

> - What is the level of the IPv6 support of the ECOS TCP/IP stack? It is listed as non-supported but is it functional? What is included/missing?

Finishing the eCos port to include the IPv6 files. Most of those are
currently not even present...
 
> - Are there any successful ports of other more (maybe) complete IPv6 stacks to ECOS? E.g. www.kame.net

Not that we're aware of, although (if a customer came along) Red Hat would
love to do it.

> - What was the main issues then porting the current TCP/IP stack to ECOS?

Removing the dependencies on the rest of the kernel. But note that this
stack wasn't ported very "cleanly". There are many issues, like namespace
issues and non-portable header files, that could cause people problems on
certain targets.
 
> - Are there any short-cuts to take now then one BSD stack has been ported to ECOS if porting another similar stack?

Use the io/eth layer, but don't be afraid of improving the API: there's
lots of improvements that could be made to reduce the number of copies, for
example.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ECOS] ecos scheduler
  2001-09-16 23:45 ` [ECOS] ecos scheduler Sunil Mohan Savanur
@ 2001-09-18 13:25   ` Jonathan Larmour
  0 siblings, 0 replies; 12+ messages in thread
From: Jonathan Larmour @ 2001-09-18 13:25 UTC (permalink / raw)
  To: Sunil Mohan Savanur; +Cc: ecos-discuss

Sunil Mohan Savanur wrote:
> 
> Hello All,
> 
> I am running eCos1.3.1 library (libtarget.a) under synthetic linux (redhat 6.2).
> My question is
> 1. Does libtarget.a library contain eCos scheduler? (target is synthetix linux)

Yes.

> 2. When my application built with libtarget.a runs, which scheduler it uses
>     a. eCos scheduler ( within libtarget.a)   OR
>     b. Synthetic linux scheduler.

The eCos scheduler - the synthetic target uses a Linux alarm to simulate
clock interrupts.
 
> Information transmitted by this E-MAIL is proprietary to Wipro and/or its > Customers
> and is intended for use only by the individual or entity to which it is
> addressed,

I'm not sure that's an appropriate signature for a public mailing list.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ECOS] eCos scheduler
  2005-11-09 16:06 gerardo.rossi
@ 2005-11-09 16:33 ` Fabian Scheler
  0 siblings, 0 replies; 12+ messages in thread
From: Fabian Scheler @ 2005-11-09 16:33 UTC (permalink / raw)
  To: gerardo.rossi; +Cc: ecos-discuss, mirkomassi

Hello,

this topic has already been discussed here:
http://sourceware.org/ml/ecos-discuss/2005-10/msg00159.html
maybe the arguments announced there can help you

some comments:
- to implement the EDF scheduler on top of the bitmap scheduler is a
rather poor solution (as is to use the mlq-scheduler), how would you
handle more than 32 Threads with different priorities?
- you should implement a priority queue that is able to distinguish an
arbitrary number of different priorities t.m. deadlines (something
like a heap)
- about redirecting the calls: it is not that easy to 'redirect' the
calls, each scheduler has one scheduler specific class
Cyg_Scheduler_Implementation, if you want your EDF scheduler to be the
'standard' scheduler and want to use the bitmap scheduler as base,
then you have at least to rename the class
Cyg_Scheduler_Implementation implementing the bitmap scheduler
- if you make up your mind about the scheduleability of you system
before runtime you can maybe omit the thread attributes wcet and
period

Ciao, Fabian

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [ECOS] eCos scheduler
@ 2005-11-09 16:06 gerardo.rossi
  2005-11-09 16:33 ` Fabian Scheler
  0 siblings, 1 reply; 12+ messages in thread
From: gerardo.rossi @ 2005-11-09 16:06 UTC (permalink / raw)
  To: ecos-discuss; +Cc: mirkomassi

Currently available eCos schedulers do not have the notion of periods and
deadlines, and all of them are fixed priority-based schedulers. We have to
implement a dynamic priority based scheduler in eCos, based on the earliest
deadline first (EDF) policy. Priorities are therefore assigned at run time
based on the tasks' deadlines.
So we have to modify the thread data-structure in eCos kernel to add following
informations:
- Worst Case Execution Time;
- Period;
- Deadline.

but we don't know where thread data-structure is defined, can you help us?
Have we to modify the following code in kapi.h ?
typedef struct
{
    cyg_handle_t        handle;
    cyg_uint16          id;
    cyg_uint32          state;
    char                *name;
    cyg_priority_t      set_pri;
    cyg_priority_t      cur_pri;
    cyg_addrword_t      stack_base;
    cyg_uint32          stack_size;
    cyg_uint32          stack_used;

    /* added fields */
    cyg_tick_count_t wcet;
    cyg_tick_count_t period;
    cyg_tick_count_t dline;

} cyg_thread_info;

We have to implement our EDF scheduler on top of the Bitmap scheduler.
How can we have all the calls to the native Bitmap scheduler captured by our EDF
scheduler, which first modifies the priorities of individual thread based on
their respective deadlines and then calls the Bitmap scheduler ?

Thanks
  Mirko, Gerardo.


----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [ECOS] eCos scheduler
@ 2004-12-03 12:10 Meulendijks, J.
  0 siblings, 0 replies; 12+ messages in thread
From: Meulendijks, J. @ 2004-12-03 12:10 UTC (permalink / raw)
  To: 'ecos-discuss@sources.redhat.com'

Hi all,

I have the following situation:
ThreadA priority 10
ThreadB priority 11

When eCos starts up I let threadB and after some time an alarm goes off which
enables threadA (cyg_thread_resume(ThreadA);)
Now ThreadA should get run (higher priority) but something goes wrong does
anybody has any idea what could be the problem?

The call to cyg_thread_resume(ThreadA) returns to the alarm function but after
the alarm function is done something goes wrong because ThreadA will never be
executed..

Thanks in advance...

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ECOS] eCos scheduler
  2004-11-11 15:19 Meulendijks, J.
@ 2004-11-11 15:50 ` Andrew Lunn
  0 siblings, 0 replies; 12+ messages in thread
From: Andrew Lunn @ 2004-11-11 15:50 UTC (permalink / raw)
  To: Meulendijks, J.; +Cc: 'ecos-discuss@sources.redhat.com'

On Thu, Nov 11, 2004 at 04:05:16PM +0100, Meulendijks, J. wrote:
> I checked in the ecos configuration and if I'm right then the clock should be
> running. Is there an other way to figure out if the clock really is running??

Run the tests i suggested. clocktruth and the other clock tests will
soon tell you if the clock is not working.

        Andrew

> 
> -----Original Message-----
> From: Andrew Lunn [mailto:andrew@lunn.ch]
> Sent: donderdag 11 november 2004 14:06
> To: Meulendijks, J.
> Cc: 'ecos-discuss@sources.redhat.com'
> Subject: Re: [ECOS] eCos scheduler
> 
> 
> On Thu, Nov 11, 2004 at 01:13:14PM +0100, Meulendijks, J. wrote:
> > Hi all,
> > 
> 
> > I have a question about time slicing. When I create two threads (A
> > and B) the scheduler will first run thread A (for example) and if
> > thread A has nothing to do any more thread B is executed. But when
> > thread A always has something to do thread B will never be executed!
> > Why?
> > I have enabled the mlqueue scheduler, both A and B have priority 4 and time
> > slicing is enabled.
> 
> With this setup both should get to run, with a time slice of 50ms by
> default. If timeslicing is not happening it could be your clock is not
> working. Try running the kernel test program thread2 and clocktruth.
> 
>         Andrew

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* RE: [ECOS] eCos scheduler
@ 2004-11-11 15:19 Meulendijks, J.
  2004-11-11 15:50 ` Andrew Lunn
  0 siblings, 1 reply; 12+ messages in thread
From: Meulendijks, J. @ 2004-11-11 15:19 UTC (permalink / raw)
  To: 'Andrew Lunn'; +Cc: 'ecos-discuss@sources.redhat.com'

I checked in the ecos configuration and if I'm right then the clock should be
running. Is there an other way to figure out if the clock really is running??

-----Original Message-----
From: Andrew Lunn [mailto:andrew@lunn.ch]
Sent: donderdag 11 november 2004 14:06
To: Meulendijks, J.
Cc: 'ecos-discuss@sources.redhat.com'
Subject: Re: [ECOS] eCos scheduler


On Thu, Nov 11, 2004 at 01:13:14PM +0100, Meulendijks, J. wrote:
> Hi all,
> 

> I have a question about time slicing. When I create two threads (A
> and B) the scheduler will first run thread A (for example) and if
> thread A has nothing to do any more thread B is executed. But when
> thread A always has something to do thread B will never be executed!
> Why?
> I have enabled the mlqueue scheduler, both A and B have priority 4 and time
> slicing is enabled.

With this setup both should get to run, with a time slice of 50ms by
default. If timeslicing is not happening it could be your clock is not
working. Try running the kernel test program thread2 and clocktruth.

        Andrew

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* RE: [ECOS] eCos scheduler
@ 2004-11-11 14:00 Meulendijks, J.
  0 siblings, 0 replies; 12+ messages in thread
From: Meulendijks, J. @ 2004-11-11 14:00 UTC (permalink / raw)
  To: 'Andrew Lunn', Meulendijks, J.
  Cc: 'ecos-discuss@sources.redhat.com'

Yes, that is what I thought. I believe that my clock is not running so now I'm
figuring out why it isn't running. Thanks a lot now I know I didn't miss
anything...

-----Original Message-----
From: Andrew Lunn [mailto:andrew@lunn.ch]
Sent: donderdag 11 november 2004 14:06
To: Meulendijks, J.
Cc: 'ecos-discuss@sources.redhat.com'
Subject: Re: [ECOS] eCos scheduler


On Thu, Nov 11, 2004 at 01:13:14PM +0100, Meulendijks, J. wrote:
> Hi all,
> 

> I have a question about time slicing. When I create two threads (A
> and B) the scheduler will first run thread A (for example) and if
> thread A has nothing to do any more thread B is executed. But when
> thread A always has something to do thread B will never be executed!
> Why?
> I have enabled the mlqueue scheduler, both A and B have priority 4 and time
> slicing is enabled.

With this setup both should get to run, with a time slice of 50ms by
default. If timeslicing is not happening it could be your clock is not
working. Try running the kernel test program thread2 and clocktruth.

        Andrew

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [ECOS] eCos scheduler
  2004-11-11 13:06 [ECOS] eCos scheduler Meulendijks, J.
@ 2004-11-11 13:08 ` Andrew Lunn
  0 siblings, 0 replies; 12+ messages in thread
From: Andrew Lunn @ 2004-11-11 13:08 UTC (permalink / raw)
  To: Meulendijks, J.; +Cc: 'ecos-discuss@sources.redhat.com'

On Thu, Nov 11, 2004 at 01:13:14PM +0100, Meulendijks, J. wrote:
> Hi all,
> 

> I have a question about time slicing. When I create two threads (A
> and B) the scheduler will first run thread A (for example) and if
> thread A has nothing to do any more thread B is executed. But when
> thread A always has something to do thread B will never be executed!
> Why?
> I have enabled the mlqueue scheduler, both A and B have priority 4 and time
> slicing is enabled.

With this setup both should get to run, with a time slice of 50ms by
default. If timeslicing is not happening it could be your clock is not
working. Try running the kernel test program thread2 and clocktruth.

        Andrew

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [ECOS] eCos scheduler
@ 2004-11-11 13:06 Meulendijks, J.
  2004-11-11 13:08 ` Andrew Lunn
  0 siblings, 1 reply; 12+ messages in thread
From: Meulendijks, J. @ 2004-11-11 13:06 UTC (permalink / raw)
  To: 'ecos-discuss@sources.redhat.com'

Hi all,

I have a question about time slicing. When I create two threads (A and B) the
scheduler will first run thread A (for example) and if thread A has nothing to
do any more thread B is executed. But when thread A always has something to do
thread B will never be executed! Why?
I have enabled the mlqueue scheduler, both A and B have priority 4 and time
slicing is enabled.
Can you give me the steps which has to be taken to make eCos preemptive? Maybe
I'm missing something.
Thanks in advance.

Jeroen

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2005-11-09 16:33 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-09-16 23:22 [ECOS] IPv6 stacks Gustav Kälvesten
2001-09-16 23:45 ` [ECOS] ecos scheduler Sunil Mohan Savanur
2001-09-18 13:25   ` Jonathan Larmour
2001-09-18 13:23 ` [ECOS] IPv6 stacks Jonathan Larmour
2004-11-11 13:06 [ECOS] eCos scheduler Meulendijks, J.
2004-11-11 13:08 ` Andrew Lunn
2004-11-11 14:00 Meulendijks, J.
2004-11-11 15:19 Meulendijks, J.
2004-11-11 15:50 ` Andrew Lunn
2004-12-03 12:10 Meulendijks, J.
2005-11-09 16:06 gerardo.rossi
2005-11-09 16:33 ` Fabian Scheler

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).