18,11 → 18,11 |
|
/* |
------------ |
CVS : $Id: test7.c,v 1.1 2003-06-18 08:16:00 trimarchi Exp $ |
CVS : $Id: test7.c,v 1.2 2003-08-01 13:20:38 trimarchi Exp $ |
|
File: $File$ |
Revision: $Revision: 1.1 $ |
Last update: $Date: 2003-06-18 08:16:00 $ |
Revision: $Revision: 1.2 $ |
Last update: $Date: 2003-08-01 13:20:38 $ |
------------ |
|
this test shows a set of 5 tasks (+main+dummy+keyboard driver). |
70,8 → 70,8 |
#include "modules/cabs.h" |
|
#include "modules/pi.h" |
#include "modules/nop.h" |
|
|
// -------------------------------------------------- |
// -------------------------------------------------- |
// Init Part |
93,8 → 93,8 |
EDF_register_level(EDF_ENABLE_ALL); |
|
cbsstar_level = CBSSTAR_register_level(3, 0); |
mybudget = CBSSTAR_setbudget(cbsstar_level, 10000, 100000); |
mybudget1 = CBSSTAR_setbudget(cbsstar_level, 10000, 70000); |
mybudget = CBSSTAR_setbudget(cbsstar_level, 15000, 30000); |
mybudget1 = CBSSTAR_setbudget(cbsstar_level, 14000, 56000); |
posixstar_level = POSIXSTAR_register_level(mybudget, cbsstar_level, 3000,1); |
posixstar_level1 = POSIXSTAR_register_level(mybudget1, cbsstar_level, 5000,1); |
RR_register_level(RRTICK, RR_MAIN_YES, mb); |
105,7 → 105,7 |
|
//SEM_register_module(); |
PI_register_module(); |
|
NOP_register_module(); |
return TICK; |
} |
|
159,10 → 159,10 |
for (i=0;i<5; i++) { |
for (j=0; j<10; j++); |
//sem_wait(&s); |
mutex_lock(&s); |
//mutex_lock(&s); |
cputc('°'); |
cputs((char *)arg); |
mutex_unlock(&s); |
//mutex_unlock(&s); |
//sem_post(&s); |
} |
|
183,7 → 183,7 |
nrt_task_default_model(m1); |
nrt_task_def_group(m1, 1); |
nrt_task_def_level(m1,2); |
nrt_task_def_arg(m1,(void *)"#"); |
nrt_task_def_arg(m1,(void *)"A"); |
nrt_task_def_weight(m1,0); |
p1a = task_create("a",star,&m1,NULL); |
if (p1a == -1) { |
191,8 → 191,7 |
sys_abort(-1); |
} |
|
nrt_task_def_level(m1,1); |
nrt_task_def_arg(m1,(void *)"+"); |
nrt_task_def_arg(m1,(void *)"B"); |
nrt_task_def_group(m1, 1); |
nrt_task_def_level(m1,2); |
p1b = task_create("b", star, &m1, NULL); |
201,20 → 200,49 |
sys_end(); |
} |
|
nrt_task_def_arg(m1,(void *)"1"); |
nrt_task_def_group(m1, 1); |
nrt_task_def_level(m1,2); |
|
p1c[5] = task_create("1", star, &m1, NULL); |
if (p1c[5] == -1) { |
perror("Could not create task b ..."); |
sys_end(); |
} |
|
nrt_task_def_arg(m1,(void *)"Q"); |
|
nrt_task_def_arg(m1,(void *)"C"); |
nrt_task_def_group(m1, 1); |
nrt_task_def_level(m1,3); |
nrt_task_def_level(m1,2); |
|
p1c[0] = task_create("c", star, &m1, NULL); |
p1c[4] = task_create("c", star, &m1, NULL); |
if (p1c[4] == -1) { |
perror("Could not create task b ..."); |
sys_end(); |
} |
|
nrt_task_def_arg(m1,(void *)"D"); |
nrt_task_def_group(m1, 1); |
nrt_task_def_level(m1,2); |
|
p1c[5] = task_create("d", star, &m1, NULL); |
if (p1c[5] == -1) { |
perror("Could not create task b ..."); |
sys_end(); |
} |
|
nrt_task_def_arg(m1,(void *)"E"); |
nrt_task_def_group(m1, 1); |
nrt_task_def_level(m1,2); |
|
p1c[0] = task_create("e", star, &m1, NULL); |
if (p1c[0] == -1) { |
perror("Could not create task b ..."); |
sys_end(); |
} |
|
nrt_task_def_arg(m1,(void *)"E"); |
p1c[1] = task_create("d", star, &m1, NULL); |
nrt_task_def_arg(m1,(void *)"F"); |
p1c[1] = task_create("f", star, &m1, NULL); |
if (p1c[1] == -1) { |
perror("Could not create task b ..."); |
sys_end(); |
221,19 → 249,37 |
} |
|
|
nrt_task_def_arg(m1,(void *)"R"); |
p1c[2] = task_create("e", star, &m1, NULL); |
nrt_task_def_arg(m1,(void *)"G"); |
nrt_task_def_group(m1, 1); |
nrt_task_def_level(m1,2); |
|
p1c[2] = task_create("g", star, &m1, NULL); |
if (p1c[2] == -1) { |
perror("Could not create task b ..."); |
sys_end(); |
} |
|
nrt_task_def_arg(m1,(void *)"H"); |
p1c[3] = task_create("h", star, &m1, NULL); |
if (p1c[3] == -1) { |
perror("Could not create task b ..."); |
sys_end(); |
} |
|
nrt_task_def_arg(m1,(void *)"I"); |
p1c[4] = task_create("h", star, &m1, NULL); |
if (p1c[4] == -1) { |
perror("Could not create task b ..."); |
sys_end(); |
} |
|
|
|
hard_task_default_model(m2); |
hard_task_def_ctrl_jet(m2); |
hard_task_def_mit(m2,50000); // the budget has dline 100,000! |
hard_task_def_mit(m2,32000); // the budget has dline 100,000! |
hard_task_def_wcet(m2, 3000); |
hard_task_def_arg(m2,(void *)"Û"); |
hard_task_def_arg(m2,(void *)"X"); |
hard_task_def_group(m2,1); |
hard_task_def_periodic(m2); |
|
242,9 → 288,10 |
perror("Could not create task edf ..."); |
sys_end(); |
} |
hard_task_def_mit(m2,6000); // the budget has dline 100,000! |
|
hard_task_def_mit(m2,32000); // the budget has dline 100,000! |
hard_task_def_wcet(m2, 3000); |
hard_task_def_arg(m2,(void *)"A"); |
hard_task_def_arg(m2,(void *)"K"); |
p3 = task_create("3", edftask, &m2, NULL); |
if (p3 == -1) { |
perror("Could not create task edf ..."); |
252,7 → 299,7 |
} |
|
cprintf("stars=%d", p2); |
fineprg.tv_sec=550; |
fineprg.tv_sec=140; |
fineprg.tv_nsec=0; |
kern_event_post(&fineprg,(void(*)(void *))sys_end, NULL); |
group_activate(1); |
263,6 → 310,11 |
char c='t'; |
PI_mutexattr_t a; |
PI_mutexattr_default(a); |
|
//NOP_mutexattr_t a; |
//NOP_mutexattr_default(a); |
|
|
mutex_init(&s,&a); |
|
clear(); |
274,6 → 326,7 |
|
do { |
//c =keyb_getch(BLOCK); |
// cprintf("[]"); |
} while (c != ESC); |
|
cprintf("ESC pressed!"); |