亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? unit3.cpp

?? 廣東工業大學 洪凌郁 操作系統的課程設計:包括進程管理
?? CPP
字號:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit3.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
#define getym(type) (type*)malloc(sizeof(type))
#define NULL 0
TForm3 *Form3;
void form3_input();
form3_insert();
void form3_disp();
void form3_runfifo();
void form3_runlru();
void form3_runmain();
struct ym{

           int id;     //序列序號
           int ye_num; //頁面號
           char state; //進程狀態
            struct ym *next;
          } *hready3=NULL,*p_ye; //hready,為指向就緒和阻塞隊列
          typedef struct ym YM;
int chu_num,time1Inteval3;
int ya=0,yb=0,yc=0,t1=-1,t2=-1,t3=-1,hit_count=0,instead_count=0,form3_flag;
//---------------------------------------------------------------------------
 YM *form3_increat(void)
{ YM *head;
  head=NULL;
  return(head);
}
//---------------------------------------------------------------------------
YM *form3_insert(YM *head,YM*ym)  //帶兩個指針形參
{YM *pi,*p1;
 p1=head;
 pi=ym;
 if(head==NULL)
 {head=pi;pi->next=NULL;}
 else
    {while(p1->next!=NULL)
      {p1=p1->next;
       }
     p1->next=pi;
     pi->next=NULL;}
 return(head);
}
//----------------------------------------------------------------------------
//從鏈表起始地址開始輸出該鏈表的內容
void form3_disp(YM *head)
{YM *p1;
 p1=head;
 AnsiString str2;
 //str2+="\r\n";
  if(head!=NULL)      //鏈表非空
    {
     do
      {
         str2+=IntToStr(p1->ye_num);
         str2+=" , ";
         p1=p1->next;
       }while(p1!=NULL); //不斷輸出進程的信息,直到鏈尾!
     } //if
  else
  {  str2+="序列已經空!" ;}
Form3->Memo1->Lines->Add(str2);
    }//disp
//----------------------------------------------------------------------------
void form3_input()  //對頁面序列進行初始化
{
int i,temp=0;
chu_num=StrToInt (Form3->Edit5->Text);  //讀取需初始化頁面數
time1Inteval3=StrToInt(Form3->Edit6->Text);//讀取時間片長度
Form3->Timer1->Interval=time1Inteval3;
for(i=1;i<=chu_num;i++)             //初始化頁面序列信息,直到到達要初始化個數
{
  p_ye=getym(YM);
  p_ye->id=i;
  p_ye->ye_num=random(7);
  p_ye->next=NULL;
  if ((p_ye->ye_num)==temp) //如果產生的頁號與前一頁號相等
 {                                                            //則寫入就緒隊列隊尾
   if(p_ye->ye_num==7)
     {p_ye->ye_num=(p_ye->ye_num)-1;}
   else
      {p_ye->ye_num=(p_ye->ye_num)+1; }
    }//if
   temp=p_ye->ye_num;
   hready3=form3_insert(hready3,p_ye);  //將替換頁號插入序列
  }//for
 form3_disp(hready3);
  }//input
