# Fuzzy Priority CPU Scheduling Algorithm

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 386 Fuzzy CPU Scheduling Algorithm Bashir Alam 1, M.N. Doja 1, R. Biswas 3, M. Alam 4 1 Department of Computer Engineering, Jamia Millia Islamia 2 Department of Computer Engineering, Jamia Millia Islamia 3 Department of Computer Science, Jamia Hamdard New Delhi , India 4 Department of computer Science, Jamia Millia Islamia, Abstract There are several CPU scheduling algorithms like FCFS, SRTN,RR, priority etc. Scheduling decision of these algorithms are based on parameters which are assumed to be crisp. However, in many circumstances these parameters are vague. The vagueness of these parameters suggests that scheduler should use fuzzy logic in scheduling the jobs. A fuzzy priority CPU scheduling algorithm has been proposed. This proposed algorithm improves the priority based CPU scheduling algorithm as obvious from simulation results. Keywords:- FIS, CPU Scheduling, Fuzzy Logic 1. Introduction When a computer is multiprogrammed, it frequently has multiple processes competing for the CPU at the same time. When more than one process is in the ready state and there is only one CPU available, the operating system must decide which process to run first. The part of operating system that makes the choice is called term scheduler or CPU scheduler. The algorithm that it uses is called scheduling algorithm. There are several scheduling algorithms. Different scheduling algorithms have different properties and the choice of a particular algorithm may favor one class of processes over another. Many criteria have been suggested for comparing CPU scheduling algorithms and deciding which one is the best algorithm[1]. Some of the criteria include (i)fairness(ii)cpu utilization(iii)throughput(iv)turnaround time(v)waiting time(vi)response time It is desirable to maximize CPU utilization and throughput, to minimize turnaround time, waiting time and response time and to avoid starvation of any process.[1,2] Some of the scheduling algorithms are briefly described here. FCFS: In First come First serve scheduling algorithm the process that request first is scheduled for execution[1,2,3]sjf: In est Job first scheduling algorithm the process with the minimum burst time is scheduled for execution.[1,2]srtn: In est Remaining time next scheduling algorithm, the process with est remaining time is scheduled for execution.[3]: in Scheduling algorithm the process with est priority is scheduled for execution. Roundrobin: In this the CPU scheduler goes around the ready queue allocating the CPU to each process for a time interval of up to one time quantum. [1,2,3]Multilevel queue scheduling: In this the ready queue is partitioned into several separate queue. The processes are permanently assigned to one queue generally based on some property of the process such as memory size, process priority or process type. Each queue has its own scheduling algorithm. There is scheduling among the queues, which is commonly implemented as fixed-priority preemptive scheduling. Each queue has absolute priority over low priority queues.[1]multilevel feedback-queue scheduling:-

