Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 391 → Rev 392

/shark/trunk/ports/first/modules/posixstar.c
118,7 → 118,7
}
}
 
if ((proc_table[p].control /* & CONTROL_CAP */) &&
if (/* (proc_table[p].control & CONTROL_CAP ) && */
(proc_table[p].avail_time <= 0)) {
while (proc_table[p].avail_time<=0)
proc_table[p].avail_time += proc_table[p].wcet;
224,7 → 224,10
if (nrt->policy == NRT_RR_POLICY) {
proc_table[p].control |= CONTROL_CAP;
}
*/
*/
#if defined POSIXSTAR_DEBUG
kern_printf("(slice %d)", proc_table[p].wcet);
#endif
if (nrt->arrivals == SAVE_ARRIVALS)
lev->nact[p] = 0;
else
254,10 → 257,7
/* ...and finally, we have to post a capacity event on exec task because the shadow_task consume
* capacity on exe task always */
if (proc_table[p].avail_time<=proc_table[exec].avail_time)
ADDUSEC2TIMESPEC(proc_table[p].avail_time ,&ty);
else
ADDUSEC2TIMESPEC(proc_table[exec].avail_time, &ty);
ADDUSEC2TIMESPEC(proc_table[exec].avail_time, &ty);
lev->cap_lev = kern_event_post(&ty,capacity_handler, lev);
level_table[lev->scheduling_level]->private_dispatch(lev->scheduling_level, p, nostop);
305,11 → 305,11
 
level_table[lev->scheduling_level]->private_epilogue(lev->scheduling_level,p);
 
POSIXSTAR_private_scheduler(lev);
//POSIXSTAR_private_scheduler(lev);
 
}
proc_table[p].status = POSIXSTAR_READY;
proc_table[exec].status = POSIXSTAR_READY;
} else
level_table[proc_table[exec].task_level]->public_epilogue(proc_table[exec].task_level,p);