DESIGN AND IMPLEMENTATION OF A MODIFIED MEDIAN ROUND ROBIN ALGORITHM (DIMMRRA)

TABLE OF CONTENTS
Abstract
Table of Contents
List of Abbreviations

CHAPTER ONE: INTRODUCTION
1.1       BACKGROUND OF THE STUDY
1.2       PROBLEM STATEMENT
1.3       JUSTIFICATION OF THE STUDY
1.4       AIM AND OBJECTIVES
1.5       SCOPE
1.6       METHODOLOGY

CHAPTER TWO: LITERATURE REVIEW
2.1       THEORITICAL FRAME WORK
2.2       MULTIPROGRAMMING
2.3       SCHEDULING
2.3.1    Job Scheduling Versus Process Scheduling
2.4       PROCESS SCHEDULER
2.5       JOB AND PROCESS STATUS
2.6       PROCESS CONTROL BLOCKS
2.6.1    Process Identification
2.6.2    Process Status
2.6.3    Process State
2.6.4    Accounting
2.7       PCBs AND QUEUING
2.8       PROCESS SCHEDULING POLICIES
2.9       PROCESS SCHEDULING ALGORITHMS
2.9.1    First-Come First Served
2.9.2    Shortest Job Next
2.9.3    Priority Scheduling
2.9.4    Shortest Remaining Time
2.9.5    Round Robin
2.10     STATIC RR VERSUS DYNAMIC RR SCHEDULING TECHNIQUE
2.11     CONTEXT SWITCHING
2.12     REVIEW OF VARIOUS DYNAMIC RR CPU SCHEDULING TECHNIQUE

CHAPTER THREE: DESIGN OF A MODIFIED MEDIAN ROUND ROBIN ALGORITHM
3.1       INTRODUCTION
3.2       MMRRA ALGORITHM
3.3       MMRRA FLOW CHART
3.4       EVALUATION: CLASSICALRR, IRR, IMRR, HLVQTRR, DRRCP & MMRRA
3.4.1    Generated data from the proposed algorithm
3.4.2    Generated data from DRRCP
3.4.3    Generated dada from IMRRSJF

CHAPTER FOUR: EVALUATION OF THE DESIGNED MMRRA
4.1       INTRODUCTION
4.2       DESCRIPTION OF THE SIMULATION
4.3       PSEUDOCODE FOR THE SIMULATION
4.4       EVALUATION CRITERIA
4.5       ALGORITHM EVALUATION
4.6       DISTRIBUTION FUNCTION USED
4.7       ALGORITHM FOR THE EXPONENTIAL DISTRIBUTION
4.8       THE BEST WAY OF CHOOSING PERCENTAGE (for a method)
4.9       PRESENTATION OF RESULTS
4.10     DISCUSSION OF RESULTS

CHAPTER FIVE: SUMMARY, CONCLUSION AND RECOMMENDATION
5.1       SUMMARY
5.1.1    Advantage of MMRRA over IMRRSJF
5.1.2    Advantage of MMRRA over HLVQTRR
5.1.3    Advantage of MMRRA over DRRCP
5.1.4    Advantage of MMRRA over IRR
5.1.5    Some Major Challenges of DYNAMIC RR Algorithms
5.1.6    Critisism With Respect To Context Switching On Most Of the proposed Round Robin Algorithms reviewed
5.2       CONCLUSION
5.3       RECOMMENDATION
REFERENCES
Appendix : Source code


Abstract
Central Processing Unit (CPU) scheduling involves a careful examination of pending processes to determine the most efficient way to service the requests. Several scheduling algorithms have been designed to arrange accesses to computer resources efficiently. Round robin scheduling algorithm (RRSA) is an attractive algorithm but suffers from the problem of time quantum determination. In the classical round robin algorithm, quantum time is fixed throughout the scheduling process. This static nature made it very difficult to optimize the algorithm. The only solution to this problem is to provide a quantum time that changes dynamically during execution. Major challenges of dynamic round robin schedulers reported in the literature are: they do not include Average Response Time as a criterion for comparison and they do not bother much on preempting processes with negligible completion time after executing for a given time quantum leading to an increase in the number of context switches. This research proposed an algorithm, the Modified Median Round Robin (MMRRA), with a dynamic time quantum aimed at reducing the overhead of the RRSA. The proposed algorithm was implemented and evaluated against the following five algorithms in the literature: Improved Round Robin (IRR), Improved Mean Round Robin with Shortest Job First (IMRRSJF), Dynamic Round Robin with Controlled Preemption (DRRCP), Half Life Variable Quantum Time RR (HLVQTRR) and CLASSICAL RR. Which in turns, proved to perform better in terms of AWT, ATAT and NCS. But, in terms of ART, HLVQTRR has the best result but still the result for MMRRA was not bad.


CHAPTER ONE:                     INTRODUCTION
1.1          BACKGROUND OF THE STUDY
Process scheduling algorithm 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.

The operating system uses some sort of scheduling techniques to allocate resources to processes in the ready queue. Scheduling refers to the way processes are assigned to run on available Central Processing Unit (CPU). Certain CPU scheduling techniques or algorithms have been developed. The overall goal of these algorithms is to: maximize CPU utilization, reduce average waiting time and average turnaround time, reduce the number of context switching, increase throughput and try as much as possible to be fair to all processes.

Processor Manager is in charge of allocating a single CPU to execute the jobs of those users.In a single user system, the processor is busy only when the user is executing a job but, at any other time it is idle. Processor Management in this environment is simple. However, when there are many users with many jobs on the system (this is known as a multiprogramming environment), the processor must be allocated to each job in a fair and efficient manner, which can be a complex task. The processor, also known as the CPU (Central Processing Unit), is the part of the machine that performs the calculations and executes the programs......

For more Mathematics Projects click here
================================================================
Item Type: Project Material  |  Size: 129 pages  |  Chapters: 1-5
Format: MS Word  |  Delivery: Within 30Mins.
================================================================

Share:

Search for your topic here

See full list of Project Topics under your Department Here!

Featured Post

HOW TO WRITE A RESEARCH HYPOTHESIS

A hypothesis is a description of a pattern in nature or an explanation about some real-world phenomenon that can be tested through observ...

Popular Posts