⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 os.cpp

📁 是一个操作系统的课程设计的
💻 CPP
📖 第 1 页 / 共 2 页
字号:
}
/////////////////////////////////////////////////////////////////////////////////
void last()
{
 eti/=n;ewi/=n;
 printf("                          ***************************                          \n");
 printf("*---*--*--*--*--*--*--*---**    昨天今天明天制作   **---*--*--*--*--*--*--*---*\n");
 printf("*                         ***************************                         *\n");
 printf("*                                                                             *\n");
 printf("*----------------------------------欢迎使用!----------------------------------*\n");
 printf("\n\n平均周转时间:%7.3f\t平均带权周转时间:%6.3f\n\n\n",eti,ewi);
 printf("*******************************************************************************\n\n\n\n");
 getch();
}
/////////////////////////////////////////////////////////////////////////////////
void pringt_sel(int m)
{int t;
 if(eti_1==0||ewi_2==0||eti_3==0||ewi_4==0||eti_5==0||ewi_6==0||eti_7==0||ewi_8==0)
 {face_TS3();
  scanf("%d",&t);
  switch(t)
  {
   case 1: whole();break;
   case 2: main_sel(m);break;
   default:printf("\n错误!您只能选择1或2。\n"); pringt_sel(m);
  }
 }
 else  whole();
}
/////////////////////////////////////////////////////////////////////////////////
void whole()
{system("cls");
 printf("                          ***************************                          \n");
 printf("*---*--*--*--*--*--*--*---**    昨天今天明天制作   **---*--*--*--*--*--*--*---*\n");
 printf("*                         ***************************                         *\n");
 printf("*                                                                             *\n");
 printf("*----------------------------------欢迎使用!----------------------------------*\n");
 printf("\n先来先服务算法:    平均周转时间:%7.3f\t平均带权周转时间:%6.3f\n\n",eti_1,ewi_2);
 printf("\n最短作业优先算法:  平均周转时间:%7.3f\t平均带权周转时间:%6.3f\n\n",eti_3,ewi_4);
 printf("\n响应比高者优先算法:平均周转时间:%7.3f\t平均带权周转时间:%6.3f\n\n",eti_5,ewi_6);
 printf("\n高优先权优先算法:  平均周转时间:%7.3f\t平均带权周转时间:%6.3f\n\n",eti_7,ewi_8);
 printf("*******************************************************************************\n\n\n\n");
 getch();
}
/////////////////////////////////////////////////////////////////////////////////
void main_hrn(int m)
{
 JCB *min;int i,iden;
 fileway(m);
 for(i=0;i<n;i++)
  {
   p=min=head;iden=1;
   super(m);
   while(p!=NULL)
    {
     if(p->state=='W'&&p->ts<=time_1)
	  if(iden)
        {
         min=p;iden=0;
         }
       else if(p->super>min->super)
               min=p;
               p=p->link;
     }
    if(iden)
     {
      i--;
      printf("\ntime=%d:\t没有作业控制块提交,请等待....\n",time_1);
	  time_1++;
      if(time_1>100)
       {
        printf("\n运行时间过长,请重新输入。");
        getch();
        }
      }
     else
      {
       running(min,m);
       }
  }
 last();
 if(m==3){eti_5=eti; ewi_6=eti;}
 if(m==4){eti_7=eti; ewi_8=eti;}
 time_1=0;
 head=NULL; 
 eti=0;
 ewi=0;
 main_sel(m);
}
/////////////////////////////////////////////////////////////////////////////////
void main_sjf(int m)
{
 JCB *min;int i,iden;
 fileway(m);
 for(i=0;i<n;i++)
  {
   p=min=head;iden=1;
   while(p!=NULL)
    {
     if(p->state=='W'&&p->ts<=time_1)
       if(iden)
        {
         min=p;iden=0;
         }
       else if(p->ntime<min->ntime)
              min=p;
              p=p->link;
     }
   if(iden)
    {
     i--;
     printf("\ntime=%d:\t没有作业控制块提交,请等待....\n",time_1);
     time_1++;
     if(time_1>100)
      {
       printf("\n运行时间过长,请重新输入。");
       getch();
       }
     }
   else
    {
     running(min,m);
     }
   }
 last();
 eti_3=eti;
 ewi_4=eti;
 time_1=0;
 head=NULL; 
 eti=0;
 ewi=0;
 main_sel(m);
}
/////////////////////////////////////////////////////////////////////////////////
void main_fcfs(int m)
{
 int i,iden;
 fileway(m);
 printf("\n作业控制块正在运行...\n");
 for(i=0;i<n;i++)
  {
   p=head;iden=1;
   while(p!=NULL&&iden)
    {
     if(p->state=='W'&&p->ts<=time_1)  iden=0; 
     if(iden) p=p->link;
     }
   if(iden)
    {
     i--;
     printf("\ntime=%d:\t没有作业控制块提交,请等待....\n",time_1);
     time_1++;
     if(time_1>100)
      {
       printf("\n运行时间过长,请重新输入。");
       getch();
       }
      }
   else
    {
     running(p,m);
     }
   }
 last();
 eti_1=eti;
 ewi_2=eti;
 time_1=0;
 head=NULL; 
 eti=0;
 ewi=0;
 main_sel(m);
}
/////////////////////////////////////////////////////////////////////////////////
void face_main()
{system("cls"); 
  printf("                          ***************************                          \n");
  printf("*---*--*--*--*--*--*--*---**    昨天今天明天制作   **---*--*--*--*--*--*--*---*\n");
  printf("*                         ***************************                         *\n");
  printf("*                                                                             *\n");
  printf("*----------------------------------欢迎使用!----------------------------------*\n");
  printf("*                                                                             *\n");
  printf("*******************************************************************************\n");
  printf("*                                                                             *\n");
  printf("*     1--先来先服务          2--最短作业优先         3--响应比高者优先        *\n");
  printf("*                                                                             *\n");
  printf("*     4--高优先权优先        5--比较各算法           0--退出                  *\n");
  printf("*                                                                             *\n");
  printf("*******************************************************************************\n");
  printf("*                                                                             *\n");
  printf("*                      请输入1、2、3、4或者0,按回车结束。                    *\n");
  printf("*                                                                             *\n");
  printf("*******************************************************************************\n");
  }
