21 class SchedulerConfiguration;
28 static void buildSystem(std::shared_ptr<SchedulerConfiguration> conf);
68 std::string reportsFolder;
69 std::shared_ptr<SchedulerConfiguration> conf;
75 std::vector<std::shared_ptr<Process>> staticTaskSet;
77 long long int jobsArrivalCount;
static void buildSystem(std::shared_ptr< SchedulerConfiguration > conf)
void updateTemperature(double timeInterval)
updates and logs the temperature of the processor. This function has to be called at least every time...
void addRealTimeTask(std::shared_ptr< Process > p)
add a real-time task to the system's list
static System * getInstance()
long long int getJobsArrivalCount()
returns the number of jobs issued since the beginning of the simulation
void printProcessesReport()
TaskScheduler * getScheduler()
returns the task scheduler object
void incrementJobsArrivalCount()
increments the number of jobs issued since the beginning of simulation
Processor * getProc()
return the processor
std::vector< std::shared_ptr< Process > > getStaticTaskSet()
get the list of real-time tasks in the system
void updateFreq()
invokes the frequency governor to changes the frequency of the processor