2 387 This allows a process to move between queues.[1] Fair share Scheduling: Fair share scheduler considers the execution history of a related group of processes, along with the individual execution history of each process in making scheduling decision. The user community is divided into a fair- share groups. Each group is allocated a fraction of CPU time. Scheduling is done on the basis of priority of the process, Its recent processor usage and the recent processor usages of the group to which the process belongs. Each process is assigned a base priority. The priority of a process drops as the process uses the processor and as the group to which process belongs uses the processor.[3]guaranteed scheduling:-in this a ratio of actual CPU time a process had and its entitled CPU time is calculated. The process with this lowest ratio is scheduled[2] Lottery Scheduling:-The basic idea is to give processes lottery tickets for CPU time. Whenever a scheduling decision has to be made, a lottery ticket is chosen at random and the process holding the ticket gets the CPU.[2] HRRN :- In this response ration is calculated for each process. The process with the est ratio is scheduled for execution. [3] In all the these scheduling algorithms the parameters used are crisp. However, in many circumstances these parameters are vague. To exploit these vagueness we have used fuzzy logic in our proposed scheduling algorithm. 2. Fuzzy Inference Systems and Fuzzy Logic A fuzzy inference system (FIS) tries to derive answers from a knowledgebase by using a fuzzy inference engine. The inference engine which is considered to be the brain of the expert systems provides the methodologies for reasoning around the information in the knowledgebase and formulating the results. Fuzzy logic is an extension of Boolean logic dealing with the concept of partial truth that denotes the extent to which a proposition is true. Whereas classical logic holds that everything can be expressed in binary terms (0 or 1, black or white, yes or no), fuzzy logic replaces Boolean truth values with the degree of truth. Degree of truth is often employed to capture the imprecise modes of reasoning that play an essential role in the human ability to make decisions in an environment of uncertainty and imprecision. The membership function of a fuzzy set corresponds to the indicator function of the classical sets. It can be expressed in the form of a curve that defines how each point in the input space is mapped to a membership value or a degree of truth between 0 and 1. The most common shape of a membership function is triangular, although trapezoidal and bell curves are also used. The input space is sometimes referred to as the universe of discourse [4]. Fuzzy Inference Systems are conceptually very simple. An FIS consists of an input stage, a processing stage, and an output stage. The input stage maps the inputs, such as deadline, execution time, and so on, to the appropriate membership functions and truth values. The processing stage invokes each appropriate rule and generates a result for each. It then combines the results of the rules. Finally, the output stage converts the combined result back into a specific output value [4]. The processing stage, which is called the inference engine, is based on a collection of logic rules in the form of IF-THEN statements, where the IF part is called the "antecedent" and the THEN part is called the "consequent". Typical fuzzy inference subsystems have dozens of rules. These rules are stored in a knowledgebase. An example of fuzzy IF- THEN rules is: IF Remaining is Extremely then priority is very, in which Remaining and priority are linguistics variables and Extremely and very are linguistics terms. The five steps toward a fuzzy inference are (i) fuzzifying inputs(ii) applying fuzzy operators(iii) applying implication methods(iv) aggregating outputs(v)defuzzifying results Bellow is a quick review of these steps. However, a detailed study is not in the scope of this paper. Fuzzifying the inputs is the act of determining the degree to which they belong to each of the appropriate fuzzy sets via membership functions. once the inputs have been fuzzified, the degree to which each part of the antecedent has been satisfied for each rule is known. If the antecedent of a given rule has more than one part, the fuzzy operator is applied to obtain one value that represents the result of the antecedent for that rule. The implication function then modifies that output fuzzy set to the degree specified by the antecedent. Since decisions are based on the testing of all of the rules in the Fuzzy Inference Subsystem (FIS), the results from each rule must be combined in order to make the final decision. Aggregation is the process by which the fuzzy sets that represent the outputs of each rule are processes into a single fuzzy set. The input for the defuzzification process is the aggregated output fuzzy set and the output is then a single crisp value [4]. This can be summarized as follows: mapping input characteristics to input membership functions, input membership function to rules, rules to a set of output characteristics, output characteristics to output membership functions, and the output membership function to a single crisp valued output. There are two common inference methods [4]. The first one is called Mamdani's fuzzy inference method proposed in 1975 by Ebrahim Mamdani [5] and the second one

3 388 is Takagi-Sugeno-Kang, or simply Sugeno, method of fuzzy inference introduced in 1985 [6]. These two methods are the same in many respects, such as the procedure of fuzzifying the inputs and fuzzy operators. The main difference between Mamdani and Sugeno is that the Sugeno s output membership functions are either linear or constant but Mamdani s inference expects the output membership functions to be fuzzy sets. Sugeno s method has three advantages. Firstly, it is computationally efficient, which is an essential benefit to real-time systems. Secondly, it works well with optimization and adaptive techniques. These adaptive techniques provide a method for the fuzzy modeling procedure to extract proper knowledge about a data set, in order to compute the membership function parameters that best allow the associated fuzzy inference system to track the given input/output data. The third, advantage of Sugeno type inference is that it is wellsuited to mathematical analysis. Figure 2: Membership Function for Waiting 3. The Proposed Model Static Remaining Waiting Fuzzy Inference Engine (Sugeno) 27 Rules Figure 1: Block diagram of Fuzzy Inference System Dynamic Figure 3 : Membership Function for remaining The block diagram of the proposed fuzzy inference system is given in figure1. In the proposed model, the input stage consists of three linguistic variables. The first one is the static priority that is assigned to the process before its execution. The second is the expected remaining time of the process. The third input is the waiting time of the process. The output stage consists of one linguistic variable called Dynamic priority. The input and out variables are mapped into fuzzy sets using appropriate membership functions. Membership functions are given below Figure 4: Membership Function for Static The shape of the membership function for each linguistic term is determined by the expert. Adjusting these membership functions in an optimal mode is very difficult. However, there are some techniques for adjusting membership functions [6, 8]. Twenty seven rules are formulated and a Sugeno type fuzzy Inference system is built. Some of the rules are

4 389 listed here : if the static priority is low and remaining time is extremely and waiting time is long then the dynamic priority is very. if the static priority is low and remaining time is and waiting time is then the dynamic priority is very low. if the static priority is medium and remaining time is extremely and waiting time is long then the dynamic priority is very. if the static priority is medium and remaining time is and waiting time is then the dynamic priority is medium. Table 1: Rule base for Fuzzy Inference System Figure 5: Surface view of FIS for scheduling S.No. Static Remaining Waiting Dynamic 1. Low Extremely 2. Low Extremely 3. Low Extremely 4. Low Very low 5. Low Very Medium Low 6. Low Very Long 7. Low Short low 8. Low Short Medium Low 9. Low Short Long 10. Medium Extremely 11. Medium Extremely 12. Medium Extremely 13. Short Medium 14. Medium Medium Medium Short Short Medium 17. Medium Short Medium Medium 18. Medium Short Long 19. Extremely 20. Extremely 21. Extremely 22. Very Short 23. Very Medium 24. Very 25. Short Short 26. Short Medium 27. Short Figure 6: Rule View of FIS for Scheduling 4. Proposed Algorithm The parameters of process are stored in table called Process Control Block (PCB). Each process has its own PCB. The structure of the Process Control Block is given in Table II. Table 2: Structure of Process control Block for priority scheduling Process Process name= bash Process identifier=100 State=Ready CPU reserve {CPU Burst = CPU Remaining = = Waiting time= Arrival = Start time=. }