void face_TS1()
 {
  printf("                          ***************************                          \n");
  printf("*---*--*--*--*--*--*--*---**    昨天今天明天制作   **---*--*--*--*--*--*--*---*\n");
  printf("*                         ***************************                         *\n");
  printf("*                                                                             *\n");
  printf("*----------------------------------欢迎使用!----------------------------------*\n");
  printf("*                                                                             *\n");
  printf("*            1--使用已有数据                    2--使用新数据                *\n");
  printf("*                                                                             *\n");
  printf("*******************************************************************************\n");
}

void face_TS2()
 {
  printf("                          ***************************                          \n");
  printf("*---*--*--*--*--*--*--*---**    昨天今天明天制作   **---*--*--*--*--*--*--*---*\n");
  printf("*                         ***************************                         *\n");
  printf("*                                                                             *\n");
  printf("*----------------------------------欢迎使用!----------------------------------*\n");
  printf("*                                                                             *\n");
  printf("*******************************************************************************\n");
  printf("*                                                                             *\n");
  printf("*  输入一项后按Tab键,四项都输完时按Enter键,然后就可以输入下个作业的信息。  *\n");
  printf("*                                                                             *\n");
  printf("*******************************************************************************\n");
}

void face_TS3()
 {
  printf("                          ***************************                          \n");
  printf("*---*--*--*--*--*--*--*---**    昨天今天明天制作   **---*--*--*--*--*--*--*---*\n");
  printf("*                         ***************************                         *\n");
  printf("*                                                                             *\n");
  printf("*----------------------------------欢迎使用!----------------------------------*\n");
  printf("*                                                                             *\n");
  printf("*******************************************************************************\n");
  printf("*                                                                             *\n");
  printf("*  您尚未把全部算法都运行一遍,这样比较效果不佳。您确定要输出结果进行比较吗? *\n");
  printf("*                                                                             *\n");
  printf("*******************************************************************************\n");
  printf("*                                                                             *\n");
  printf("*                       1--是                  2--否                         *\n");
  printf("*                                                                             *\n");
  printf("*******************************************************************************\n");
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -