Operating Systems Lab Programs
1.Write a C program
to find total and average of student’s marks by entering name, rollno, branch and
six subjects marks.
AIM:
Source Code
AIM:
Source Code
#include <stdio.h>
int main()
{
char
name[20],rollno[10],branch[3];
int
sub[6],i,n,s,j,tot=0,avg=0;
printf("how many students data u need to enter ");
scanf("%d",&n);
printf("now enter the students details \n");
for
(i=0;i<n;i++)
{
printf("Enter the name of the student");
scanf("%s",name);
printf("Enter the rollno of the student");
scanf("%s",rollno);
printf("Enter the branch of the student");
scanf("%s",branch);
printf(" how many subjects marks u want to enter");
scanf("%d",&s);
for(j=0;j<s;j++)
{
printf("subject
marks of the student%d",j+1);
scanf("%d",&sub[j]);
tot=tot+sub[j];
}
printf("\n Total marks of the student %d %d\n",i+1,tot);
avg=tot/s;
printf("Average of the marks of the student %d %d \n",i+1,avg);
}
printf("\n successfully Completed\n");
return 0;
}
2.First Come
First Served Scheduling Algorithm
AIM:
Source Code
AIM:
Source Code
#include<stdio.h>
#include<conio.h>
void main()
{
int n,a[10],b[10],t[10],w[10],c[10],i,m;
float
att=0,awt=0;
clrscr();
for(i=0;i<10;i++)
{
a[i]=0; b[i]=0; w[i]=0; c[i]=0;
}
printf("enter the number of process");
scanf("%d",&n);
printf("enter the arrival times burst
times");
for(i=0;i<n;i++)
scanf("%d %d",&a[i],&b[i]);
c[0]=0;
for(i=0;i<n;i++)
c[i+1]=c[i]+b[i];
for(i=0;i<n;i++)
{
t[i]=c[i+1]-a[i];
w[i]=t[i]-b[i];
awt=awt+w[i];
att=att+t[i];
}
awt =awt/n;
att=att/n;
printf("\n\tprocess\tarrival time \twaiting
time\tturn arround time\n");
for(i=0;i<n;i++)
{
printf("\tp%d\t\t%d\t\t%d\t\t%d\n",i,a[i],w[i],t[i]);
}
printf("the average waiting time is
%f\n",awt);
printf("the average turn around time is %f\n",att);
getch();
}
3.Shortest Job
First Scheduling Algorithm
AIM:
Source Code
AIM:
Source Code
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
int
bt[20],at[10],n,i,j,temp,st[10],ft[10],wt[10],ta[10];
int totwt=0,totta=0;
float awt,ata;
char pn[10][10],t[10];
clrscr();
printf("Enter the number of process:");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("Enter process name, arrival time &
burst time:");
flushall();
scanf("%s%d%d",pn[i],&at[i],&bt[i]);
}
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
if(bt[i]<bt[j])
{
temp=at[i];
at[i]=at[j];
at[j]=temp;
temp=bt[i];
bt[i]=bt[j];
bt[j]=temp;
strcpy(t,pn[i]);
strcpy(pn[i],pn[j]);
strcpy(pn[j],t);
}
}
for(i=0;i<n;i++)
{
if(i==0)
st[i]=at[i];
else st[i]=ft[i-1];
wt[i]=st[i]-at[i];
ft[i]=st[i]+bt[i];
ta[i]=ft[i]-at[i];
totwt+=wt[i];
totta+=ta[i];
}
awt=(float)totwt/n;
ata=(float)totta/n;
printf("\nPname\tarrivaltime\tbursttime\twaitingtime\ttatime");
for(i=0;i<n;i++)
printf("\n%s\t%5d\t\t%5d\t\t%5d\t\t%5d",pn[i],at[i],bt[i],wt[i],ta[i]);
printf("\nAverage waiting time
is:%f",awt);
printf("\nAverage turnaroundtime
is:%f",ata);
getch();
}
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home