5 390 The parameters remaining time Rt i, static priority sp i, dynamic priority dp i and waiting time wt i of process P i are stored in Process Control Block PCB i. The proposed algorithm is as follows: i. For each process P i in ready queue fetch its parameters Rt i, sp i, and wt i from PCB i and give them as input to FIS and then set dp i to the output of FIS ii. Schedule the process P i with the est value of dp i for execution. iii. If the scheduled process finishes and no new request arrives go to step ii iv. If new request arrives go to step first. Figure 7 : Performance of and Fuzzy Scheduling Algorithms 4. Performance improves the system performance by not pre empting the process that requires extremely less fraction of CPU time. Fuzzy priority scheduling algorithm gives better throughput and lesser waiting time than traditional Scheduling as obvious from the figure 7. References [1]Silberschatz, A., Peterson, J. L., and Galvin, B.,Operating System Concepts, Addison Wesley, 7 th Edition, [2]Andrew S. Tanenbaum, and Albert S. Woodfhull, Operating Systems Design and Implementation,Second Edition,2005 [3] William Stallings, Operating Systems Internal and Design Principles, 5 th Edition,2006 [4]Wang Lie-Xin, A course in fuzzy systems and control, Prentice Hall, August [5]Mamdani E.H., Assilian S., An experiment in linguistic synthesis with a fuzzy logic controller,international Journal of Man-Machine Studies, Vol.7, No. 1, [6] Sugeno, M., Industrial applications of fuzzy control, Elsevier Science Inc., New York, NY, [7]Jang, J.-S. R., ANFIS: Adaptive-Network-based Fuzzy Inference Systems, IEEE Transactions on Systems, Man, and Cybernetics, Vol. 23(3), 685, May [8] Simon D, Training fuzzy systems with the extended Kalman filter, Fuzzy Sets and Systems, Vol. 132, No. 2, 1, December For comparing the performance of CPU Scheduling Algorithm and Fuzzy CPU Scheduling algorithm, we did simulation on 1000 processes in groups of ten each. We assumed random burst time of processes and random arrivals. Max burst time of a process should not exceed 10 ms. Throughput and average waiting time of the processes in a group was computed and then average was taken over all groups to give average throughput and average waiting time. The performance is shown in the column chart given in figure 7 above. 6. Conclusion We have proposed fuzzy priority CPU scheduling algorithm based on FIS. This algorithm is having benefits of est remaining time next (SRTN) as well as scheduling algorithm and is capable of removing the starvation problem of priority scheduling algorithm. This proposed algorithm also

### Department of Computer Science & Engineering, Tula s Institute of Engineering, Uttarakhand, India

Volume 5, Issue 7, July 2015 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Smart Optimized

### Chapter 5: Process Scheduling. Operating System Concepts 8 th Edition,

Chapter 5: Process Scheduling, Silberschatz, Galvin and Gagne 2009 Chapter 5: Process Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling

### Chapter 5: CPU Scheduling. Operating System Concepts 8 th Edition,

Chapter 5: CPU Scheduling, Silberschatz, Galvin and Gagne 2009 Objectives To introduce CPU scheduling, which is the basis for multiprogrammed operating systems To describe various scheduling algorithms

### A Comparative Study of CPU Scheduling Algorithms

IJGIP Journal homepage: www.ifrsa.org A Comparative Study of CPU Scheduling Algorithms Neetu Goel Research Scholar,TEERTHANKER MAHAVEER UNIVERSITY Dr. R.B. Garg Professor Delhi School of Professional Studies

### PROCESS SCHEDULING ALGORITHMS: A REVIEW

Volume No, Special Issue No., May ISSN (online): -7 PROCESS SCHEDULING ALGORITHMS: A REVIEW Ekta, Satinder Student, C.R. College of Education, Hisar, Haryana, (India) Assistant Professor (Extn.), Govt.

### Chapter 5: CPU Scheduling

Chapter 5: CPU Scheduling Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Thread Scheduling Operating Systems Examples

### Comparative Study of Different CPU Scheduling Algorithms

Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 2, Issue. 11, November 2013,

### Introduction to process scheduling. Process scheduling and schedulers Process scheduling criteria Process scheduling algorithms

