Skip to main content
Log in

Fair Priority Scheduling (FPS): A Process Scheduling Algorithm Based on Skip Ring Data Structure

  • Research Article - Computer Engineering and Computer Science
  • Published:
Arabian Journal for Science and Engineering Aims and scope Submit manuscript

Abstract

Our process scheduling algorithm was created with the help of circular linked list and skip ring data structures and algorithms. Skip ring data structure consists of circular link lists formed in layers which are linked in a canonical way. Time complexity of search, insertion and deletion equals to O (lgN) in an N-element skip ring data structure. Therefore, skip ring data structure is employed more effectively (O(lgN)) in circumstances where circular linked lists (O(N)) are used. In this paper, the applications of data structures such as red–black tree, binary search tree and skip ring were performed and the obtained results were compared. The obtained results demonstrated that skip ring data structure is superior to red–black tree and binary search tree. Process scheduling is the most important part of operating systems. Linux operating system (version 6.23) uses Completely Fair Scheduler for process scheduling by using red–black tree data structures, Whereas skip ring data structure can be used effectively instead of red–black tree data structure. A new algorithm for process scheduling which was called as Fair Priority Scheduling was proposed in this paper.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Aksu, M.; Karcı, A.; Yılmaz, Ş.: Level optimization in Skip List data structure. In: Proceedings of the 1st International Symposium on Innovative Technologies in Engineering and Science (ISITIES2013). pp. 389-396 (2013)

  2. Aksu, M.; Karcı, A.; Yılmaz, Ş.: Effects of P threshold values in creation of random level and to the performance of skip list data structure. Bitlis Eren Univ. J. Sci. 2(2), 148–153 (2013)

    Google Scholar 

  3. Cormen, T.; Leiserson, C.; Rivest, R.; Stein, C.: Introduction to Algorithms. MIT Press, London (2009)

    MATH  Google Scholar 

  4. McMillan, M.: Data Structures and Algorithms Using C#. Cambridge University Press, New York (2007)

    Book  MATH  Google Scholar 

  5. Shaffer, C.A.: Data Structures & Algorithm Analysis in C++. Dover Publications, Mineola (2011)

    Google Scholar 

  6. Colvin, R.; Groves, L.; Luchangco, V.; Moir, M.: Formal verification of a lazy concurrent list-based set. In: Proceedings of the Computer Aided Verification, Lecture Notes in Computer Science. 4144, 475–488 (2006)

  7. Herlihy, M.; Lev, Y.; Luchangco, V.; Shavit, N.: A simple optimistic skiplist algorithm. In: Proceedings of the Structural Information and Communication Complexity. Lecture Notes in Computer Science. 4474, pp. 124–138 (2007)

  8. Pugh, W.: Skip lists: a probabilistic alternative to balanced trees. Commun. ACM 33(6), 668–676 (1990)

    Article  Google Scholar 

  9. Kirschenhofer, P.; Prodinger, H.: The path length of random skip lists. Acta Inf. 31(8), 775–792 (1994)

    Article  MathSciNet  Google Scholar 

  10. Papadakis, T.: Skip lists and probabilistic analysis of algorithms. PhD Thesis. University of Waterloo. Tech. Report CS-93-28, (1993)

  11. Poblete, P.V.; Munro, J.I.; Papadakis, T.: The binomial transform and the analysis of skip lists. Theor.Comput. Sci. 352, 136–158 (2006)

  12. Munro, J. I.; Papadakis, T.; Poblete, P.V.: Deterministic skip lists. In: Proceedings of the SODA ’92 Proceedings of the third annual ACM-SIAM symposium on Discrete algorithms. pp. 367–375 (1992)

  13. Pugh, W.: A Skip List Cookbook. Dept. of Computer Science, University of Maryland. College Park. Technical report. CS–TR–2286.1. (1990)

  14. Pugh, W.: Concurrent Maintenance of Skip Lists. Dept. of Computer Science. University of Maryland. College Park. Technical report. TR–2222.1. (1989)

  15. Lotan, I.; Shavit, N.: SkipList-Based Concurrent Priority Queues. In: Proceedings of International Parallel and Distributed Processing Symposium. Mexico, pp. 263–268 (2000)

  16. Aspnes, J.; Shah, G.: Skip graphs. In: Proceedings of the 14th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA). pp. 384–393 (2003)

  17. Clouser, T.; Nesterenko, M.; Scheideler, C.: Tiara: a self-stabilizing deterministic skip list and skip graph. Theor. Comput. Sci. 428, 18–35 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  18. Nor, R.M.; Nesterenko, M.; Scheideler, C.: Corona: a stabilizing deterministic message-passing skip list. Theor. Comput. Sci. 512, 119–129 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  19. Bose, P.; Douïeb, K.; Morin, P.: Skip lift: a probabilistic alternative to red-black trees. J. Discrete Alg. 14, 13–20 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  20. Abraham, I.; Aspnes, J.; Yuan, J.: Skip B-trees. Principles of Distributed Systems. In: 9th International Conference. OPODIS 2005, Italy, pp. 366–380 (2005)

  21. Aksu, M.; Karcı, A.: Skip ring/circular skip list: circular linked list based new data structure. Comput. Eng. Intell. Syst. 6(5), 35–41 (2015)

    Google Scholar 

  22. Cheng, G.: A comparison of two linux schedulers. Master Thesis. Department of Informatics. University of Oslo. Oslo, Norway (2012)

  23. Dinnen, M.J.; Gimel’farb, G.; Wilson, M.C.: Introduction to Algorithms. Data Structures and Formal Languages., 2nd edn. Pearson/Prentice-Hall, Auckland (2009)

    Google Scholar 

  24. Besa, J.; Eterovic, Y.: A concurrent red-black tree. J. Parallel Distrib. Comput. 73, 434–449 (2013)

    Article  Google Scholar 

  25. Pfenning, F.: Red/Black Trees. Department of Computer Science. Carnegie Mellon University. Lecture Notes in Computer Science. pp. 2–15 (2010)

  26. Silberschatz, A.; Galvin, P.B.; Gagne, G.: Operating System Concepts, 8th edn. Wiley, Hoboken (2009)

    MATH  Google Scholar 

  27. Jones, M. T.: Inside the linux 2.6 completely fair scheduler. IBM developer Works. pp. 1–8 (2009).

  28. Kobusiński, J.; Gorski, F.; Stempin, S.: Skip ring topology in FAST failure detection service. Parall. Process. Appl. Math. 4967, 29–38 (2008)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mustafa Aksu.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Aksu, M., Karcı, A. Fair Priority Scheduling (FPS): A Process Scheduling Algorithm Based on Skip Ring Data Structure. Arab J Sci Eng 42, 677–689 (2017). https://doi.org/10.1007/s13369-016-2288-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s13369-016-2288-y

Keywords

Navigation