In operating systems, what are the main types or levels of job scheduling used to control which jobs enter memory and which processes get CPU time?

Difficulty: Easy

Correct Answer: Long term job scheduling, medium term job scheduling and short term CPU scheduling.

Explanation:


Introduction / Context:
Operating systems often use several levels of scheduling to manage how jobs move from external input into memory and then onto the CPU. Understanding these levels helps explain how the system controls the degree of multiprogramming and balances responsiveness with throughput. This question asks you to recall the main types of job scheduling typically distinguished in operating system theory.


Given Data / Assumptions:

  • Jobs arrive from outside the system and must be admitted into memory.
  • Processes in memory compete for CPU time.
  • Some processes may be swapped out or suspended temporarily.
  • Different schedulers may operate at different time scales.


Concept / Approach:
Long term scheduling, sometimes called job scheduling, decides which jobs or processes from the job queue are admitted into main memory and allowed to compete for CPU time. Medium term scheduling controls swapping and decides which processes should be moved out of memory or brought back in, thus adjusting the degree of multiprogramming. Short term scheduling, or CPU scheduling, runs frequently to select the next ready process from the ready queue to execute on the processor. Together, these three levels coordinate job flow through the system.


Step-by-Step Solution:
Step 1: Identify long term scheduling as the mechanism that selects jobs from the job queue for admission to memory. Step 2: Recognise medium term scheduling as responsible for swapping processes in and out to control the number of active processes. Step 3: Recognise short term or CPU scheduling as the mechanism that selects among ready processes for the next CPU time slice. Step 4: Understand that these three together form the classic classification of scheduling levels in multiprogramming operating systems. Step 5: Pick the option that lists long term, medium term and short term scheduling as the different job scheduling levels.


Verification / Alternative check:
Standard diagrams in operating systems texts show the flow from job queue to ready queue under the control of the long term scheduler, with potential swapping controlled by the medium term scheduler, and frequent CPU selection handled by the short term scheduler. These descriptions consistently use the three level classification, confirming that the correct option is the one that names all three types of scheduling.


Why Other Options Are Wrong:
Option B focuses on printer scheduling, which is a specific device scheduling problem and not the general concept of job scheduling described in theory. Option C bases scheduling on alphabetical order of user names, which is not a recognised scheduling level and ignores system goals like throughput and fairness. Option D describes random selection without queues, which is not a defined level of scheduling and would lead to unpredictable system behaviour.


Common Pitfalls:
A common error is to think only about short term scheduling because it is most visible, and to forget that long term and medium term decisions significantly influence system performance. Another pitfall is to confuse device specific scheduling, such as disk or printer scheduling, with the higher level scheduling of jobs and processes discussed in this question.


Final Answer:
The main types of job scheduling are long term job scheduling, medium term job scheduling and short term CPU scheduling.

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion