class Scheduler

Schedules the jobs that run on the system.

Inheritance:


Public Methods

[more] Scheduler()
Default constructor
[more]virtual ~Scheduler()
Destructor
[more]virtual void setComputers(map<ID, Computer>* newComputers)
Gives the scheduler relevant information about computers in the system
[more]void setNetwork(Network* newNetwork)
Gives the scheuduler relevant information about the network
[more]void setQueuedEvents(QueuedEvents* newEvents)
Gives the scheduler access to events queued for execution in the system
[more]void setProcessList(map <ID, Process*>* newList)
Gives the scheduler access to process information
[more]void setPacking(const Packing newPacking)
Sets the scheduler's packing scheme
[more]void setPriority(const Priority newPriority)
Sets the scheduler's waiting queue priority scheme
[more]void setSchedulingOverhead(const TIME overhead)
Sets the amount of simulation time the scheduler spends thinking about what to do
[more]virtual void setMemoryAware(const bool value)
Sets whether the scheduler will be aware of memory constraints or not.
[more]virtual Policy getPolicy() const
Get the scheduling policy
[more]bool getMemoryAware() const
[more]virtual bool submitProcess(const Token& token)
Takes appropriate actions when the given job is submitted into the system
[more]virtual bool startProcess(const Token& token)
Takes appropriate actions when the given job starts on the system
[more]virtual bool terminateProcess(const Token& token)
Takes appropriate actions when the given job has terminated.
[more]virtual bool timeQuantumExpired()
Takes appropriate actions when the time quantum alloted to the jobs currently in the system has expired.
[more]virtual bool schedule(bool start = true)
Decides what processes should be run, and when
[more]virtual bool isCurrentlyRunning(Process* process)
[more]static Policy stringToPolicy(string str)
[more]static Priority stringToPriority(string str)
[more]static Packing stringToPacking(string str)
[more]static string policyToString(Policy pol)
[more]static string priorityToString(Priority pri)
[more]static string packingToString(Packing pack)
[more]virtual string toString() const


Documentation

Schedules the jobs that run on the system.
o Scheduler()

ovirtual ~Scheduler()

ovirtual void setComputers(map<ID, Computer>* newComputers)

ovoid setNetwork(Network* newNetwork)

ovoid setQueuedEvents(QueuedEvents* newEvents)

ovoid setProcessList(map <ID, Process*>* newList)

ovoid setPacking(const Packing newPacking)

ovoid setPriority(const Priority newPriority)

ovoid setSchedulingOverhead(const TIME overhead)

ovirtual void setMemoryAware(const bool value)
If the scheduler is aware of memory constraints, it may choose to queue jobs that would otherwise run (that is, they'd have enough processors to run)

ovirtual Policy getPolicy() const
Examples include space-sharing, backfilling, and gang scheduling

obool getMemoryAware() const
Returns:
true if the scheduler is memory aware (cares about whether paging will be invoked or not). False otherwise.

ovirtual bool submitProcess(const Token& token)
This function is one of the standared scheduling functions. Each scheduler will execute different actions when this event occurs

ovirtual bool startProcess(const Token& token)
This function is one of the standared scheduling functions. Each scheduler will execute different actions when this event occurs

ovirtual bool terminateProcess(const Token& token)
This function is one of the standared scheduling functions. Each scheduler will execute different actions when this event occurs

ovirtual bool timeQuantumExpired()
This function is one of the standared scheduling functions. Each scheduler will execute different actions when this event occurs

ovirtual bool schedule(bool start = true)
This function is one of the standared scheduling functions. Each scheduler will execute different actions when this event occurs

ovirtual bool isCurrentlyRunning(Process* process)

ostatic Policy stringToPolicy(string str)

ostatic Priority stringToPriority(string str)

ostatic Packing stringToPacking(string str)

ostatic string policyToString(Policy pol)

ostatic string priorityToString(Priority pri)

ostatic string packingToString(Packing pack)

ovirtual string toString() const
Returns:
a string representation of the scheduler object


Direct child classes:
GangSched
Author:
John Oleszkiewicz

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.