0% found this document useful (0 votes)
11 views13 pages

Microproject OSY

The document is a micro project report on the FCFS (First-Come, First-Served) scheduling algorithm, submitted by a group of students for their Diploma in Computer Engineering at SVERI’s College of Engineering. It details the algorithm's principles, advantages, disadvantages, and includes a C++ implementation along with performance metrics like waiting and turnaround times. The report also acknowledges the guidance received from faculty and outlines the project's educational objectives.

Uploaded by

rajdebadwar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views13 pages

Microproject OSY

The document is a micro project report on the FCFS (First-Come, First-Served) scheduling algorithm, submitted by a group of students for their Diploma in Computer Engineering at SVERI’s College of Engineering. It details the algorithm's principles, advantages, disadvantages, and includes a C++ implementation along with performance metrics like waiting and turnaround times. The report also acknowledges the guidance received from faculty and outlines the project's educational objectives.

Uploaded by

rajdebadwar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

A

Micro project report On

“FCFS Algorithm”

SUBMITTED TO M.S.B.T.E., Mumbai

For the Award of


DIPLOMA IN COMPUTER ENGINEERING BY

Roll no Name of Student Enrollment no


04 Avadhut Changdev Shinde 2110740004
20 Pravin Deepak Kamble 2110740021
53 Anand Nagnath Nalawade 2110740068
39 Onkar Shatrughna Chougule 2110740044
27 Vaibhav Rohidas Bagade 2110740031

UNDER THE GUIDANCE OF


Miss. M.B.Patil
DEPARTMENT OF COMPUTER ENGINEERING

NBA ACCREDIATED

SVERI’s College of Engineering (Polytechnic), Pandharpur


Gopalpur Pandharpur-413304
2023-24
AFFILIATED TO

M.S.B.T.E.
Evolution sheet for Micro Project

Academic Year:- 2023-24 Name of


Faculty:Miss.M.B.Patil
Course:- COMPUTER ENGINEERING Course code:- CO5I
Subject:- Operating System Subject Code:- 22516
Semester:- 5 Scheme:- I

Title of Project:- FCFS Algorithm

COs addressed by the Micro Project:

CO 1 Apply Scheduling algorithms to calculate turnaround time and average waiting time.

Comments/Suggestions about team work/leadership/inter-personal communication (if any)

Marks out of
Marks out of 6 Total
4 for
for mars
Roll No Name of students performance
performance in out
in oral/
group activity of 10
Presentation

04 Avadhut Changdev Shinde


20 Pravin Deepak Kamble
53 Anand Nagnath Nalawade
39 Onkar Shatrughna Chougule
27 Vaibhav Rohidas Bagade

Name and
Signature of
faculty
SVERI’s COLLEGE OF ENGINEERING (POLYTECHNIC), PANDHARPUR.

CERTIFICATE

This is to certify that the Project report entitled


“FCFS Algorithm”
Submitted by

Roll no Name of Student Enrollment no


04 Avadhut Changdev Shinde 2110740004
20 Pravin Deepak Kamble 2110740021
53 Anand Nagnath Nalawade 2110740068
39 Onkar Shatrughna Chougule 2110740044
27 Vaibhav Rohidas Bagade 2110740031

is a bonafide work carried out by above students, under the guidance of Miss. M.B.Patil and it is
submitted towards the fulfillment of requirement of MSBTE, Mumbai for the award of Diploma in
Computer Engineering at SVERI’s COE (Polytechnic), Pandharpur during the academic year 2022-2023.

(Miss. M.B.Patil)
Guide
(Mr. P.S. Bhandare) (Dr.N.D.Misal)
HOD Principal

Place: Pandharpur

Date: / /
Acknowledgement

“FCFS Algorithm” has been developed successfully with a great contribution of two students in
a period of two months. We like to appreciate their guidance, encouragement and willingness since
without their support the project would not have been a success. We would like to give our heartfelt
gratitude to Principal Dr. N. D. Misal, Guide & HOD Mr. P.S. Bhandare who is the supervisor of our
project for helping and encouraging us in many ways to make our project a success. We would never
been able to finish our work without great support and enthusiasm from friends and support from our
family. We would like to thank the department of Computer Engineering, for giving us permission to
initiate this project and successfully finish it.
Introduction:-

In the realm of operating systems and process management, scheduling algorithms play a crucial
role in determining the order in which processes are executed on a computer's CPU (Central Processing
Unit). One of the simplest and most intuitive scheduling algorithms is known as FCFS, which stands
for First-Come, First-Served.

