• Habila Mikailu
  • Agaji Iorshase
  • Blamah Nachamada
  • Ishaya Gambo
Keywords: Machine Learning, Multicore, Resource Prediction, Factored Operating System, process scheduling


The evolution of multicore technology has come with new challenges to process scheduling. An intelligent process resource requirement prediction framework in a factored operating system (FOS) was developed using machine learning. To simulate this system, an array of positive integer numbers in the interval of 1 to 10, with a maximum length of 20, was used to represent process. The properties of this array (array length and sum of the array elements) were used as the parameters of the application processes. These served as input into the machine learning network to predict the process’ size and hence, the resource requirements for each process. The framework was simulated using Java 2EE. Experimental results of the framework showed that prediction of processes’ sizes with enhanced resource requirement allocation, and hence, required faster and efficient scheduling of processes to multiple resource cores, with an increased system throughout.


Amur, H. R., Gautham, R. S., Dipankar, S. & Srivatsa, V. (2008). Plimsoll: a DVS Algorithm Hierarchy. https://www.academia.edu/7901429/Plimsoll_a_DVS_Algorithm_Hierarchy.

Courtial, F. (2017). Deep Neural Networks from Scratch. Retrieved on 7th July, 2019, from https://matrices.io/deep-neural-network-from-scratch/

David, F. (1989). Allocating modules to processors in a distributed system.IEEE Transactions, 15(11): 1427-1436. DOI: https://doi.org/10.1109/32.41334

Helmy, T., Al-Azani, S. & Bin-Obaidellah, O. (2015). A Machine Learning-Based Approach to Estimate the CPU-Burst Time for Processes in the Computational Grids.In Third International Conference on Artificial Intelligence, Modelling and Simulation. Retrieved on 19th July, 2019, fromhttp://uksim.info/aims2015/CD/data/8675a003.pdf DOI: https://doi.org/10.1109/AIMS.2015.11

Koya, B. K. (2017). An Interactive Tutoring System to Teach CPU Scheduling Concepts in an Operating System Course. MSc. Thesis. Computer Science and Engineering. Wright State University, India). Retrieved from https://corescholar.libraries.wright.edu/cgi/iewcontent.cgi?article=2885&context=etd_all.

Laplante, P. & Milojicic, D. (2016). Rethinking Operating Systems for Rebooted Computing.IEEE International Conference on Rebooting Computing (ICRC). Retrieved from https://ieeexplore.ieee.org/abstract/document/7738695/authors DOI: https://doi.org/10.1109/ICRC.2016.7738695

Negi, A. & Kishore, K. P. (2005). Applying machine learning techniques to improve Linux process scheduling. In TENCON IEEE, Region 10, pages 16. Retrieved on 19th May, 2019, from http://alumni.cs.ucr.edu/~kishore/papers/tencon.pdf DOI: https://doi.org/10.1109/TENCON.2005.300837

Negi, A. & Kishore, K. P. (2004). Characterizing Process Execution Behaviour Using Machine Learning Techniques. In DpROMWorkShop Proceedings, HiPC International Conference. Retrieved on 12th July, 2019, from http://alumni.cs.ucr.edu/~kishore/papers/hipc.pdf

Ojha, P., Siddhartha, R. T., Vani, M. & Mohit, P. T. (2015). Learning Scheduler Parameters for Adaptive preemption. Journal of Computer Science & Information Technology. Retrieved on 18th, February, 2019, from DOI: 10.5121/csit.2015.51513 DOI: https://doi.org/10.5121/csit.2015.51513

Schartl, A. (2016). Design Challenges of Scalable Operating Systems for Many-Core Architectures. Retrieved on 7th April, 2018, from http://www4.cs.fau.de/Lehre/WS16/PS_KVBK/slides/slides-schaertl.pdf

Shah, M., Nasir, S., Mahmood, A. K. & Oxley, A. (2010). Analysis and evaluation of grid scheduling algorithms using real workload traces. In Proceedings of the International Conference on Management of Emergent Digital EcoSystems, pp. 234-239.ACM. DOI: https://doi.org/10.1145/1936254.1936298

Siddha, S., Pallipadi, V. & Mallick, A. (2007). Process Scheduling Challenges in the Era of Multi-core Processors. Intel Technology Journal, 11(4): 360-369.Retrieved on 14th October, 2018, from DOI: 10.1535/itj.1104.09 DOI: https://doi.org/10.1535/itj.1104.09

Silberschatz, A., Galvin, P. B. & Gagne, G. (2013). Operating System Concepts. John Wiley and sons, Inc. USA.

Wang, Y., Li, L., Wu, Y., Yu, J., Yu, Z. & Qian, X. (2019). TPShare: A Time-Space Sharing Scheduling Abstraction for Shared Cloud via Vertical Labels. ISCA ’19: ACM Symposium on Computer Architecture, Phoenix, AZ.ACM, New York, NY, USA. Retrieved on 10th September, 2019, from https://doi.org/10.1145/1122445.1122456. DOI: https://doi.org/10.1145/3307650.3326634

Wentzlaff, D., Gruenwald, C., Beckmann, N., Modzelewski, K., Belay, A., Kasture, H., Youseff, L., Miller, J. & Agarwal, A. (2011). Fleets: Scalable services in a factored operation system. Computer Science and Artificial Intelligence Laboratory Technical Report, Massachusetts Institute of Technology, Cambridge, Ma 01239 USA.

How to Cite
MikailuH., IorshaseA., Nachamada B., & GamboI. (2023). A FRAMEWORK FOR PROCESS-RESOURCE REQUIREMENTS PREDICTION IN A FACTORED OPERATING SYSTEMS USING MACHINE LEARNING. FUDMA JOURNAL OF SCIENCES, 6(6), 289 - 295. https://doi.org/10.33003/fjs-2022-0606-1094