## 3 Framework  
The proposed mechanism seeks to effectively prioritize tasks and efficiently assign them to a VM before the actual allocation of the VM to a PM. Therefore, the proposed mechanism is considered a task scheduling mechanism [37]. Figure 1 shows the proposed multi-criteria task scheduling mechanism. The first component of the framework consists of three sets of inputs to initiate the evaluation and assignment of tasks to the best-matched resources. The first set contains all available service providers (SPs) in the cloud, along with the set of important criteria used to evaluate the SPs. The second set contains all available tasks that the model needs to efficiently assign to the best-matched resources along with the criteria that the customer will use to evaluate the tasks. The last set of inputs contains all available resources in the cloud along with the criteria for evaluating these resources. \begin{table}
\begin{tabular}{c c c} \hline \hline  & **Priority of Tasks** & **When the Algorithm Is the Best Choice** \\ \hline \multirow{4}{*}{ACO} & The virtual machine is chosen for the subsequent task based on the ant iteration & \multirow{4}{*}{For task scheduling, it is the optimum option in soft real-time systems.} \\  & after tasks are arranged in either ascending or descending order. After each iteration, & \\  & the number of solutions is equal to the & \\  & number of ants. & \\ \hline \multirow{3}{*}{SJF} & Tasks are prioritized by starting with the least and working up to the greatest based on their durations. & \multirow{3}{*}{This is suitable in situations in which shorter tasks are more crucial than longer ones.} \\ \cline{1-1} \cline{3-3}  & According to the time of their arrival, the tasks are listed in the task list. & This method works well when the solution search space is small. \\ \hline \multirow{2}{*}{BWM} & The proportional relevance of the tasks & \multirow{2}{*}{This is a suitable option when the focus is on the weight of the tasks.} \\ \cline{1-1}  & determines their order of priority. & \\ \hline \hline \end{tabular}
\end{table} 
Table 1: _Cont._  
Figure 1: Framework for multi-criteria task scheduling. The second component of the framework acquires the preferences of the SPs and customers to initiate the prioritization process. These preferences are fed to the MCDM method in the next component of the framework. \"Preference\" refers what is more important to the SP (or customer) in order to help the framework find the best assignment. For example, one SP is more concerned with reputation than other criteria, while another SP prefers executing tasks with a high price, and so on. Similarly, one customer might prefer the execution of tasks with a low price over those requiring a short time, while another customer is more concerned with the availability of the service than the price, and so on. In the third component of the framework, the actual prioritization process takes place to provide the prioritized list of SPs, customers, and resources. As mentioned in the literature review, various MCDM methods, such as the AHP ([37; 38]), the ANP [35], and the BWM [16], have proven their ability in cloud task scheduling. Each MCDM method has its advantages and disadvantages. Regardless of the underlying MCDM, which can certainly influence the effectiveness of the framework, we consider the selection of a suitable MCDM method that occurs during the implementation phase of the proposed framework. When implementing the framework, it is important to select the MCDM method during the early stages. However, differences regarding the type of information needed from the decision maker, SP, or customer should be considered when selecting the MCDM method. For example, the AHP and ANP require the decision maker to give pairwise comparisons between each pair of criteria, while the BWM requires the decision maker to select the best criterion and the worst criterion and give pairwise comparisons between only the best and worst criteria and all other criteria.