FCFS is a non-preemptive scheduling algorithm, which means it operates on the principle of "first in,
first out." In other words, the order in which processes arrive in the system determines the order in
which they are scheduled for execution. The process that arrives earliest is given CPU time first, and
subsequent processes are scheduled in the order they enter the system.

This scheduling approach is akin to waiting in line at a service counter, where the customer who
arrives first is served first. While FCFS is straightforward to understand and implement, it has both
advantages and drawbacks.
Example : -

Process Burst Time

P1 9

P2 7

P3 3

P4 7

Gantt Chart FCFS

P1 P2 P3 P4

0 9 16 19 26

Waiting Time:

P1=0
P2=9
P3=16
P4=19
Average waiting time=Waiting time of all processes / Number of processes =
(0+9+16+19) /4 =44/4 =11 milli seconds (ms)
Turnaround time:

P1=9
P2=16
P3=19
P4=26

Average Turnaround time= Turnaround time of all processes / Number of processes

9+16+19+26/4=17.5 milli seconds (ms)


Code:-

// C++ program for implementation of FCFS


// scheduling
#include<iostream>
using namespace std;

// Function to find the waiting time for all


// processes
void findWaitingTime(int processes[], int n,
int bt[], int wt[])
{
// waiting time for first process is 0
wt[0] = 0;

// calculating waiting time


for (int i = 1; i < n ; i++ )
wt[i] = bt[i-1] + wt[i-1] ;
}

// Function to calculate turn around time


void findTurnAroundTime( int processes[], int n,
int bt[], int wt[], int tat[])
{
// calculating turnaround time by adding
// bt[i] + wt[i]
for (int i = 0; i < n ; i++)
tat[i] = bt[i] + wt[i];
}

//Function to calculate average time


void findavgTime( int processes[], int n, int bt[])
{
int wt[n], tat[n], total_wt = 0, total_tat = 0;

//Function to find waiting time of all processes


findWaitingTime(processes, n, bt, wt);

//Function to find turn around time for all processes


findTurnAroundTime(processes, n, bt, wt, tat);

//Display processes along with all details


cout << "Processes "<< " Burst time "
<< " Waiting time " << " Turn around time\n";

// Calculate total waiting time and total turn


// around time
for (int i=0; i<n; i++)
{
total_wt = total_wt + wt[i];
total_tat = total_tat +
tat[i];
cout << " " << i+1 << "\t\t" << bt[i] <<"\t "
<< wt[i] <<"\t\t " << tat[i] <<endl;
}

cout << "Average waiting time = "


<< (float)total_wt / (float)n;
cout << "\nAverage turn around time = "
<< (float)total_tat / (float)n;
}

// Driver code
int main()
{
//process id's
int processes[] = { 1, 2, 3};
int n = sizeof processes / sizeof processes[0];

//Burst time of all processes


int burst_time[] = {10, 5, 8};

findavgTime(processes, n, burst_time);
return 0;
}
Resources Used
Sr. No. Specification Remark
1 Intel Core i7, RAM 16GB As per requirement
2 Operating System – Windows 11 As per requirement
3 Application – Microsoft Word 2021 As per requirement
Advantages

1. Skill Enhanced
2. Practical application
3. Error Handling
4. Mathematical logic
5. Responsive design
6. Customization

Disadvantages

1. Limited Complexity
2. Overused project
3. Maintenance
4. Learning Curve
5. Complexity Management

COs addressed by the Micro Project:

CO 1 Demonstrate the ability to create structured and semantic HTML to build the user
interface of a calculator.
CO 2 Implement JavaScript functions to handle user interactions, perform arithmetic
operations, and display results dynamically.
CO 3 Learn to debug JavaScript code effectively to identify and resolve issues in their
calculator application.
Output
Conclusion

The First-Come-First-Serve (FCFS) algorithm is a simple and straightforward scheduling algorithm in


operating systems. Its main principle is to execute processes in the order they arrive in the ready queue. While
FCFS has its advantages, such as simplicity and minimal overhead
FCFS is a basic scheduling algorithm that may work well for certain scenarios with simple
requirements. However, it has limitations that make it less suitable for modern operating systems with diverse
workloads and varying priorities. More advanced scheduling algorithms, such as Round Robin or Priority
Scheduling, are often used to address these limitations and improve system performance.

References

www.google.com

You might also like