What is CPU Scheduling
The processes entered into the computer system are put into the job queue. Similarly, the processes that are in main memory and are ready to execute are kept in a ready queue. In a multiprogramming and timesharing systems, multiple processes is used to determine which process to run first and how much times. The method or procedure for switching the CPU among multiple processors is called CPU scheduling or process scheduling. The part of operating system which schedules the process is called the CPU scheduler.
In single precursors system one process can run at a time and other processes have wait. In multiprocessing system some processes may be running in this cases schedules the execution of processes on the CPU.
In multiprogramming system some processes may be running at all times. Similarly timesharing system must switch from one process to another so frequently that users can interact with their programs. The CPU scheduler plays the main role in multiprogramming and timesharing system.
CPU scheduling increase the CPU utilization. Whenever CPU becomes idle the CPU scheduler selects a process from the ready queue and sends it to the CPU for execution.
Preemptive and None preemptive scheduling:
The earlier computer systems used the non preemptive scheduling. It means that a process retained control of the CPU until the process blocked or terminated. This approach was used in batch systems. In modern computer systems preemptive scheduling is used. The scheduler may preemptive a process before it blocks or terminated in order to allocate the CPU to another process.
For example, the non preemptive scheduling was used by Microsoft windows 3.x product. The preemptive scheduling was introduced in Windows 95 operating system. To day all operating systems used this method. Non preemptive scheduling is used only on certain hardware platform.
7:41 PM
Is DOS use preemptive scheduling or none preemptive scheduling.?
This was some interesting PC information. I had no idea that a CPU was capable of doing something like that without being told.
So, basically, multitasking is just another word for scheduled tasks?
Confused.
Parallel computing is not yet developed, right?
So this means that multitasking is just smart scheduling of tasks.