//---------------------------------------------------------------------------
 YM *form3_runfifo(YM *head)   //運行就緒隊列的頭進程
{
AnsiString str;
YM *p1;
 p1=head;
 if(p1->next==NULL)
    head=form3_increat();
   else
    {head=p1->next;
     }
   Form3->Edit1->Text=IntToStr(p1->ye_num);  //下一個要替換的序列

 switch (p1->id)                            //前三個頁面進行裝載
 {
  case 1 :Form3->Edit2->Text=IntToStr(p1->ye_num);ya++;
          str="\t\t裝載到頁塊0#\r\n";
          Form3->Memo2->Lines->Add(str);
           break;
  case 2 :Form3->Edit3->Text=IntToStr(p1->ye_num); ya++;yb++;
          str="\t\t裝載到頁塊1#\r\n";
          Form3->Memo2->Lines->Add(str);
           break;
  case 3 :Form3->Edit4->Text=IntToStr(p1->ye_num); ya++;yb++;yc++;
          str="\t\t裝載到頁塊2#\r\n";
          Form3->Memo2->Lines->Add(str);
          break;
  default:break;
  }
  if((p1->id!=1)||(p1->id!=2)||(p1->id!=3))
  {  t1=StrToInt(Form3->Edit2->Text);
     t2=StrToInt(Form3->Edit3->Text);
     t3=StrToInt(Form3->Edit4->Text);
   if((p1->ye_num)==t1||(p1->ye_num)==t2||(p1->ye_num)==t3)
  {if(p1->ye_num==t1)
    { Form3->Edit2->Color=clYellow;
     Form3->Edit3->Color=clMoneyGreen;
     Form3->Edit4->Color=clMoneyGreen;
     str="\t\t頁塊 0 #被命中\r\n";
     }
   if(p1->ye_num==t2)
    { Form3->Edit3->Color=clYellow;
     Form3->Edit2->Color=clMoneyGreen;
     Form3->Edit4->Color=clMoneyGreen;
     str="\t\t頁塊 1 #被命中\r\n";}
   if(p1->ye_num==t3)
    { Form3->Edit4->Color=clYellow;
     Form3->Edit2->Color=clMoneyGreen;
     Form3->Edit3->Color=clMoneyGreen;
     str="\t\t頁塊 2 #被命中\r\n";}
    }
    else
    {
    if(ya==3)
    {Form3->Edit2->Text=IntToStr(p1->ye_num);
     Form3->Edit2->Color=clRed;
     Form3->Edit3->Color=clMoneyGreen;
     Form3->Edit4->Color=clMoneyGreen;
     ya=0;instead_count++;
     str="\t\t頁塊 0 #被替換\r\n";
    }
     if(yb==3)
    {Form3->Edit3->Text=IntToStr(p1->ye_num);
     Form3->Edit3->Color=clRed;
     Form3->Edit2->Color=clMoneyGreen;
     Form3->Edit4->Color=clMoneyGreen;
     str="\t\t頁塊 1 #被替換\r\n";
     yb=0;instead_count++;
    }
     if(yc==3)
    {Form3->Edit4->Text=IntToStr(p1->ye_num);
     Form3->Edit4->Color=clRed;
     Form3->Edit2->Color=clMoneyGreen;
     Form3->Edit3->Color=clMoneyGreen;
     yc=0;
    str="\t\t頁塊 2 #被替換\r\n";
     instead_count++;
    }
    ya++;yb++;yc++;

    }//else
    }//if
 Form3->Memo2->Lines->Add(str);
    free(p1);   //釋放當前指針
 return(head);
    }//running
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
 YM *form3_runlru(YM *head)   //運行就緒隊列的頭進程
{  int temp,max;
AnsiString str;
YM *p1;
 p1=head;
 if(p1->next==NULL)
    head=form3_increat();
   else
    {head=p1->next;
     }
   Form3->Edit1->Text=IntToStr(p1->ye_num);  //下一個要替換的序列

 switch (p1->id)                            //前三個頁面進行裝載
 {
  case 1 :{Form3->Edit2->Text=IntToStr(p1->ye_num);ya++;
          str="\t\t裝載到頁塊0#\r\n";
          Form3->Memo2->Lines->Add(str);
           break;}
  case 2 :{Form3->Edit3->Text=IntToStr(p1->ye_num); ya++;yb++;
          str="\t\t裝載到頁塊1#\r\n";
          Form3->Memo2->Lines->Add(str);
           break; }
  case 3 :{Form3->Edit4->Text=IntToStr(p1->ye_num); ya++;yb++;yc++;
          str="\t\t裝載到頁塊2#\r\n";
          Form3->Memo2->Lines->Add(str);
          break;}
  default:break;
  }
  if((p1->id!=1)||(p1->id!=2)||(p1->id!=3))
  {  t1=StrToInt(Form3->Edit2->Text);
     t2=StrToInt(Form3->Edit3->Text);
     t3=StrToInt(Form3->Edit4->Text);
   if((p1->ye_num)==t1||(p1->ye_num)==t2||(p1->ye_num)==t3)
  {if(p1->ye_num==t1)
    { Form3->Edit2->Color=clYellow;
     Form3->Edit3->Color=clMoneyGreen;
     Form3->Edit4->Color=clMoneyGreen;
     str="\t\t頁塊 0 #被命中\r\n";
     ya=0;yb++;yc++;
     }
   if(p1->ye_num==t2)
    { Form3->Edit3->Color=clYellow;
     Form3->Edit2->Color=clMoneyGreen;
     Form3->Edit4->Color=clMoneyGreen;
     str="\t\t頁塊 1 #被命中\r\n";
     ya++;yb=0;yc++;
     }
   if(p1->ye_num==t3)
    { Form3->Edit4->Color=clYellow;
     Form3->Edit2->Color=clMoneyGreen;
     Form3->Edit3->Color=clMoneyGreen;
     str="\t\t頁塊 2 #被命中\r\n";
     ya++;yb++;yc=0;
     }
    }
    else
    {
    temp=(ya>yb)?ya:yb;
    max=(temp>yc)?temp:yc;
    if(ya==max)
    {Form3->Edit2->Text=IntToStr(p1->ye_num);
     Form3->Edit2->Color=clRed;
     Form3->Edit3->Color=clMoneyGreen;
     Form3->Edit4->Color=clMoneyGreen;
     ya=0;yb++;yc++;instead_count++;
     str="\t\t頁塊 0 #被替換\r\n";
    }
    else if(yb==max)
    {Form3->Edit3->Text=IntToStr(p1->ye_num);
     Form3->Edit3->Color=clRed;
     Form3->Edit2->Color=clMoneyGreen;
     Form3->Edit4->Color=clMoneyGreen;
     str="\t\t頁塊 1 #被替換\r\n";
     ya++;yb=0;yc++; instead_count++;
    }
    else if(yc==max)
    {Form3->Edit4->Text=IntToStr(p1->ye_num);
     Form3->Edit4->Color=clRed;
     Form3->Edit2->Color=clMoneyGreen;
     Form3->Edit3->Color=clMoneyGreen;
     ya++;yb++;yc=0;instead_count++;
    str="\t\t頁塊 2 #被替換\r\n";

    }

    }//else
    }//if
 Form3->Memo2->Lines->Add(str);
    free(p1);   //釋放當前指針
 return(head);
    }//running
