MCScheduling 1.0
Set of Algorithms for Solving Mixed-Criticality Scheduling
|
Generates a list of random MC instances. More...
Static Public Member Functions | |
static List < CMixedCriticalityInstance > | generate (string instanceNamePrefix, int instanceCount, int jobsCount, double[] jobPerCriticalityProb, int[] maximumExecutionTimes, int releaseTime, int deadline) |
Returns a list of generated MC instances. |
Generates a list of random MC instances.
static List<CMixedCriticalityInstance> MCScheduling.MixedCriticality.CRandomInstanceGenerator.generate | ( | string | instanceNamePrefix, |
int | instanceCount, | ||
int | jobsCount, | ||
double[] | jobPerCriticalityProb, | ||
int[] | maximumExecutionTimes, | ||
int | releaseTime, | ||
int | deadline | ||
) | [static] |
Returns a list of generated MC instances.
Each instance will be named with the specified instanceNamePrefix following with its ordinal number. The number of MC instances to generated is instanceCount and the number of jobs in an instance is specified by jobsCount. Each parameter of an MC job is assigned randomly as follows: The criticality levels of jobs are distributed according to the jobPerCriticalityProb, the execution times maxima per crit. level are given in maximumExecutionTimes and the release times are selected randomly from [0, releaseTime] and deadlines for each job as [ri, ri + deadline].
instanceNamePrefix | The prefix of the generated instances names. |
instanceCount | The number of MC instances to generate. |
jobsCount | The number of jobs in each MC instance. |
jobPerCriticalityProb | The distribution of the MC job criticality levels. |
maximumExecutionTimes | The maximum random value of an exectution time per level. |
releaseTime | The release time window. Each job's release time is set to a number in the interval [0, releaseTime]. |
deadline | The deadline span. Each job's deadline is se to a number in the interval [r, r + deadline], where r is its release time. |
A pseudo-random number generator.