Lecture Overview Introduction to process scheduling Process scheduling and schedulers Process scheduling criteria Process scheduling algorithms First-come, first-serve Shortest-job-first Priority Round-robin

### Chapter 6 Process Scheduling

1 Chapter 6 Process Scheduling CPU scheduling deals with the problem of deciding which of the processes in the ready queue is to be allocated the CPU. There are many different CPU-scheduling algorithms.

### Module 5: CPU Scheduling

Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation Operating System Concepts 5.1 Silberschatz and

### Chapter 5: CPU Scheduling

Chapter 5: CPU Scheduling Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Thread Scheduling Operating Systems Examples

### A FUZZY LOGIC APPROACH FOR SALES FORECASTING

A FUZZY LOGIC APPROACH FOR SALES FORECASTING ABSTRACT Sales forecasting proved to be very important in marketing where managers need to learn from historical data. Many methods have become available for

### Chapter 6: CPU Scheduling. Operating System Concepts 9 th Edition,

Chapter 6: CPU Scheduling, Silberschatz, Galvin and Gagne 2009 Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Operating

### Chapter 6: CPU Scheduling. Basic Concepts Scheduling Criteria Scheduling Algorithms

Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Operating System Concepts 6.1 Basic Concepts Maximum CPU utilization obtained with multiprogramming. CPU I/O Burst Cycle

### Scheduling Criteria. response time/turnaround time: time required to finish a task

Processor Scheduling 1 Scheduling Criteria CPU utilization: keep the CPU as busy as possible throughput: rate at which tasks are completed response time/turnaround time: time required to finish a task

### Performance Analysis of CPU Scheduling Algorithms with Novel OMDRRS Algorithm

Performance Analysis of CPU Scheduling Algorithms with Novel Algorithm Neetu Goel, Research Scholar Department of Computer Science, TMU, India Abstract CPU scheduling is one of the most primary and essential

### Analysis and Comparison of CPU Scheduling Algorithms

Analysis and Comparison of CPU Scheduling Algorithms Pushpraj Singh 1, Vinod Singh 2, Anjani Pandey 3 1,2,3 Assistant Professor, VITS Engineering College Satna (MP), India Abstract Scheduling is a fundamental

### Scheduling Criteria. A task might be a single CPU burst, a thread, or an applicationlevel service request. The Nature of Program Executions

Processor Scheduling 1 Scheduling Criteria CPU utilization: keep the CPU as busy as possible throughput: rate at which tasks are completed response time/turnaround time: time required to finish a task

### CPU Scheduling! Basic Concepts! Scheduling Criteria! Scheduling Algorithms!

CPU Scheduling! Basic Concepts! Scheduling Criteria! Scheduling Algorithms! First-Come-First-Served! Shortest-Job-First, Shortest-remaining-Time-First! Priority Scheduling! Round Robin! Multi-level Queue!

CHAPTER 5 CPU scheduling is the basis of multiprogrammed operating systems. By switching the CPU among processes, the operating system can make the computer more productive. In this chapter, we introduce

### Chapter 6: CPU Scheduling

Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation Oct-03 1 Basic Concepts Maximum CPU utilization

### Chapter 5: CPU Scheduling. Operating System Concepts 7 th Edition, Jan 14, 2005

Chapter 5: CPU Scheduling Operating System Concepts 7 th Edition, Jan 14, 2005 Silberschatz, Galvin and Gagne 2005 Outline Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling

### CPU Scheduling. Operating System Concepts. Alternating Sequence of CPU And I/O Bursts. Basic Concepts. CPU Scheduler. Histogram of CPU-burst Times

Operating System Concepts Module 5: CPU SCHEDULING Andrzej Bednarski, Ph.D. student Department of Computer and Information Science Linköping University, Sweden CPU Scheduling Basic Concepts Scheduling

### High Frequency Trading using Fuzzy Momentum Analysis

Proceedings of the World Congress on Engineering 2 Vol I WCE 2, June 3 - July 2, 2, London, U.K. High Frequency Trading using Fuzzy Momentum Analysis A. Kablan Member, IAENG, and W. L. Ng. Abstract High

### Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation

Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 1 Basic Concepts Maximum CPU utilization obtained

### A Comparative Performance Analysis of Various Variants of Round Robin Scheduling Algorithm

International Journal of Information & Computation Technology. ISSN 0974-2239 Volume 4, Number 7 (2014), pp. 765-772 International Research Publications House http://www. irphouse.com A Comparative Performance

### Chapter 6: CPU Scheduling

Chapter 6: CPU Scheduling Edited by Ghada Ahmed, PhD ghada@fcih.net Silberschatz, Galvin and Gagne 2013 Basic Concepts Maximum CPU utilization obtained with multiprogramming CPU I/O Burst Cycle Process

### Operating Systems. III. Scheduling. http://soc.eurecom.fr/os/

