Basically,this is a need in case of multiprogramming.For optimum utilization of CPU
it should be utilised in the meanwhile time when some process is in waiting state for some I/O or waiting for some event to occur.
So,for this many programs should be in memory in waiting state so that CPU can be allocated to some other process for optimum utilization of CPU.
A schedule(time table in broad sense) which will decide Cpu will be allocated to which process when some previous process is in waiting state.
Now this schedule is designed according to some criteria(algorithm) to decide CPU will be allocated to which process.
Some Algorithms:
1.First Come First Serve(FCFS)
2.Shortest Job Scheduling(SJS)
3.RoundRobin Scheduling(RRS)
The priority scheduling algorithm is a kind of CPU scheduling algorithm where the processes that wait for the CPU are scheduled according to their priority..
It's an algorithm that is used for CPU schedulers.
In Non-Primitive CPU Algo. once a process is given to the CPU it cannot be preempt,but in primitive Algo. it can be.
By far the simplest CPU-scheduling algorithm is the first-come, first-served (FCFS) scheduling algorithm. With this scheme, the process that requests the CPU first is allocated the CPU first. The implementation of the FCFS policy is easily managed with a FIFO queue. When a process enters the ready queue, its PCB is linked onto the tail of the queue. When the CPU is free, it is allocated to the process at the head of the queue. The running process is then removed from the queue. The code for FCFS scheduling is simple to write and understand. The average waiting time under the FCFS policy, however, is often quite long. Consider the following set of processes that arrive at time 0, with the length of the CPU-burst time given in milliseconds:
Preemptive scheduler reruns scheduling decision when process becomes ready. If the new process has priority over running process, the CPU preempts the running process and executes the new process. Non-preemptive scheduler only does scheduling decision when running process voluntarily gives up CPU. In effect, it allows every running process to finish its CPU burst.
The priority scheduling algorithm is a kind of CPU scheduling algorithm where the processes that wait for the CPU are scheduled according to their priority..
It's an algorithm that is used for CPU schedulers.
same as linux use.
Round Robin
In Non-Primitive CPU Algo. once a process is given to the CPU it cannot be preempt,but in primitive Algo. it can be.
time sheduling
By far the simplest CPU-scheduling algorithm is the first-come, first-served (FCFS) scheduling algorithm. With this scheme, the process that requests the CPU first is allocated the CPU first. The implementation of the FCFS policy is easily managed with a FIFO queue. When a process enters the ready queue, its PCB is linked onto the tail of the queue. When the CPU is free, it is allocated to the process at the head of the queue. The running process is then removed from the queue. The code for FCFS scheduling is simple to write and understand. The average waiting time under the FCFS policy, however, is often quite long. Consider the following set of processes that arrive at time 0, with the length of the CPU-burst time given in milliseconds:
The round-robin scheduling algorithm allocates CPU time to processes by sequentially assigning the CPU to processes of equal priority that are in the state of being able to use the CPU. (Not blocked) This works by appearing to evenly distribute the CPU amongst CPU ready processes. Processes that are waiting on something, such as an I/O event, particularly waiting on the user to press Enter, are not considered for allocation. Often, there is a priority assigned to the process, which factors in the allocation strategy. Processes that are mostly I/O intensive tend to have higher priority, giving them good response time. Processes that are mostly CPU intensive tend to have lower priority, so they don't interfere with overall system responsiveness.
the difference is that it is manual and elctronic
Windows XP uses a quantum-based, preemptive priority scheduling algorithm
Reservation Stations are decentralized features of the microarchitecture of a CPU that allow for register renaming, and are used by the Tomasulo algorithm for dynamic instruction scheduling.Reservation stations permit the CPU to fetch and re-use a data value as soon as it has been computed, rather than waiting for it to be stored in a register and re-read. When instructions are issued, they can designate the reservation station from which they want their input to read.
Round robin is the scheduling algorithm that is utilized by the CPU, or central processing unit, during the execution of the process. It is specifically designed for time sharing systems.