## 2 Related Work
[34] developed an algorithm based on a searching scheme in which tasks are activated using fixed priorities in a way that shall result in system performance gain without violation of the system deadline constraints. The above-mentioned methods of the scheduling and manual input task design are employed for offline utilization only. To further improve the system robustness and flexibility, research studies are conducted to shift the optimisation algorithms from offline scenarios to more complex online applications. [PERSON] et al. [35] have developed an online algorithm based on an analytical solution using Lagrange multipliers to obtain schedulability conditions for the given optimisation problem. Using the estimated information regarding current state and noise conditions, [PERSON] et al. [36] developed an online algorithm for adjustment of sampling periods. In their proposed algorithm, they tried to capture the relationship among computational cost, noise factor and expected cost over finite horizon of the sampling period. They have developed an integrated scheme for detecting when the system is overloaded. The time complexity of their proposed system is deterministic, and thus the proposed method is appropriate for online applications. More recently, [PERSON] et al. [37] developed a searching-based heuristic scheme to compute near-optimal values for feasible task periods such that the overall performance of the system is maximised. The time complexity of their proposed algorithm is linear and hence suitable for online use. Period selection is a challenging problem, which is not only widely explored in the literature related to control systems, but also studied in applications related to general real-time systems. One of the most common methods used for the assigning period is the one based on harmonic periods of tasks. It has been proved experimentally that 100% CPU utilization can be achieved by the RM algorithm via harmonic period assignment [38]. Furthermore, the benefit of using a harmonic period for tasks is that it also results in smaller values for hyper-periods, which is highly desirable. The hyper-period is computed by calculating the Least Common Multiple (LCM) value of the selected periods of given tasks. A lower hyper-period is very important because it is the time interval in which the complete schedule is executed once, and then it repeats itself after each hyper-period of time. Analysis of the scheduling algorithm is usually carried out by executing the tasks' sets until one hyper-period is completed and afterwards the results will be the same as the schedule will repeat itself. Therefore, a smaller hyper-period will result in overall less execution time and memory footprint due to a reduced scheduling table. As discussed in Section 1, [PERSON] et al. [20,21] developed a model to capture the harmonic relationship between the period ranges. After calculating a harmonic sub-interval within the range of feasible periods for a given tasks' set, a harmonic period can easily be computed and assigned. To further reduce the hyper-period value for resultant harmonic period assignment, [PERSON] [39] developed a scheme based on a small adjustment in resultant periods of the given tasks. Adjusted periods of the task may not be exactly harmonic but are closely related, thus making it easy to compute the whole schedule before run time for ultimate periodic task scheduling. Similarly, while computing periods for a given tasks' set, different approaches for reducing the hyper-period are presented in [29; 40]. However, the underlying assumption for the validity of such research is that given tasks are executed over a uni-processor platform independently. However, in a real-world environment, tasks often exhibit an interactive relationship among themselves in different forms, e.g., producer-consumer relationship [41]. [PERSON] et al. conducted a research study by developing a system model in which asynchronous channels are used to connect the tasks to express their relationships [42].