18,11 → 18,11 |
|
/** |
------------ |
CVS : $Id: edfstar.c,v 1.2 2002-10-28 08:16:09 pj Exp $ |
CVS : $Id: edfstar.c,v 1.3 2002-11-11 08:17:59 pj Exp $ |
|
File: $File$ |
Revision: $Revision: 1.2 $ |
Last update: $Date: 2002-10-28 08:16:09 $ |
Revision: $Revision: 1.3 $ |
Last update: $Date: 2002-11-11 08:17:59 $ |
------------ |
**/ |
|
55,7 → 55,9 |
#include <kernel/trace.h> |
|
/* for iqueues */ |
#include "iqueue.h" |
/* #include "iqueue.h" Now iqueues are the only queue type available |
into the kernel */ |
#include <kernel/iqueue.h> |
|
/* for BUDGET_TASK_MODEL */ |
#include "cbsstar.h" |
128,7 → 130,7 |
edfstar_printf("(E:chk)"); |
#endif |
|
if ((first = iq_queryfirst(&lev->ready)) != lev->activated) { |
if ((first = iq_query_first(&lev->ready)) != lev->activated) { |
if (lev->activated != NIL) |
level_table[ lev->scheduling_level ]-> |
guest_end(lev->scheduling_level, lev->activated); |
283,7 → 285,7 |
static void EDFSTAR_level_status(LEVEL l) |
{ |
EDFSTAR_level_des *lev = (EDFSTAR_level_des *)(level_table[l]); |
PID p = iq_queryfirst(&lev->ready); |
PID p = iq_query_first(&lev->ready); |
struct timespec temp; |
|
kern_printf("Budget number : %u\n", lev->budget); |
304,7 → 306,7 |
temp.tv_sec, |
temp.tv_nsec/1000, |
EDFSTAR_status_to_a(proc_table[p].status)); |
p = proc_table[p].next; |
p = iq_query_next(p, &lev->ready); |
} |
} |
|
553,7 → 555,7 |
/* we finally put the task in the ready queue */ |
proc_table[p].status = FREE; |
|
q_insertfirst(p,&freedesc); |
iq_insertfirst(p,&freedesc); |
|
if (lev->deadline_timer[p] != -1) { |
event_delete(lev->deadline_timer[p]); |
566,9 → 568,6 |
static void EDFSTAR_task_sleep(LEVEL l, PID p) |
{ kern_raise(XINVALID_TASK,exec_shadow); } |
|
static void EDFSTAR_task_delay(LEVEL l, PID p, TIME usdelay) |
{ kern_raise(XINVALID_TASK,exec_shadow); } |
|
/* Guest Functions |
These functions manages a JOB_TASK_MODEL, that is used to put |
a guest task in the EDFSTAR ready queue. */ |
699,9 → 698,6 |
static void EDFSTAR_guest_sleep(LEVEL l, PID p) |
{ kern_raise(XINVALID_GUEST,exec_shadow); } |
|
static void EDFSTAR_guest_delay(LEVEL l, PID p, TIME usdelay) |
{ kern_raise(XINVALID_GUEST,exec_shadow); } |
|
/* Registration functions */ |
|
/* Registration function: |
754,7 → 750,6 |
lev->l.task_endcycle = EDFSTAR_task_endcycle; |
lev->l.task_end = EDFSTAR_task_end; |
lev->l.task_sleep = EDFSTAR_task_sleep; |
lev->l.task_delay = EDFSTAR_task_delay; |
|
lev->l.guest_create = EDFSTAR_guest_create; |
lev->l.guest_detach = EDFSTAR_guest_detach; |
766,7 → 761,6 |
lev->l.guest_endcycle = EDFSTAR_guest_endcycle; |
lev->l.guest_end = EDFSTAR_guest_end; |
lev->l.guest_sleep = EDFSTAR_guest_sleep; |
lev->l.guest_delay = EDFSTAR_guest_delay; |
|
/* fill the EDFSTAR descriptor part */ |
for(i=0; i<MAX_PROC; i++) { |