Process Scheduling In Longest Job First (LJF) Algorithm: A Proposed Framework For Starvation Problem

Project and Seminar Material for Mathematics and Statistics

Project and Seminar Material for Mathematics and Statistics


Process as an individualistic program in execution forms the bases of everything in the computer system functionality, Central Processing Unit (CPU) becomes the main target of every process execution. The best ordering and sequence of assigning these processes to the CPU becomes the most difficult problem to obtain best performances. This thesis work in the field of CPU scheduling by carefully studying all popular scheduling algorithms thereby proposing an option to the most uncommon scheduling algorithm: Longest Job First (LJF), to compete along side others. The major problem leading to starvation was reduced by proposing a model into the LJF. The model was designed and tested thereby suggesting ways by which LJF could be enhanced to solve parts of the starvation problems, waiting times and context switches.

Chapter One

General Introduction

1.0 Introduction

Process scheduling algorithms has been an interesting field of study in Operating Systems.

Scheduling is a key concept in computer multitasking, multiprocessing and real-time operating system designs.

Scheduling refers to the way processes are assigned to run on available Central Processing Unit (CPU) (Galvin, 2004). Each Process (a program in execution) passes through some stages in their execution and allocation to CPU as will be illustrated in process-state diagram. A Process is started at arrival time which gets into the Ready Queue based on some scheduling algorithm and waits for the Job scheduler/ dispatcher which decide on what scheduling algorithm to use. The process state diagram of Fig 1.1 illustrates this.

Figure 1.1: Process state diagram

The process state is as follows:

  1. New: Where processes enters the system.
  2. Ready: It is a stage where queues are used to order the manner in which jobs arrived
  3. Running: The Scheduler and Dispatcher, based on selected algorithms, move Ready jobs to Running, a job may be pre-empted back to the ready depending on the scheduling algorithm in use.
  4. Waiting: On a request for an I/O and later rescheduled on completion of request.
  5. End/Exit: Process terminates.

At the moment, based on literature, there isn’t a world most preferable scheduling algorithm (Stallings, 2000) as most operating systems use the most common scheduling algorithms which include: First Come First Serve (FCFS), Shortest Job Next (SJN), Shortest Job First (SJF), Round Robin (RR) and Priority Scheduling as an extension or the combination of two or more scheduling algorithm.

In this research, some of the existing scheduling algorithms basically the Shortest Job First (SJF) and the Longest Job First (LJF) algorithm will be looked into while putting latency and minimising total waiting time to achieve maximum utilization of the Central Processing Unit (CPU).

Furthermore, we propose a frame work to deal with the starvation (A condition that make processes waits stagnantly and denied allocation to the CPU) problems to curtail the convoy (A long queue of waiting processes) problem through fairness to shorter processes.

This research will also be focusing on making the Longest Job First (LJF) the approach to test and suggest how best the Shorter Jobs gets fairer allocation to the CPU through backfilling and combination of shorter jobs through ageing and burst-times merging. The process will be gaining access through comparing the merged burst-time and the incoming longer jobs.

1.1 Objectives Of Study

The objectives of this work is to minimise the overall waiting time and minimise the numbers of context switching of processes in a multiprocessing system; thereby coming up with a framework that will make fair consideration to shorter jobs on queue and suggest efficient time closer to the Longer Jobs in execution to minimise starvation in LJF.

1.2 Significance Of Study

The research hopes to make a contribution to the existing problem faced by operating system by minimizing the starvation problem to achieve maximum efficiency, throughput, and CPU utilization by minimizing the overall waiting time of processes.

1.3 Research Questions

  1. When does LJF compete with other algorithms?
  2. Under what environment does LJF perform better than SJF, RR and FCFS?
  3. Can Starvation problem be minimised in a multiprocessor environment using LJF?

1.4 Scope

The research will be focusing on the scheduling algorithm for Longer Job processes and propose a framework towards reducing long delays in queues. Shorter jobs will be merged up to make them a bit considerable to reduce starvation through fairness. The scope of this work is limited to reducing starvation problems and minimizing the overall waiting times and average turn-around time.

1.5 Methodology

These are approaches and series of steps to be taken in actualising our research objectives:

  1. The first consideration on this work will be the generation of the processes using Random Number generators with an appropriate statistical distribution (Poisson and Exponential average).
  2. The burst-time for each process will also be generated through a distribution.
  3. Analysing the processes generated on Gantt charts and calculations of general process properties will be acquired and kept for comparison at the final Chapter.
  4. Conditions for merging processes will be stated and designed by some algorithm and tested as implementation using Java and later a dispatch and schedule of the merged short jobs will be moved into the CPU by our algorithm.

1.6 Organization Of Thesis

The thesis will be focusing on proposing a framework that will minimise starvation of processes in Longest Job First (LJF) scheduling algorithm through merging shorter jobs (Combinational Burst Time CBT) to maximise total utilization of the CPU to minimize total waiting time of the processes in the system.

Chapter two will be discussing on the existing literatures and researches conducted in the field of process scheduling.

Chapter three discusses the methodologies adopted to design the proposed framework for solving starvation problems in the Longest Job First (LJF) scheduling algorithm.

Chapter four will focus on the implementation and testing of the proposed algorithm.

Chapter five will summarise the work and propose areas for future work.

Get Complete Project Material

5,000 5000

The Complete Material Will Be Sent to You in Just 2 Steps

Quick & Simple…

Step One Purchase

Make Payment (Through Transfer) of ₦5,000 to the Account Below

Zenith BankAcc No: 1225513212
Samphina Academy
Current Account

Or CLICK HERE To Pay With Debit Card

CLICK HERE To Purchase Material ($15)

Step Two Purchase

Send the Following Details on WhatsApp ( 08143831497) After Payment

  1. Payment Details

  2. TOPIC: Process Scheduling In Longest Job First (LJF) Algorithm: A Proposed Framework For Starvation Problem

The Complete Material Will Be Sent To You On WhatsApp After Receiving Your Details
T & C Apply

  Contact Our Help Desk

Need a Different Topic? Perform a Quick Search

List of Related Works

Click on Any Topic to Preview the Content

Samphina Academy

Samphina Academy is an Online Educational Resource Center that is aimed at providing students with quality information and materials to aid them in succeeding in their academic pursuit.