Operating Systems Institut Mines-Telecom III. Scheduling Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/os/ Outline Basics of Scheduling Definitions Switching

### CPU Scheduling. Chapter 5

CPU Scheduling Chapter 5 Basic Concepts Maximum CPU utilization obtained with multiprogramming CPU I/O Burst Cycle Process execution consists of a cycle of CPU execution and I/O wait CPU burst distribution

### COSC243 Part 2: Operating Systems

COSC243 Part 2: Operating Systems Lecture 17: CPU Scheduling Zhiyi Huang Dept. of Computer Science, University of Otago Zhiyi Huang (Otago) COSC243 Lecture 17 1 / 30 Overview Last lecture: Cooperating

### The Nature of Program Executions

Processor Scheduling 1 The Nature of Program Executions A running thread can be modeled as alternating series of CPU bursts and I/O bursts during a CPU burst, a thread is executing instructions during

### Scheduling. Yücel Saygın. These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum

Scheduling Yücel Saygın These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum 1 Scheduling Introduction to Scheduling (1) Bursts of CPU usage alternate with periods

### A Group based Time Quantum Round Robin Algorithm using Min-Max Spread Measure

A Group based Quantum Round Robin Algorithm using Min-Max Spread Measure Sanjaya Kumar Panda Department of CSE NIT, Rourkela Debasis Dash Department of CSE NIT, Rourkela Jitendra Kumar Rout Department

### Basic Concepts. Chapter 6: CPU Scheduling. Histogram of CPU-burst Times. Dispatcher. CPU Scheduler. Alternating Sequence of CPU And I/O Bursts

Chapter 6: CPU Scheduling Basic Concepts Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation Maximum CPU utilization obtained

### Chapter 5: CPU Scheduling. Operating System Concepts 8 th Edition,

Chapter 5: CPU Scheduling, Silberschatz, Galvin and Gagne 2009 Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Linux Example

### A Fuzzy Logic Based Approach for Selecting the Software Development Methodologies Based on Factors Affecting the Development Strategies

Available online www.ejaet.com European Journal of Advances in Engineering and Technology, 2015, 2(7): 70-75 Research Article ISSN: 2394-658X A Fuzzy Logic Based Approach for Selecting the Software Development

### Chapter 5: CPU Scheduling!

Chapter 5: CPU Scheduling Operating System Concepts 8 th Edition, Silberschatz, Galvin and Gagne 2009 Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling

### Objectives. Chapter 5: Process Scheduling. Chapter 5: Process Scheduling. 5.1 Basic Concepts. To introduce CPU scheduling

Objectives To introduce CPU scheduling To describe various CPU-scheduling algorithms Chapter 5: Process Scheduling To discuss evaluation criteria for selecting the CPUscheduling algorithm for a particular

### Chapter 6: CPU Scheduling

Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling 1.1 Maximum CPU utilization obtained with multiprogramming CPU I/O Burst

### Announcements Project #2. Basic Concepts

Announcements Project #2 Is due at 6:00 PM on Friday Program #3 Posted tomorrow (implements scheduler) Reading Chapter 6 Basic Concepts CPU I/O burst cycle Process execution consists of a cycle of CPU

### Chapter 6: CPU Scheduling

Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 6.1 Basic Concepts Maximum CPU utilization obtained

### Chapter 5: CPU Scheduling!

Chapter 5: CPU Scheduling! Basic Concepts! Scheduling Criteria! Scheduling Algorithms! Multiple-Processor Scheduling! Real-Time Scheduling! Algorithm Evaluation! 6.1! Basic Concepts! Long-term scheduler

### Comparison Study of Processor Scheduling Algorithms

Comparison Study of Processor Scheduling Algorithms Vibhu Chinmay, Shubham Sachdeva Student, B.Tech, Department of Electronics and Computers Engineering Dronacharya College of Engineering, Gurgaon, India

### Applications of Fuzzy Logic in Control Design

MATLAB TECHNICAL COMPUTING BRIEF Applications of Fuzzy Logic in Control Design ABSTRACT Fuzzy logic can make control engineering easier for many types of tasks. It can also add control where it was previously

### CPU Scheduling. Date. 2/2/2004 Operating Systems 1

CPU Scheduling Date 2/2/2004 Operating Systems 1 Basic concepts Maximize CPU utilization with multi programming. CPU I/O Burst Cycle Process execution consists of a cycle of CPU execution and I/O wait.

### Fuzzy Logic Based Revised Defect Rating for Software Lifecycle Performance. Prediction Using GMR

BIJIT - BVICAM s International Journal of Information Technology Bharati Vidyapeeth s Institute of Computer Applications and Management (BVICAM), New Delhi Fuzzy Logic Based Revised Defect Rating for Software

### CPU Scheduling CS 571. CPU - I/O Burst Cycle. Bursts of CPU usage alternate with periods of I/O wait a CPU-bound process an I/O bound process

