Find Jobs
Hire Freelancers

write program

$10-30 USD

Closed
Posted over 7 years ago

$10-30 USD

Paid on delivery
Objective In this project, you will simulate a small part of operating system. You will gain knowledge of how operating system works. Moreover, you will measure the performance of various techniques, which will further enhance your understanding of the topic. Most importantly, you will show various statistics that reflects the efficiency of the techniques of interest and show some modification to the technique to enhance the overall performance. System Description: Consider a simple system with a single CPU, single I/O device. The CPU has a ready queue and an I/O queue. The system will serve several jobs sent in specified time one by one. You are required to simulate two different scheduling algorithms: 1. Shortest Job First (SJF non pre-emptive) 2. Round Robin (RR) assume quantum = 10ms However, once job is admitted to the ready queue, the state of the job switches to ready. Each job has PCB that contains all required information to identify the job such as its id, its state, and required statistics which include job nature (CPU bound or IO bound), turnaround time for each job, and waiting time for each job. You can add other fields to PCB to help you in programming. Your program should provide average turnaround time, average waiting time, and CPU utilization for a given input file. Available Recourses 1. Memory size is 1024MB 2. Size of each process will be some number (integer) in the range 1 to 128MB. 1. CPU burst is between 16ms and 512ms. 3. IO burst is between 15ms to 200ms. Possible Operations • Start timer from zero to check for arrival time of process/job. • Create Ready queue • Start reading the file • Create job queue • Read the file for each job (a line from input text file) (using thread) • Create PCB • Put PCB in job queue Note: 1. You must have your processes created (sized randomly in ranges defined above) and saved in an input file. 2. File reading should be performed in an independent thread that creates the PCBs and put them in the job Queue. • Check time if first job has arrived in job queue • Move job to ready queue (using thread). Apply scheduling algorithm Structure of input file Input to the program is from a text file. The file contains job/process ID, its arrival time and then a sequence of CPU bursts and IO requests as CSV. For each job/process there could be a varying number of CPU bursts and IO requests as shown below. ID;Arrival time;CPU Burst;IO;CPU;IO;CPU;IO;…;CPU Example file 1;500;CPU:20;IO:5;CPU:40;IO:15;CPU:70;IO:3;CPU:1 2;700;CPU:60;IO:15;CPU:1 … … Notes • Your application must use threads (minimum two). • Assume I/O requests finish in the order of submission. • Context switching time is zero. • Use physical timer. • Show how to run your program and submit the implantation, results, and output files.
Project ID: 12653929

About the project

6 proposals
Remote project
Active 7 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
6 freelancers are bidding on average $247 USD for this job
User Avatar
Hi, I am good at core java programming along with concepts on operating system process scheduling algorithms. I can help you write the program in Java as per specs. With Regards, Koustav
$60 USD in 2 days
4.9 (174 reviews)
6.3
6.3
User Avatar
Computer Science graduate and have experience in java and OS to.. done many projects on Java and OS so i think i will complete your project
$40 USD in 1 day
4.7 (26 reviews)
4.0
4.0
User Avatar
I am ready to work on your task as per the requirement , please message me Thank you
$34 USD in 1 day
4.2 (8 reviews)
2.4
2.4
User Avatar
A proposal has not yet been provided
$25 USD in 1 day
0.0 (0 reviews)
0.0
0.0

About the client

Flag of SAUDI ARABIA
Saudi Arabia
0.0
0
Member since Dec 10, 2016

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.