//---------------------------------------------------------------------------
void form3_runmain()   //運行的主函數
{
Form3->Timer1->Enabled=true;

}
//---------------------------------------------------------------------------
void form3_disp()
{ AnsiString str;
 hit_count=chu_num-instead_count;
str="本次模擬頁面替換過程中,共替換了:";
str+=IntToStr(instead_count-3);
str+="次,";str+="命中了:"; str+=IntToStr(hit_count);str+="次\r\n";
 Form3->Memo2->Lines->Add(str);
}
//---------------------------------------------------------------------------
void form3_runFcfs()
{
if(hready3!=NULL)    //如果就緒隊列為非空,則不斷運行,直到就緒隊列為空為止
{
  if(form3_flag==0)
  {hready3=form3_runfifo(hready3); }
  if(form3_flag==1)
  {hready3=form3_runlru(hready3);}
  }
else
{
  Form3->Timer1->Enabled=false;
  form3_disp();
}
}
//---------------------------------------------------------------------------
__fastcall TForm3::TForm3(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------







void __fastcall TForm3::Button1Click(TObject *Sender)
{
  Form3->Memo2->Clear();
  form3_input();
  Form3->Button1->Enabled=false;
}
//---------------------------------------------------------------------------

void __fastcall TForm3::Button3Click(TObject *Sender)
{
Form3->Memo1->Clear();
Form3->Memo2->Clear();
ya=0;yb=0;yc=0;t1=-1;t2=-1;t3=-1;hit_count=0;instead_count=0;
Form3->Button1->Enabled=true;
Form3->Button2->Enabled=true;
Form3->Edit2->Text=IntToStr(-1);
Form3->Edit3->Text=IntToStr(-1);
Form3->Edit4->Text=IntToStr(-1);
Form3->Edit2->Color=clMoneyGreen;
Form3->Edit3->Color=clMoneyGreen;
Form3->Edit4->Color=clMoneyGreen;
}
//---------------------------------------------------------------------------

void __fastcall TForm3::Button2Click(TObject *Sender)
{
 form3_runmain();
Form3->Button2->Enabled=false;
}
//---------------------------------------------------------------------------


void __fastcall TForm3::Timer1Timer(TObject *Sender)
{
 form3_runFcfs();
}
//---------------------------------------------------------------------------


void __fastcall TForm3::RadioButton1Click(TObject *Sender)
{
 if(RadioButton1->Checked)
form3_flag=0;
else if(RadioButton2->Checked)
form3_flag=1;
}
//---------------------------------------------------------------------------

void __fastcall TForm3::RadioButton2Click(TObject *Sender)
{
 if(RadioButton1->Checked)
form3_flag=0;
else if(RadioButton2->Checked)
form3_flag=1;
}
//---------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区综合| 久久久久99精品国产片| 久久久精品人体av艺术| 一区av在线播放| 国产精品亚洲视频| 日韩欧美一级二级| 亚洲一区视频在线观看视频| 国产91精品入口| 欧美一区二区网站| 日韩主播视频在线| 欧美亚洲动漫另类| 国产精品九色蝌蚪自拍| 国产很黄免费观看久久| 欧美不卡123| 日韩高清不卡一区二区| 欧美在线观看视频一区二区三区| 国产精品情趣视频| 丰满白嫩尤物一区二区| 久久蜜桃一区二区| 精品一区二区三区不卡 | 精品盗摄一区二区三区| 亚洲超丰满肉感bbw| 色综合欧美在线视频区| 亚洲欧洲韩国日本视频| 成人的网站免费观看| 久久久美女艺术照精彩视频福利播放| 日韩主播视频在线| 日韩午夜小视频| 青草国产精品久久久久久| 欧美日本免费一区二区三区| 亚洲高清一区二区三区| 欧美在线不卡视频| 亚洲一区二区精品3399| 欧美三级日韩三级| 日韩黄色一级片| 欧美一区二区三区不卡| 日韩国产精品久久| 欧美成人猛片aaaaaaa| 精品中文字幕一区二区 | 在线综合视频播放| 免费成人结看片| 日韩欧美国产三级电影视频| 久久精品99久久久| 国产欧美日韩在线视频| 97久久精品人人爽人人爽蜜臀| 中文字幕一区二区三| 色欧美日韩亚洲| 午夜视频一区在线观看| 日韩精品最新网址| 成人免费看的视频| 亚洲精品国产a| 欧美一区二区观看视频| 国产精品一区二区果冻传媒| 国产精品久久久久久久久搜平片| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 丰满亚洲少妇av| 一区二区在线看| 日韩免费在线观看| 高潮精品一区videoshd| 亚洲精品久久7777| 欧美电影免费观看高清完整版在线| 国产iv一区二区三区| 亚洲一卡二卡三卡四卡五卡| 精品国产乱子伦一区| 色综合久久久久| 国产一区不卡在线| 欧美激情资源网| 欧美日韩一级二级三级| 国产aⅴ精品一区二区三区色成熟| 亚洲男人电影天堂| 精品国产123| 日本韩国欧美在线| 国产一区二区三区国产| 亚洲高清免费在线| 日本一区二区三区视频视频| 欧美精品日韩一区| av一本久道久久综合久久鬼色| 婷婷综合在线观看| 亚洲精品成a人| 久久综合色鬼综合色| 欧美午夜不卡视频| 国产.欧美.日韩| 免费高清视频精品| 一卡二卡三卡日韩欧美| 国产精品乱码一区二区三区软件| 欧美精品久久天天躁| 色婷婷av一区| 菠萝蜜视频在线观看一区| 日韩av一区二区三区四区| 日韩一区在线播放| 欧美国产精品一区二区三区| 欧美videossexotv100| 欧美精品黑人性xxxx| 欧美在线一区二区三区| 91最新地址在线播放| 成人一区在线观看| 国产高清精品久久久久| 狠狠色丁香久久婷婷综| 亚洲成人中文在线| 亚洲一区在线观看免费观看电影高清| 中文字幕欧美区| 久久精品一区二区| 欧美成va人片在线观看| 日韩三级在线免费观看| 欧美精品v国产精品v日韩精品| 91成人看片片| 欧美在线观看视频一区二区三区| av一本久道久久综合久久鬼色| 成人激情小说网站| www.亚洲激情.com| 暴力调教一区二区三区| 成人蜜臀av电影| aaa国产一区| 99视频一区二区| 91偷拍与自偷拍精品| 91啪在线观看| 欧美视频精品在线观看| 欧美日韩免费一区二区三区 | 日本福利一区二区| 在线一区二区视频| 在线观看日韩国产| 欧美日韩一区三区| 欧美一区二区免费| 欧美成人猛片aaaaaaa| 国产午夜精品久久久久久免费视| 日本一区二区视频在线| 1024国产精品| 亚洲成人三级小说| 美女mm1313爽爽久久久蜜臀| 狠狠网亚洲精品| 从欧美一区二区三区| 91网站黄www| 欧美一级专区免费大片| 欧美精品一区在线观看| 中文字幕av资源一区| 亚洲欧美偷拍另类a∨色屁股| 亚洲午夜日本在线观看| 麻豆精品新av中文字幕| 成人综合婷婷国产精品久久蜜臀| 色偷偷成人一区二区三区91| 777奇米四色成人影色区| 精品少妇一区二区三区在线视频| 中文字幕精品一区| 亚洲动漫第一页| 黑人巨大精品欧美一区| av不卡在线观看| 日韩一区二区精品| 中文字幕一区三区| 五月天丁香久久| 成人av网站免费| 欧美一激情一区二区三区| 国产精品久久久久久户外露出| 亚洲高清视频的网址| 成熟亚洲日本毛茸茸凸凹| 欧美日韩国产首页| 国产免费久久精品| 秋霞午夜av一区二区三区| 成人午夜精品一区二区三区| 欧美日韩国产欧美日美国产精品| 久久久久国产精品麻豆ai换脸 | 欧美日韩国产小视频| 久久午夜羞羞影院免费观看| 亚洲午夜精品网| 成人免费高清在线观看| 欧美一二三四区在线| 夜夜夜精品看看| 高清av一区二区| 日韩欧美电影在线| 石原莉奈在线亚洲三区| 成人免费看片app下载| 日韩欧美国产不卡| 午夜精品久久久久久久| 91捆绑美女网站| 国产精品欧美一区二区三区| 秋霞电影一区二区| 欧美日韩一区 二区 三区 久久精品| 欧美激情在线免费观看| 久久国内精品自在自线400部| 欧美性色黄大片手机版| 国产精品国产馆在线真实露脸| 激情图区综合网| 精品久久一二三区| 蜜臀av亚洲一区中文字幕| 欧美性色黄大片| 亚洲成人午夜影院| 欧美日免费三级在线| 一区二区激情小说| 色婷婷av一区二区三区大白胸| 国产精品视频免费看| 成人激情免费电影网址| 久久久久久久精| 国产成人精品午夜视频免费| 国产亚洲精品超碰| 国产精品中文字幕一区二区三区| 精品国免费一区二区三区| 久久99久久精品欧美| 日韩精品影音先锋| 久久99最新地址| 久久亚洲综合色一区二区三区| 国产精品综合一区二区|