CPU Scheduling CS 571 1 CPU - I/O Burst Cycle Bursts of CPU usage alternate with periods of I/O wait a CPU-bound process an I/O bound process 2 1 Basic Concepts CPU I/O Burst Cycle Process execution consists

### A Priority based Round Robin CPU Scheduling Algorithm for Real Time Systems

A Priority based Round Robin CPU Scheduling Algorithm for Real Time Systems Ishwari Singh Rajput Department of Computer Science and Engineering Amity School of Engineering and Technology, Amity University,

### CPU Scheduling Yi Shi Fall 2015 Xi an Jiaotong University

CPU Scheduling Yi Shi Fall 2015 Xi an Jiaotong University Goals for Today CPU Schedulers Scheduling Algorithms Algorithm Evaluation Metrics Algorithm details Thread Scheduling Multiple-Processor Scheduling

### Student: Yu Cheng (Jade) ICS 412 Homework #4 October Process Burst Time Priority P P P P P 5 5 2

Student: Yu Cheng (Jade) ICS 412 Homework #4 October 19. 2009 Homework #4 Exercise 5.12: Consider the following set of processes, with the length of the CPU burst given in milliseconds: Process Burst Time

### DEVELOPMENT OF NEURO FUZZY CONTROLLER ALGORITHM FOR AIR CONDITIONING SYSTEM

DEVELOPMENT OF NEURO FUZZY CONTROLLER ALGORITHM FOR AIR CONDITIONING SYSTEM ARSHDEEP KAUR University College of Engineering, Punjabi University, Patiala, Punjab- 147002, India arshdeep_24@yahoo.in AMRIT

### Chapter 6: CPU Scheduling

1 Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 6.1 2 Basic Concepts Maximum CPU utilization

### Chapter 6: CPU Scheduling. Basic Concepts

1 Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 6.1 Basic Concepts Maximum CPU utilization obtained

### CSC 539: Operating Systems Structure and Design. Spring 2006

CSC 539: Operating Systems Structure and Design Spring 2006 CPU scheduling historical perspective CPU-I/O bursts preemptive vs. nonpreemptive scheduling scheduling criteria scheduling algorithms: FCFS,

### Objectives. 5.1 Basic Concepts. Scheduling Criteria. Multiple-Processor Scheduling. Algorithm Evaluation. Maximum CPU.

Chapter 5: Process Scheduling Objectives To introduce CPU scheduling To describe various CPU-scheduling algorithms To discuss evaluation criteria for selecting the CPU-scheduling algorithm for a particular

### Process Scheduling. Minsoo Ryu. Real-Time Computing and Communications Lab. Hanyang University.

Process Scheduling Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr Basic Concepts Scheduling Criteria Scheduling Algorithms Windows NT Scheduler Topics Covered

### CPU scheduling. Alternating Sequence of CPU And I/O Bursts. Histogram of CPU-burst Times. CPU Scheduler

CPU scheduling Alternating Sequence of CPU And I/O Bursts Maximum CPU utilization is obtained by multiprogramming. CPU I/O Burst Cycle Process execution consists of a cycle of CPU execution and I/O wait.

### Lecture 5- CPU Scheduling

Lecture 5- CPU Scheduling Instructor : Bibhas Ghoshal (bibhas.ghoshal@iiita.ac.in) Autumn Semester, 2015 Bibhas Ghoshal IOSY 332C & IOPS 332C: OS Autumn Semester, 2015 1 / 17 Lecture Outline CPU Scheduling

### CPU Scheduling. Basic Concepts. Basic Concepts (2) Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems

Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems Based on original slides by Silberschatz, Galvin and Gagne 1 Basic Concepts CPU I/O Burst Cycle Process execution

### Chapter 5: Process Scheduling. Operating System Concepts with Java 8 th Edition

Chapter 5: Process Scheduling Operating System Concepts with Java 8 th Edition 5.1 Silberschatz, Galvin and Gagne 2009 Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms

### Operating Systems, 6 th ed. Test Bank Chapter 7

True / False Questions: Chapter 7 Memory Management 1. T / F In a multiprogramming system, main memory is divided into multiple sections: one for the operating system (resident monitor, kernel) and one

### Lecture 5 Process Scheduling (chapter 5)

Bilkent University Department of Computer Engineering CS342 Operating Systems Lecture 5 Process Scheduling (chapter 5) Dr. İbrahim Körpeoğlu http://www.cs.bilkent.edu.tr/~korpe 1 References The slides

### ICS 143 - Principles of Operating Systems

ICS 143 - Principles of Operating Systems Lecture 5 - CPU Scheduling Prof. Nalini Venkatasubramanian nalini@ics.uci.edu Note that some slides are adapted from course text slides 2008 Silberschatz. Some

### CPU Scheduling. CPU Scheduling

