#include "minithread.h" #include "synch.h" #include "mtio.h" semaphore_t sem1,sem2; void print(int i) { while(1) { semaphore_V(sem2); printf("%d\n",i); minithread_yield(); printf("%d\n",i+1); semaphore_P(sem1); } } main() { sem1 = semaphore_create(); sem2 = semaphore_create(); semaphore_initialize(sem1,0); semaphore_initialize(sem2,0); minithread_fork((proc_t) print, (arg_t) 1); while (1) { semaphore_V(sem1); printf("In main\n"); semaphore_P(sem2); } }