June 16, 2002
June 16, 2002
June 19, 2002
7.25.1 - 7.25.6
A Comparison of Common Processor Scheduling Algorithms
Mohammad B. Dadfar, Michael Brachtl, Sub Ramakrishnan
Department of Computer Science Bowling Green State University Bowling Green, Ohio 43403 Phone: (419) 372 2337 fax: 419 372 8061 email: email@example.com
This paper describes some projects given in an operating systems course that deal with processor scheduling in a multiprogramming environment. We use a Java program to simulate a number of CPU scheduling algorithms including first-come first-served, shortest process next, round robin, shortest remaining time next, highest response ratio next, and feedback queue. We describe a single processor system and explain different performance criteria including response time, turnaround time, throughput, and processor utilization. Students can use the simulator to study the impact of additional soft constraints such as deadlines on the performance of a given algorithm.
Study of operating systems concepts is an important subject area for most undergraduate computer science programs. A course on operating systems covers a range of topics including processes, CPU scheduling, concurrency, file and memory management. Where possible, hands- on programming projects can be used to enhance the learning process and to gain additional insight into the topic. This paper concerns study of CPU scheduling algorithms in an operating systems course. There are many textbooks available for teaching operating systems courses1, 2, 3, 4. In the past few years we have used different textbooks including the Applied Operating System Concepts by Silberschatz, Galvin, and Gagne that uses Java to demonstrate different concepts.
Processor scheduling can be used to create a multiprogramming environment even with a single processor. There are many possible scheduling algorithms each having different characteristics. In general efficient scheduling algorithms attempt to maximize processor utilization. We describe some projects given in an operating systems course that deal with processor scheduling. The key to multiprogramming is processor and I/O scheduling. We use a Java program to simulate a number of CPU scheduling algorithms. The program can be parameterized to show the behavior of the algorithms and for visually displaying the results of the simulation. Some of the algorithms discussed in this paper are first-come first-served, shortest process next, round robin, shortest remaining time next, highest response ratio next, and feedback queue. The algorithms described
Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright ã 2002, American Society for Engineering Education
Brachtl, M., & Ramakrishnan, S., & Dadfar, M. (2002, June), A Comparison Of Common Processor Scheduling Algorithms Paper presented at 2002 Annual Conference, Montreal, Canada. 10.18260/1-2--11224
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2002 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015