Difficulty: Medium
Correct Answer: Job scheduler (long term scheduler)
Explanation:
Introduction / Context:
Modern operating systems use several kinds of schedulers to manage how processes move from creation to execution. Understanding what each scheduler does is important for questions on process management. This question specifically asks which scheduler is responsible for selecting processes from the pool of submitted jobs, usually on secondary storage, and bringing them into main memory so that they can start running on the CPU.
Given Data / Assumptions:
Concept / Approach:
In classical operating system theory, the long term scheduler is also called the job scheduler. It controls the degree of multiprogramming by deciding which jobs from the job pool on disk should be admitted into main memory and turned into active processes. Once in memory, the short term scheduler (CPU scheduler) selects among the ready processes for execution on the CPU. A resource scheduler or I/O scheduler may allocate devices and order disk requests, but they are not responsible for loading processes from the job pool into memory. Therefore, the scheduler that fits the description in the question is the job scheduler, also known as the long term scheduler.
Step-by-Step Solution:
Verification / Alternative check:
Standard operating system textbooks describe three levels of scheduling. The long term scheduler (job scheduler) controls which jobs enter the system, thereby managing the overall multiprogramming level. The short term scheduler (CPU scheduler) runs very frequently and chooses among ready processes in memory whenever the CPU becomes free. Some systems also include a medium term scheduler that swaps processes in and out of memory. The specific phrase selecting from the job pool and loading into memory appears in many descriptions of the job scheduler, confirming that this is the correct answer, not the CPU scheduler or other types of schedulers.
Why Other Options Are Wrong:
Common Pitfalls:
Many students confuse the CPU scheduler with the job scheduler because both involve choosing processes. The key difference is the stage: the job scheduler admits jobs from disk to memory, while the CPU scheduler runs frequently to pick which in memory process uses the CPU next. Another pitfall is to see the word process and assume that process scheduler is a separate, special concept. In many books, process scheduling refers broadly to all scheduling mechanisms, but in exam questions, job scheduler has a specific meaning. Always pay attention to whether the question refers to the job pool on disk or the ready queue in memory.
Final Answer:
In operating systems, the scheduler that selects processes from the job pool and loads them into main memory for execution is the Job scheduler (long term scheduler).
Discussion & Comments