21,11 → 21,11 |
|
/** |
------------ |
CVS : $Id: model.h,v 1.15 2004-11-08 18:04:34 trimarchi Exp $ |
CVS : $Id: model.h,v 1.16 2006-03-09 11:55:10 mauro Exp $ |
|
File: $File$ |
Revision: $Revision: 1.15 $ |
Last update: $Date: 2004-11-08 18:04:34 $ |
Revision: $Revision: 1.16 $ |
Last update: $Date: 2006-03-09 11:55:10 $ |
------------ |
|
This file contains the definitions of the task and resource models. |
251,6 → 251,7 |
#define NRT_PCLASS 3 |
#define JOB_PCLASS 4 |
#define ELASTIC_PCLASS 5 |
#define INTERRUPT_PCLASS 6 |
|
/* ----------------------------------------------------------------------- |
Useful stuffs |
258,7 → 259,6 |
|
#define PERIODIC 0 |
#define APERIODIC 1 |
#define INTDRIVE 2 |
|
#define SAVE_ARRIVALS 0 |
#define SKIP_ARRIVALS 1 |
280,6 → 280,27 |
|
|
/* ----------------------------------------------------------------------- |
INTERRUPT_TASK_MODEL: model used only for the INTDrive task |
----------------------------------------------------------------------- */ |
|
/*+ The only added field is the wcet used to check ISR overrun +*/ |
|
typedef struct { |
TASK_MODEL t; |
TIME wcet; |
} INTERRUPT_TASK_MODEL; |
|
#define interrupt_task_default_model(m) \ |
task_default_model((m).t,INTERRUPT_PCLASS), \ |
(m).wcet = 0 |
#define interrupt_task_def_level(m,l) task_def_level((m).t,l) |
#define interrupt_task_def_arg(m,a) task_def_arg((m).t,a) |
#define interrupt_task_def_system(m) task_def_system((m).t) |
#define interrupt_task_def_nokill(m) task_def_nokill((m).t) |
#define interrupt_task_def_wcet(m,w) (m).wcet = (w) |
|
|
/* ----------------------------------------------------------------------- |
HARD_TASK_MODEL: hard Tasks |
----------------------------------------------------------------------- */ |
|
326,7 → 347,6 |
#define hard_task_def_offset(m,o) (m).offset = (o) |
#define hard_task_def_periodic(m) (m).periodicity = PERIODIC |
#define hard_task_def_aperiodic(m) (m).periodicity = APERIODIC |
#define hard_task_def_interrupt(m) (m).periodicity = INTDRIVE |
#define hard_task_def_joinable(m) task_def_joinable((m).t) |
#define hard_task_def_unjoinable(m) task_def_unjoinable((m).t) |
#define hard_task_def_trace(m) task_def_trace((m).t) |
333,7 → 353,6 |
#define hard_task_def_notrace(m) task_def_notrace((m).t) |
|
|
|
/* ----------------------------------------------------------------------- |
SOFT_TASK_MODEL: Soft Tasks |
----------------------------------------------------------------------- */ |
388,6 → 407,7 |
#define soft_task_def_trace(m) task_def_trace((m).t) |
#define soft_task_def_notrace(m) task_def_notrace((m).t) |
|
|
/* ----------------------------------------------------------------------- |
NRT_TASK_MODEL: Non Realtime Tasks |
----------------------------------------------------------------------- */ |