xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 624KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2022-06-20
  • 語言: C/C++
  • 標簽: C語言??

資源簡介

用C或C++語言實現一個程序演示死鎖避免算法(銀行家算法)。要求該演示程序能顯示各進程申請和釋放資源以及系統動態分配資源的過程,便于用戶觀察和分析;允許進程動態地申請資源分配之前,應先計算此次資源分配的安全性。若此次分配不會導致系統進入不安全狀態,則將資源分配給進程;否則,令進程等待。如果系統不能分配,也應給出“系統進入不安全狀態”的提示。 里面含有代碼和課程設計報告!!!!本次課程設計是通過用C模擬實現,內容十分豐富。若有采納,請在你的課設后面引用的參考文獻中加入該條引用!!!望大家尊重版權!!!! 為了避免完全抄襲,里面的課設報告為PDF版,若需要word版,評價留言你的郵箱!!!!!!若覺得有用,記得好評!!絕對有用!!!

資源截圖

代碼片段和文件信息

#include“iostream“
#include“fstream“
#include“vector“
#include“windows.h“
using?namespace?std;

vector?Allocation[500];???//每個進程已經有的資源
vector?Need[500];???//各個進程想要的資源
int?pro_size; //進程數
int?res_size; //資源種類數
int?res[500]; //每類資源的個數
int?work[500]; //當前可用資源數
vector?Deadlock;
bool*?visited;
bool*?Dead_res;

void?DeadlockChain(int?beg){
visited[beg]?=?true;
cout?<
for(int?i?=?0;?i? for(int?j?=?0;?j? for(int?k?=?0;?k?if(Allocation[?Deadlock[j]?][k]?==?Need[beg][i]){
Dead_res[Need[beg][i]]?=?true;
if(!visited[j])
DeadlockChain(j);
}

for(int?t?=?0;?t? for(int?j?=?0;?j? for(int?k?=?0;?k? if(Need[?Deadlock[j]?][k]?==?Allocation[beg][t]){
Dead_res[Allocation[beg][t]]?=?true;
if(!visited[j])
DeadlockChain(j);
}
}

void?read_data(){
ifstream?in;
in.open(“D:\\deadlock?detection.txt“);
if(!in)
cout?< memset(res0500);
memset(work0500);
//**********************************************
//Read?res
in?>>?res_size;
if(res_size?>?500){
cout?< exit(-1);
}

for(int?i?=?0;?i? int?temp;
in?>>?temp;
if(temp? cout?< cout?<<“Please?check?your?input?data!“?< exit(-1);
}
res[i]?=?work[i]?=?temp;
}
//************************************************
//Read?pro
in?>>?pro_size;
if(pro_size?>?500){
cout?< exit(-1);
}
for(int?k?=?0;?k?
int?num;
in>>?num;

int?have_size;
in?>>?have_size;
for(int?i?=?0;?i? int?temp;?
in?>>?temp;
if(temp?>=?res_size){
cout?< cout?<<“Please?check?your?input?data!“?< exit(-1);
}
work[temp]--;
if(work[temp]? cout?< cout?<<“Please?check?your?input?data!“?< exit(-1);
}
Allocation[num].push_back(temp);
}
//--------------------------------------------------------
int?want_size;
in?>>?want_size;
for(int?j?=?0;?j? int?temp;?
in?>>?temp;
if(temp?>=?res_size){
cout?< cout?<<“Please?check?your?input?data!“?< exit(-1);
}
Need[num].push_back(temp);
}
}

}

//**********************************************************

void?Draw(){
HWND?hWnd=FindWindow(“ConsoleWindowClass“NULL);
HDC?hDc=GetDC(hWnd);
????HPEN?hPen1=CreatePen(PS_SOLID20x000000FF);//生成紅線
HPEN?hPen2=CreatePen(PS_SOLID20x0000FF00);//生成藍線
Selectobject(hDchPen1);

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????753911??2019-08-06?15:39??死鎖的避免與檢測(操作系統課設)\死鎖的避免與檢測-夏鑫、許毅立、余創、李若晴.pdf

?????文件???????6543??2019-01-08?20:04??死鎖的避免與檢測(操作系統課設)\源代碼\死鎖檢測算法.cpp

?????文件???????5105??2019-01-09?11:13??死鎖的避免與檢測(操作系統課設)\源代碼\銀行家算法.cpp

?????目錄??????????0??2019-01-10?20:54??死鎖的避免與檢測(操作系統課設)\源代碼

?????目錄??????????0??2019-08-06?15:39??死鎖的避免與檢測(操作系統課設)

-----------?---------??----------?-----??----

???????????????765559????????????????????5


評論

共有 條評論