CPU Scheduling Electrical and Computer Engineering Stephen Kim (dskim@iupui.edu) ECE/IUPUI RTOS & APPS 1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling

### CSC 271 Software I: Utilities and Internals

CSC 271 Software I: Utilities and Internals Lecture 9 : What are Processes? The Process Concept Originally, computers ran only one program at a time, which had total access to all of the computer s resources.

### Introduction to Scheduling 1

CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms FCFS, SJF, RR Exponential Averaging Multi-level Queue Scheduling Performance Evaluation Scheduling Terminology Scheduling Terminology

### Operating Systems/Process and Process Management. Worked out Examples

1. What scheduling policy will you use for each of the following cases? Explain your reasons for choosing them. a. The processes arrive at large time intervals: b. The system s efficiency is measured by

### Processor-bound program: A program having long processor bursts (execution instants). I/O-bound program: A program having short processor bursts.

Chapter 2 Processor Scheduling 2.1 Processes A process is an executing program, including the current values of the program counter, registers, and variables.the subtle difference between a process and

### Silberschatz and Galvin

Silberschatz and Galvin Chapter 5 CPU Scheduling CPSC 410--Richard Furuta 01/19/99 1 Topics covered Basic concepts/scheduling criteria Non-preemptive and Preemptive scheduling Scheduling algorithms Algorithm

### CPU Scheduling. Multiprogrammed OS

CPU Scheduling Multiprogrammed OS Efficient Use of Processor By switching between jobs Thread scheduling and process scheduling often used interchangeably Which is done depends on implementation of O/S.

### 4003-440/4003-713 Operating Systems I. Process Scheduling. Warren R. Carithers (wrc@cs.rit.edu) Rob Duncan (rwd@cs.rit.edu)

4003-440/4003-713 Operating Systems I Process Scheduling Warren R. Carithers (wrc@cs.rit.edu) Rob Duncan (rwd@cs.rit.edu) Review: Scheduling Policy Ideally, a scheduling policy should: Be: fair, predictable

### Chapter 5: CPU Scheduling

Chapter 5: CPU Scheduling Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Thread Scheduling Operating Systems Examples

### Announcements. Basic Concepts. Histogram of Typical CPU- Burst Times. Dispatcher. CPU Scheduler. Burst Cycle. Reading

Announcements Reading Chapter 5 Chapter 7 (Monday or Wednesday) Basic Concepts CPU I/O burst cycle Process execution consists of a cycle of CPU execution and I/O wait. CPU burst distribution What are the

### EE8205: Embedded Computer System Multitasking and Real-time Operating System -- Problem Set 2014 Solutions

EE8205: Embedded Computer System Multitasking and Real-time Operating System -- Problem Set 2014 Solutions Out: November 26, 2014 P. 1: What is the difference between turnaround time and response time.

### Chapter 5: Process Scheduling. Chapter 5: Process Scheduling

Chapter 5: Process Scheduling Chapter 5: Process Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Operating Systems Examples Java Thread Scheduling Algorithm

### Fuzzy Candlestick Approach to Trade S&P CNX NIFTY 50 Index using Engulfing Patterns

Fuzzy Candlestick Approach to Trade S&P CNX NIFTY 50 Index using Engulfing Patterns Partha Roy 1, Sanjay Sharma 2 and M. K. Kowar 3 1 Department of Computer Sc. & Engineering 2 Department of Applied Mathematics

### Chapter 5: CPU Scheduling. Operating System Concepts with Java 8 th Edition

Chapter 5: CPU Scheduling 5.1 Silberschatz, Galvin and Gagne 2009 Basic Concepts Maximum CPU utilization obtained with multiprogramming CPU I/O Burst Cycle Process execution consists of a cycle of CPU

### Processor Scheduling. Background. Scheduling. Scheduling

Background Processor Scheduling The previous lecture introduced the basics of concurrency Processes and threads Definition, representation, management We now understand how a programmer can spawn concurrent

### Chapter 5: CPU Scheduling

COP 4610: Introduction to Operating Systems (Spring 2016) Chapter 5: CPU Scheduling Zhi Wang Florida State University Contents Basic concepts Scheduling criteria Scheduling algorithms Thread scheduling

### Scheduling. Scheduling. Scheduling levels. Decision to switch the running process can take place under the following circumstances:

Scheduling Scheduling Scheduling levels Long-term scheduling. Selects which jobs shall be allowed to enter the system. Only used in batch systems. Medium-term scheduling. Performs swapin-swapout operations

### Self-Regulated Priority based Round Robin Scheduling Algorithm

Self-Regulated Priority based Round Robin Scheduling Md.Gulzar 1, Lt. K. Ravindra Babu 2, A.Vinaya Babu 3, Ph.D, S.Udaya Kumar 4, Ph.D 1 PGStudent, Vagdevicollege of engineering,warangal, 2 Associate Professor

