[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Modulo function



I was trying to use the Modulo function to control when an init_proc
script in an epoch process should run and it doesn't seem to work - the
script runs on every epoch whatever mod values are set.

On looking at the code for SchedProcess::Init_impl, the problem seems to

be that init_procs don't look at the mod.m or mod.off values.
loop_procs
and final_procs on the other hand do.  I could easily rewrite the code
for init_procs but I just thought I'd ask if there is a reason that the
code was written the way it was?

Furthermore, the GetCounter() function that is called in SchedProcess
functions appears to depend on the "cntr" member declared in
SchedProcess.
Unfortunately, cntr is typically initialized to NULL and so GetCounter()

will always return 0 and the Modulo function would fail.  I've tried
setting cntr to point to the epoch counter in the super_proc using
taBase::SetPointer((TAPtr*)&cntr, &(super_proc->epoch));
This compiles but at runtime, cntr is still set to NULL.  What's the
proper way to set this pointer?