版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)七 設(shè)備管理之設(shè)備的分配與回收一實(shí)驗(yàn)?zāi)康恼莆赵O(shè)備管理中的設(shè)備的添加和刪除、設(shè)備的分配和回收、同時(shí)實(shí)現(xiàn)設(shè)備獨(dú)立性。二實(shí)驗(yàn)條件硬件:一臺(tái)微機(jī)軟件:操作系統(tǒng)和C語言系統(tǒng)或VC+編譯系統(tǒng)。三實(shí)驗(yàn)要求假定模擬系統(tǒng)中有鍵盤、鼠標(biāo)、打印機(jī)和顯示器四個(gè)設(shè)備,三個(gè)控制器和兩個(gè)通道,采用安全分配方式。(1)設(shè)備管理子系統(tǒng)涉及到系統(tǒng)設(shè)備表(SDT)、通道控制表(CHCT)、控制器控制表(COCT)和設(shè)備控制表(DCT)來體現(xiàn)輸入輸出系統(tǒng)的四級(jí)結(jié)構(gòu)和三級(jí)控制。我們模擬這樣的數(shù)據(jù)結(jié)構(gòu)來完成對(duì)外圍設(shè)備的管理。l 添加設(shè)備:增加對(duì)應(yīng)的設(shè)備控制表和系統(tǒng)設(shè)備表中的表項(xiàng),如果需要新建對(duì)應(yīng)的控制器控制表。l 刪除設(shè)備:刪除對(duì)應(yīng)
2、的設(shè)備控制表和系統(tǒng)設(shè)備表中的表項(xiàng),如果需要?jiǎng)h除對(duì)應(yīng)的控制器控制表。(2)設(shè)備的分配和回收,進(jìn)程申請(qǐng)?jiān)O(shè)備的時(shí)候,建立起通路,即獲成功;否則/阻塞/到通道、控制器或設(shè)備上面。進(jìn)程回收設(shè)備的時(shí)候,把阻塞進(jìn)程喚醒。(3)設(shè)備分配必須滿足設(shè)備的獨(dú)立性要求。為了實(shí)現(xiàn)設(shè)備獨(dú)立性,要求在驅(qū)動(dòng)程序之上設(shè)計(jì)一層設(shè)備無關(guān)軟件,主要功能可分為:l 執(zhí)行所有設(shè)備的公有操作,主要包括:(a)獨(dú)占設(shè)備的分配與回收;(b)將邏輯設(shè)備名映射為物理設(shè)備(LUT),進(jìn)一步可以找到相應(yīng)物理設(shè)備的驅(qū)動(dòng)程序。l 向用戶層(或文件層)軟件提供統(tǒng)一的接口。例如,對(duì)各種設(shè)備的讀操作,在應(yīng)用程序中都用read;4 實(shí)驗(yàn)設(shè)計(jì) 而對(duì)各種設(shè)備的寫操作
3、,則都使用write。#include #include #include struct sdt/系統(tǒng)設(shè)備表 char name;/設(shè)備名稱 char type;/設(shè)備類型 struct sdt *next;struct block/阻塞設(shè)備 char pname;/申請(qǐng)?jiān)O(shè)備進(jìn)程名 char ename;/設(shè)備名 struct block *next;struct chct/通道 char name;/通道名稱 int state;/通道狀態(tài) struct block *next;/通道被占用造成的阻塞隊(duì)列;struct coct/控制器表 char name;/控制器名稱 int state
4、;/控制器狀態(tài) struct chct *chct;/設(shè)備通道 struct block *next;/控制器被占用造成的阻塞隊(duì)列;struct dct/設(shè)備控制表 int state; /設(shè)備狀態(tài) struct sdt *sdt;/系統(tǒng)設(shè)備 struct coct *coct;/設(shè)備控制器 struct block *next;/設(shè)備被占用造成的阻塞隊(duì)列;sdt *s20;/設(shè)備dct *d20;/設(shè)備控制coct *co20;/控制器chct *ch1,*ch2;/通道1,通道2 block *b;int e=4;/設(shè)備數(shù),初始為4int c=3;/控制器數(shù),初始為3void init()
5、/初始化 for(int i=0;istate=0; d-sdt=s; d-next=new(block); d-next-next=NULL; s0-name=k; s1-name=m; s2-name=t; s3-name=p; s0-type=i; s1-type=i; s2-type=o; s3-type=o; for(i=1;istate=0; co-next=new(block); co-next-next=NULL; co1-name=1; co2-name=2; co3-name=3; ch1=new (chct); ch2=new (chct); ch1-name=1; ch
6、1-state=0; ch1-next=new(block); ch1-next-next=NULL; ch2-name=2; ch2-state=0; ch2-next=new(block); ch2-next-next=NULL; co1-chct=ch1; co2-chct=ch2; co3-chct=ch2; d0-coct=co1; d1-coct=co1; d2-coct=co2; d3-coct=co3; void add() char a; char b; cout設(shè)備名稱:a; cout設(shè)備類型:b; for(int i=0;isdt-name=a) cout設(shè)備已存在!na
7、me=a; se-type=b; de-sdt=se; de-state=0; de-next=new(block); de-next-next=NULL; e+; cout是否新建控制器?(y/n)a; if(a=y) char g; int flag=0; cout請(qǐng)輸入新增控制器名稱:g; if(flag=0) for(int k=1;kname=g) flag=1; cout該控制器已存在,請(qǐng)重新輸入!g; coc+1=new(coct); coc+1-name=g; coc+1-state=0; coc+1-next=new(block); coc+1-next-next=NULL; de-1-coct=coc+1; c+; cout請(qǐng)選擇通道(1/2)f; if(f=1) coc-chct=ch1; if(f=2) coc-chct=ch2; cout設(shè)備添加成功!endl; else if(a=n) cout當(dāng)前已存在的控制器有:endl; for(int i=1;i=c;i+) coutnameendl; cout輸入選擇的控制器名稱:cz; for(int j=1;jname) cou
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年張家口職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫帶答案詳解
- 2026年湖南工程職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫及答案詳解一套
- 2026年遼寧民族師范高等??茖W(xué)校單招職業(yè)技能考試題庫及參考答案詳解1套
- 2026年杭州醫(yī)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫及答案詳解1套
- 2026年德宏職業(yè)學(xué)院?jiǎn)握新殬I(yè)傾向性考試題庫及參考答案詳解一套
- 2026年南通職業(yè)大學(xué)單招職業(yè)適應(yīng)性測(cè)試題庫參考答案詳解
- 2026年武漢警官職業(yè)學(xué)院?jiǎn)握新殬I(yè)傾向性考試題庫及參考答案詳解一套
- 2026年廣東水利電力職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫及完整答案詳解1套
- 2026年新疆應(yīng)用職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫含答案詳解
- 2026年商丘職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫帶答案詳解
- 工程招投標(biāo)與監(jiān)理實(shí)務(wù)整體介紹吳莉四川交通04課件
- 2025+CSCO宮頸癌診療指南解讀
- DG-TJ08-2207-2024城市供水管網(wǎng)泵站遠(yuǎn)程監(jiān)控系統(tǒng)技術(shù)標(biāo)準(zhǔn)
- 機(jī)器學(xué)習(xí)與隨機(jī)微分方程的深度集成方法-全面剖析
- 《TSGD7003-2022壓力管道定期檢驗(yàn)規(guī)則-長(zhǎng)輸管道》
- GB/T 45355-2025無壓埋地排污、排水用聚乙烯(PE)管道系統(tǒng)
- 2025年全國(guó)碩士研究生入學(xué)統(tǒng)一考試 (數(shù)學(xué)二) 真題及解析
- 企業(yè)管理者的領(lǐng)導(dǎo)力培訓(xùn)
- There+be句型練習(xí)題及答案
- 《阻燃腈綸的研究與應(yīng)用》課件
- 吊索具的使用與報(bào)廢標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論