This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
eCos scheduler
- From: gerardo dot rossi at studenti dot univr dot it
- To: ecos-discuss at sourceware dot org
- Cc: mirkomassi at tiscali dot it
- Date: Wed, 9 Nov 2005 17:02:18 +0100
- Subject: [ECOS] eCos scheduler
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