Simulate a scheduler scheduling a set of jobs

Assignment Help Operating System
Reference no: EM132105067

Problem Overview

This project must be written in java and will simulate a scheduler scheduling a set of jobs.

The project will allow the user to choose a scheduling algorithm listed below . It will output a representation of how the jobs are executed.

Scheduling Algorithms

-First-come-first-served

-Round-robin

-Shortest process next

-Shortest remaining time

-Highest response ratio next

-Feedback

Design

Let a job be represented as an object. A job needs to store such things as its name, arrival time, and duration. The running of a job can be simulated by calling a run method on the job. A job can have two run methods, one that runs it to completion, and one that runs it a given number of time slices. A job can be thought of as encompassing its PCB contents, so it is okay to store execution time on the job.

Schedulers can also be represented as objects. A scheduler will receive a list of job objects when it is created. It will need to do a few basic things. One is to select a job to run from the set of jobs. Another is to execute the selected job. It must also keep track of time and handle arriving jobs

Note that a scheduler can be preemptive or nonpreemptive. For nonpreemptive schedulers, once a job is chosen, it runs to completion. For preemptive schedulers, once a job is chosen, it runs n time slices depending on the time slice duration, which could be one unit of time or more than one.

To keep things simple, a job will simply print its name once for each unit of its duration. So if a job has duration five, its task is to print its name five times. Its name should just be a letter, such as A-Z. If run preemptively, it will only print its name for the number of time slices passed.

In this design you will have six different scheduler classes. Since there is commonality, you can derive these from an abstract Scheduler class then override methods as needed for each specific algorithm.

To get the project running, use an OS class which reads the jobs from a file and creates Job objects, inputs the scheduler to use by menu or command line argument, then creates the scheduler object and passes the list of jobs. The scheduler object should then produce a graph illustrating how they ran. The graph can be text-based or can use graphics.

Other Requirements

For ease of grading, provide an "ALL" option that runs all six algorithms in one run.

HRRN should use 3 queues.

RR should allow the user to specify the quantum size.

Sample Output

Below is sample text-based output. For graphical output, you can make the graph look like the ones in the textbook and slides.

FCFS

AAA

BBBBBB

CCCC

DDDDD

EE

Round Robin, quantum=1

AA A

B B B B B B

C C C C

D D D DD

E E

Note that printing this horizontally as shown requires storing the output then printing it line by line. You may also print this out other ways such as vertically, as long as the grader can determine that the output is correct.

Reference no: EM132105067

Questions Cloud

Return the minimal number of district borders : Circles Country is a country that contains several circular-shaped districts. Some districts may be situated inside other districts, but their borders
What is the payback period on project a : a. What is the payback period on Project A, B and C? b. Calculate the NPV for projects A, B, and C (oportunity cost of capital 12%)
What is a cost accounting system : What is a cost accounting system? Why is a cost accounting system important for a business?
Calculate the npv if the required rate of return : A new HVAC system will require an initial outlay of $16,500, but it will increase the firm's cash flows by $3,300 a year for each of the next 6 years.
Simulate a scheduler scheduling a set of jobs : Let a job be represented as an object. A job needs to store such things as its name, arrival time, and duration.
Cutting and sewing process : Roman Co. manufactures jeans in the cutting and sewing process. Jeans are manufactured in 50-jean batch sizes. The cutting time is 6 minutes per jean
If there is a loss should not it be discontinued : If there is a loss shouldn't it be discontinued? Or would there be reasons not to?
What is the loop invariant for the for loop in this code : Problem A: Given an integer array a[], with size "size", and size>0, the following code gives the index of a largest element in the array.
How many variables and observation : Creates anew variable called "average1and3YrReturn%" in which is the average of 1YrReturn% and 3YrReturn%.

Reviews

Write a Review

Operating System Questions & Answers

  Implementation of algorithms for process management

The Shortest Job Next (SJN) algorithm queues processes in a way that the ones that use the shortest CPU cycle will be selected for running rst.

  Develop a user mode command interpreter

Develop a user mode command interpreter which support list-short.

  Memory allocation in operating system

Analysis and implementation of algorithms for memory allocation in operating system, Explain First- t and best- t methods are used in memory allocation in operating systems.

  Stand alone child process

Forking the child process

  Write a multi-threaded program

Write a multi-threaded program to solve producer and consumer problem

  Marginal and average cost curves

n a competitive market place (pure competition) is it possible to continually sell your product at a price above the average cost of production.

  Simulating operating systems scheduling

Simulate the long-term scheduler, the short-term scheduler and the I/O scheduler of the computer using the First-Come-First-Serve algorithm.

  Issues with trusted platform module

Research paper discussing the issues with Trusted Platform Module (TPM)

  Threads

Explain a complication that concurrent processing adds to an operating system.

  Design and programming

Use the semaphore methods to control the concurrency of the solution

  Virtual machines

Virtual machines supported by a host operating system

  Discuss an application that benefits barrier synchronization

Discuss an application that would benefit from the use of barrier synchronization

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd