Program 6-10
Program 6-10
import java.util.Scanner;
max=new int[np][nr];
allocate=new int[np][nr];
avail=new int[1][nr];
for(int i=0;i<np;i++)
for(int j=0;j<nr;j++)
for(int i=0;i<np;i++)
for(int j=0;j<nr;j++)
for(int j=0;j<nr;j++)
sc.close();
}
private int[][] calc_need(){
for(int i=0;i<np;i++)
need[i][j]=max[i][j]-allocate[i][j];
return need;
for(int j=0;j<nr;j++)
if(avail[0][j]<need[i][j])
return false;
return true;
input();
calc_need();
int j=0;
boolean allocated=false;
for(int i=0;i<np;i++)
for(int k=0;k<nr;k++)
avail[0][k]=avail[0][k]-need[i][k]+max[i][k];
j++;
System.out.println("\nSafely allocated");
else
new Bankers().isSafe();
int n, m, i, j, k;
n = 5; // Number of processes
m = 3; // Number of resources
{ 2, 0, 0 }, // P1
{ 3, 0, 2 }, // P2
{ 2, 1, 1 }, // P3
{ 0, 0, 2 } };
{ 3, 2, 2 }, // P1
{ 9, 0, 2 }, // P2
{ 2, 2, 2 }, // P3
{ 4, 3, 3 } };
int ind = 0;
f[k] = 0;
int y = 0;
if (f[i] == 0) {
int flag = 0;
flag = 1;
break;
if (flag == 0) {
ans[ind++] = i;
avail[y] += alloc[i][y];
f[i] = 1;
int flag = 1;
for(i = 0;i<n;i++)
if(f[i]==0)
flag = 0;
break;
if(flag==1)
import java.io.*;
class Page_Rep
int f,page=0,ch,pgf=0,n,chn=0;
boolean flag;
do{
System.out.println("Menu");
System.out.println("1.FIFO");
System.out.println("2.LRU");
System.out.println("3.LFU");
System.out.println("4.EXIT");
ch=Integer.parseInt(obj.readLine());
switch(ch)
case 1:
int pt=0;
f=Integer.parseInt(obj.readLine());
for(int i=0;i<f;i++)
frame[i]=-1;
}
System.out.println("enter the no of pages ");
n=Integer.parseInt(obj.readLine());
pages=new int[n];
for(int j=0;j<n;j++)
pages[j]=Integer.parseInt(obj.readLine());
do{
int pg=0;
for(pg=0;pg<n;pg++)
page=pages[pg];
flag=true;
for(int j=0;j<f;j++)
if(page==frame[j])
flag=false;
break;
if(flag)
frame[pt]=page;
pt++;
if(pt==f)
pt=0;
System.out.print("frame :");
for(int j=0;j<f;j++)
System.out.print(frame[j]+" ");
System.out.println();
pgf++;
}
else
System.out.print("frame :");
for(int j=0;j<f;j++)
System.out.print(frame[j]+" ");
System.out.println();
chn++;
}while(chn!=n);
System.out.println("Page fault:"+pgf);
break;
case 2:
int k=0;
f=Integer.parseInt(obj.readLine());
for(int i=0;i<f;i++)
frame1[i]=-1;
a[i]=-1;
b[i]=-1;
n=Integer.parseInt(obj.readLine());
pages=new int[n];
pages[j]=Integer.parseInt(obj.readLine());
do{
int pg=0;
for(pg=0;pg<n;pg++)
page=pages[pg];
flag=true;
for(int j=0;j<f;j++)
if(page==frame1[j])
{flag=false; break;}
if(frame1[j]==a[f-1])
{k=j;
break;}
if(flag)
frame1[k]=page;
System.out.println("frame :" );
for(int j=0;j<f;j++)
System.out.print(frame1[j]+" ");
pgf++;
System.out.println();
else
System.out.println("frame :" );
for(int j=0;j<f;j++)
System.out.print(frame1[j]+" ");
System.out.println();
int p=1;
b[0]=page;
for(int j=0;j<a.length;j++)
b[p]=a[j];
p++;
for(int j=0;j<f;j++)
a[j]=b[j];
chn++;
}while(chn!=n);
System.out.println("Page fault:"+pgf);
break;
case 3:
k=0;
pgf=0;
int sml;
f=Integer.parseInt(obj.readLine());
for(int i=0;i<f;i++)
frame2[i]=-1;
cnt[i]=0;
n=Integer.parseInt(obj.readLine());
pages=new int[n];
for(int j=0;j<n;j++)
pages[j]=Integer.parseInt(obj.readLine());
do
int pg=0;
for(pg=0;pg<n;pg++)
page=pages[pg];
flag=true;
for(int j=0;j<f;j++)
if(page==frame2[j])
flag=false;
cnt[j]++;
break;
if(flag)
{
sml=cnt[0];
for(int j=0;j<f;j++)
if(cnt[j]<sml)
sml=cnt[j];
break;
for(int j=0;j<f;j++)
if(sml==cnt[j] )
frame2[j]=page;
k=j;
break;
cnt[k]=1;
System.out.print("frame :");
for(int j=0;j<f;j++)
System.out.print(frame2[j]+" ");
System.out.println();
pgf++;
else
System.out.print("frame :");
for(int j=0;j<f;j++)
System.out.print(frame2[j]+" ");
System.out.println();
chn++;
}while(chn!=n);
System.out.println("Page fault:"+pgf);
break;
case 4:
break;
} while(ch!=4);
import java.util.Scanner;
ms = scanner.nextInt();
ps = scanner.nextInt();
nop = ms / ps;
np = scanner.nextInt();
rempages = nop;
s[i] = scanner.nextInt();
System.out.println("\nMemory is Full");
break;
fno[i][j] = scanner.nextInt();
x = scanner.nextInt();
y = scanner.nextInt();
offset = scanner.nextInt();
else {
pa = fno[x][y] * ps + offset;
scanner.close();
@SuppressWarnings("resource")
int n, tot = 0;
float avhm;
n = scanner.nextInt();
t[i] = scanner.nextInt();
if (tohm[i] < 0) {
tot += tohm[i];
}
}
10 b)Scan algorithm
int sum=0,len=arr.length;
Arrays.sort(arr);
pos=-pos-1;
// System.out.println(pos);
int left=pos-1,right=pos;
sum+=Math.abs(init-arr[right]);
System.out.println(arr[right]);
while(right<len-1){
sum+=Math.abs(arr[right]-arr[right+1]);
System.out.println(arr[right+1]);
right++;
sum+=Math.abs(arr[len-1]-maxreq);
System.out.println(maxreq);
sum+=Math.abs(maxreq-arr[left]);
System.out.println(arr[left]);
while(left!=0){
sum+=Math.abs(arr[left]-arr[left-1]);
System.out.println( arr[left-1]);
left--;
return sum;
}
public static void main(String[] args) {
//request array
int arr[]={98,183,37,122,14,124,65,67};
int init=53;
int res=callSCAN(arr,init,maxreq);
import java.util.Scanner;
import java.util.Arrays;
float avg;
max = scanner.nextInt();
head = scanner.nextInt();
n = scanner.nextInt();
queue1[temp1] = temp;
temp1++;
} else {
queue2[temp2] = temp;
temp2++;
Arrays.sort(queue1, 0, temp1);
Arrays.sort(queue2, 0, temp2);
int i = 1, j = 0;
queue[i] = queue1[j];
queue[i] = max;
queue[i + 1] = 0;
queue[i] = queue2[j];
queue[0] = head;
seek += diff;
System.out.println("Disk head moves from " + queue[j] + " to " + queue[j + 1] + " with seek " +
diff);