The scheduling that makes use of pre-computed schedule of all hard real time jobs i.e schedule is computed at offline before the system begins to execute and the computation is based on the knowledge of release time , processor time as well as resource requirement of all jobs for all time is called off-line scheduling. The example of offline scheduling is clock driven scheduling.
When the operation mode of the system changes, new schedule specifying when each job in new mode is also pre-computed and stored for use. The major dis advantage of offline schedule is inflexibility and only useful for deterministic system because shows deterministic timing behavior and optimize the utilization of resources up to 100%.
When the scheduler makes each scheduling decision without knowledge about the jobs that will be released in future and parameter of each job known to scheduler only after release of job then it is called online scheduling. The example of priority driven scheduling.
Online scheduling is suitable for a system whose future workload is unpredictable and there is one processor, optimal online algorithms exists.