### A Comprehensive Review for Central Processing Unit Scheduling Algorithm

www.ijcsi.org 353 A Comprehensive Review for Central Processing Unit Scheduling Algorithm Ryan Richard Guadaña 1, Maria Rona Perez 2 and Larry Rutaquio Jr. 3 1 Computer Studies and System Department, University

### EMPLOYEE PERFORMANCE APPRAISAL SYSTEM USING FUZZY LOGIC

EMPLOYEE PERFORMANCE APPRAISAL SYSTEM USING FUZZY LOGIC ABSTRACT Adnan Shaout* and Mohamed Khalid Yousif** *The Department of Electrical and Computer Engineering The University of Michigan Dearborn, MI,

### Chapter 5: Process Scheduling

Chapter 5: Process Scheduling, Silberschatz, Galvin and Gagne 2009 Chapter 5: Process Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling

### DEVELOPMENT OF FUZZY LOGIC MODEL FOR LEADERSHIP COMPETENCIES ASSESSMENT CASE STUDY: KHOUZESTAN STEEL COMPANY

DEVELOPMENT OF FUZZY LOGIC MODEL FOR LEADERSHIP COMPETENCIES ASSESSMENT CASE STUDY: KHOUZESTAN STEEL COMPANY 1 MOHAMMAD-ALI AFSHARKAZEMI, 2 DARIUSH GHOLAMZADEH, 3 AZADEH TAHVILDAR KHAZANEH 1 Department

### Project 2 CPU Scheduling Simulator

Project 2 CPU Scheduling Simulator 1. Objectives: This project is to simulate a few CPU scheduling algorithms discussed in the class. You will write a C or C++ program to implement a simulator with different

### PES Institute Of Technology Bangalore South Campus

PES Institute Of Technology Bangalore South Campus (Hosur Road, 1KM before Electronic City, Bangalore-560 102) Sem: V A and B Date: 27/8/1 Subject & Code: Operating Systems Marks: 50 Name of faculty: Y.

### CPU Scheduling. Prof. Sirer (dr. Willem de Bruijn) CS 4410 Cornell University

CPU Scheduling Prof. Sirer (dr. Willem de Bruijn) CS 4410 Cornell University Problem You are the cook at the state st. diner customers continually enter and place their orders Dishes take varying amounts

### 2. is the number of processes that are completed per time unit. A) CPU utilization B) Response time C) Turnaround time D) Throughput

Import Settings: Base Settings: Brownstone Default Highest Answer Letter: D Multiple Keywords in Same Paragraph: No Chapter: Chapter 5 Multiple Choice 1. Which of the following is true of cooperative scheduling?

### Introduction to CPU Scheduling

Introduction to CPU Scheduling Minsoo Ryu Department of Computer Science and Engineering 2 1 Process Scheduling Page X 2 Priority-Based Scheduling Page X 3 Proportional Share Scheduling Page X 4 Q & A

### Objectives. Chapter 5: CPU Scheduling. CPU Scheduler. Non-preemptive and preemptive. Dispatcher. Alternating Sequence of CPU And I/O Bursts

Objectives Chapter 5: CPU Scheduling Introduce CPU scheduling, which is the basis for multiprogrammed operating systems Describe various CPU-scheduling algorithms Discuss evaluation criteria for selecting

### Road Map. Scheduling. Types of Scheduling. Scheduling. CPU Scheduling. Scheduling & Resource Utilization

Road Map Scheduling Dickinson College Computer Science 354 Spring 2012 Past: What an OS is, why we have them, what they do. Base hardware and support for operating systems Process Management Threads Present:

### Chapter 5: CPU Scheduling. Operating System Concepts 8 th Edition,

Chapter 5: CPU Scheduling, Silberschatz, Galvin and Gagne 2009 Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Operating

### Chapter 5: CPU Scheduling

Chapter 5: CPU Scheduling Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Thread Scheduling Operating Systems Examples

### Lecture 6- CPU Scheduling Continued

Lecture 6- CPU Scheduling Continued Instructor : Bibhas Ghoshal (bibhas.ghoshal@iiita.ac.in) Autumn Semester, 2015 Bibhas Ghoshal IOSY 332C & IOPS 332C: OS Autumn Semester, 2015 1 / 24 Shortest Remaining

### IMPROVED ROUND ROBIN SCHEDULING ALGORITHM WITH BEST POSSIBLE TIME QUANTUM AND COMPARISON AND ANALYSIS WITH THE RR ALGORITHM

IMPROVED ROUND ROBIN SCHEDULING ALGORITHM WITH BEST POSSIBLE TIME QUANTUM AND COMPARISON AND ANALYSIS WITH THE RR ALGORITHM Wasim Firuj Ahmed 1, Sahana Parvin Muquit 2 1B.Tech Student, Computer Science