Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class FCFS {
- Proces tab[] = new Proces[1];
- public static double alg_fcfs(int i, Proces a[]){
- int co=0;
- int suma =0;
- int coc=0;
- double cs;
- for (int z = 0; z < a.length; z++) {
- for (int j = 0; j < a.length - 1; j++) {
- if (a[j].czas_pojawienia > a[j + 1].czas_pojawienia) {
- Proces temp;
- temp = a[j + 1];
- a[j + 1] = a[j];
- a[j] = temp;
- }
- }
- }
- for (int j=0; j<i; j++){
- suma=suma+(a[j].czas_trwania);
- if(j==0)
- co=0;
- else co=suma-(a[j].czas_pojawienia);
- coc=coc+co;}
- cs=coc/i;
- return cs;
- }
- public double alg_sjf(int i, Proces a[]){
- int co=0;
- int suma=0;
- int coc=0;
- double cs=0;
- for (int z = 0; z < a.length; z++) {
- for (int j = 0; j < a.length - 1; j++) {
- if (a[j].czas_pojawienia > a[j + 1].czas_pojawienia) {
- Proces temp;
- temp = a[j + 1];
- a[j + 1] = a[j];
- a[j] = temp;
- }
- }
- }return cs;
- }
- public static double alg_rr(int i, Proces a[], int kwant){
- int co=0;
- int suma=0;
- int coc=0;
- double cs=0;
- int pom;
- for (int z = 0; z < a.length; z++) {
- for (int j = 0; j < a.length - 1; j++) {
- if (a[j].czas_pojawienia > a[j + 1].czas_pojawienia) {
- Proces temp;
- temp = a[j + 1];
- a[j + 1] = a[j];
- a[j] = temp;
- }
- }
- }
- int petla[]=new int[i+1];
- for (int j = 0;j<i; j++)
- petla[j]=0;
- for (int j=0; j<i; j++){
- if (a[j].czas_trwania<=kwant){{
- suma=suma+(a[j].czas_trwania);
- if(j==0)
- co=0;
- else co=suma-(a[j].czas_pojawienia);
- coc=coc+(co-(kwant*petla[j]));
- System.out.println(coc);}}
- else{
- pom=a[j].czas_trwania-kwant;
- a[j].czas_trwania=pom;
- petla[j]=petla[j]+1;
- suma=suma+kwant;
- }
- }
- System.out.println(coc);
- cs=coc/i;
- return cs;
- }
- public static void main(String[] args){
- int w=11;
- int czas_t;
- int czas_p;
- int kwa = 8;
- Proces tab[]=new Proces[w];
- //for(int i=0; i<w;i++){
- //czas_t=(int)(Math.random()*100);
- //czas_p=(int)(Math.random()*20);
- //tab[i]=new Proces(czas_t,czas_p);
- // }
- tab[0]=new Proces(8, 0);
- tab[1]=new Proces(6, 0);
- tab[2]=new Proces(20, 0);
- tab[3]=new Proces(16, 0);
- tab[4]=new Proces(1, 0);
- tab[5]=new Proces(3, 0);
- tab[6]=new Proces(13, 0);
- tab[7]=new Proces(28, 0);
- tab[8]=new Proces(4, 0);
- tab[9]=new Proces(7, 0);
- tab[10]=new Proces(10, 0);
- for(int i=0; i<w;i++)
- System.out.println(i+1 +" "+ tab[i].czas_trwania + " "+tab[i].czas_pojawienia);
- System.out.println("Średni czas oczekiwania FCFS: " +alg_fcfs(w,tab));
- System.out.println("Średni czas oczekiwania RR: " +alg_rr(w,tab, kwa));
- System.out.println("Kwant czasu wynosi: " +kwa);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement