X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;ds=sidebyside;f=bertos%2Fbenchmark%2Fkernel_footprint.c;h=b3cd04582a9483e9f733f660c224ea0e3529cd5c;hb=7a613efa9f80222fa9642bfb6a249972c7ae6c6e;hp=111b7910b4191dcb23f827120dbca59e6ac48350;hpb=e35d406ad6b59984f63a70a8df0e56d665557327;p=bertos.git diff --git a/bertos/benchmark/kernel_footprint.c b/bertos/benchmark/kernel_footprint.c index 111b7910..b3cd0458 100644 --- a/bertos/benchmark/kernel_footprint.c +++ b/bertos/benchmark/kernel_footprint.c @@ -44,6 +44,7 @@ #include #include #include +#include MsgPort in_port; @@ -66,22 +67,30 @@ static NORETURN void proc1_main(void) void kernel_footprint(void) { - init(); + init(); // generate code for process - struct Process *p = proc_new(proc1_main, 0, sizeof(proc1_stack), proc1_stack); - proc_setPri(p, 5); - proc_yield(); + struct Process *p = + proc_new(proc1_main, 0, sizeof(proc1_stack), proc1_stack); + proc_setPri(p, 5); + proc_yield(); // generate code for msg - Msg msg; - msg_initPort(&in_port, event_createSignal(p, SIG_USER1)); - msg_put(&in_port, &msg); - msg_peek(&in_port); - Msg *msg_re = msg_get(&in_port); - msg_reply(msg_re); + Msg msg; + msg_initPort(&in_port, event_createSignal(p, SIG_USER1)); + msg_put(&in_port, &msg); + msg_peek(&in_port); + Msg *msg_re = msg_get(&in_port); + msg_reply(msg_re); - // generate code for signals - sig_send(p, SIG_USER0); - sig_wait(SIG_USER0); + // generate code for signals + sig_send(p, SIG_USER0); + + // generate code for msg + Semaphore sem; + sem_init(&sem); + sem_obtain(&sem); + sem_release(&sem); + + sig_wait(SIG_USER0); }