- 321 名前:名前は開発中のものです。 mailto:sage [2007/09/02(日) 23:14:50 ID:O3956k1d]
- せっかくなのでリストを使わないタスクをネタ代わりに投下
てきとーに作っただけなので、コンパイルすらしてないけどなw #define MAX_TASK 256; struct tcb{ void (*proc)(tcb*); //処理関数 int work[10]; //ワーク }; tcb* make((void (*proc)(tcb*)){ //生成 for(int i=0;i<MAX_TASK;i++){ if(TCB[i].proc == null){ TCB[i].proc = proc; return &TCB[i]; } } return null; } void del(tcb* deltcb ){ deltcb->proc = null; } void exec(){ //実行 for(int i=0;i<MAX_TASK;i++){ if(TCB[i].proc != null)TCB[i].proc(&TCB[i]); } } tcb TCB[MAX_TASK];
|

|