版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 《高級程序設(shè)計(jì)語言》課程設(shè)計(jì)報告</p><p> 題目: 處理機(jī)低級調(diào)度模擬系統(tǒng) </p><p> 專業(yè): </p><p> 班級: </p><p> 學(xué)號: </p><p> 姓名: <
2、;/p><p> 指導(dǎo)教師: </p><p> 完成日期:2013年03月25日</p><p><b> 課程設(shè)計(jì)目的</b></p><p> 1、掌握C語言數(shù)組、函數(shù)、指針、結(jié)構(gòu)體的綜合應(yīng)用。</p><p> 2、掌握使用C語言,進(jìn)行應(yīng)用性的開發(fā)。</p>
3、;<p> 3、掌握系統(tǒng)數(shù)據(jù)結(jié)構(gòu)與算法的設(shè)計(jì)。</p><p><b> 二、課程設(shè)計(jì)內(nèi)容</b></p><p> 課程設(shè)計(jì)題目:處理機(jī)低級調(diào)度模擬系統(tǒng)</p><p> 課程設(shè)計(jì)內(nèi)容:根據(jù)操作系統(tǒng)處理機(jī)不同的調(diào)度算法,使用C語言模擬實(shí)現(xiàn)處理機(jī)調(diào)度過程。</p><p><b> 1、
4、系統(tǒng)數(shù)據(jù)結(jié)構(gòu)</b></p><p> (1)進(jìn)程控制塊(pcb):進(jìn)程名稱、到達(dá)時間、進(jìn)程要求運(yùn)行時間、進(jìn)程已運(yùn)行時間、指針、進(jìn)程狀態(tài)等等(要根據(jù)不同算法的需要定義全面的數(shù)據(jù)結(jié)構(gòu))</p><p> (2)進(jìn)程隊(duì)列(PQueue):鏈表……</p><p><b> 2、調(diào)度算法</b></p><p&g
5、t; (1)短進(jìn)程優(yōu)先調(diào)度(SJF):是以進(jìn)入系統(tǒng)的進(jìn)程所提出的“執(zhí)行時間”為標(biāo)準(zhǔn),總是優(yōu)先選取執(zhí)行時間最短的進(jìn)程。</p><p> ?。?)高響應(yīng)比優(yōu)先調(diào)度(HRN):是在每次調(diào)度前都要計(jì)算所有被選進(jìn)程(在后備隊(duì)列中)的響應(yīng)比,然后選擇響應(yīng)比最高的進(jìn)程執(zhí)行。響應(yīng)比=(等待時間+服務(wù)時間)/服務(wù)時間</p><p><b> 三、課程設(shè)計(jì)的要求</b></
6、p><p> 1、按照給出的題目內(nèi)容</p><p> (1)完成系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)與實(shí)現(xiàn)、系統(tǒng)算法設(shè)計(jì)與實(shí)現(xiàn)、系統(tǒng)模塊設(shè)計(jì)與實(shí)現(xiàn)、系統(tǒng)總體的設(shè)計(jì)與實(shí)現(xiàn)。</p><p> ?。?)系統(tǒng)需要一個簡單操作界面,例如:</p><p> ===========================</p><p> 1. 短進(jìn)
7、程優(yōu)先調(diào)度</p><p> 2. 高響應(yīng)比優(yōu)先調(diào)度</p><p><b> 3. 退出</b></p><p> ?。ò磾?shù)字1、2、3,選擇操作)</p><p> ===========================</p><p> ?。?)對每種調(diào)度算法都要求輸出每個進(jìn)程(進(jìn)程數(shù)
8、不少于5)開始運(yùn)行時刻、完成時刻、周轉(zhuǎn)時間,以及這組進(jìn)程的平均周轉(zhuǎn)時間。</p><p> ?。?)畫出每種調(diào)度算法流程圖。</p><p> 2、寫出課程設(shè)計(jì)報告,設(shè)計(jì)報告提交形式:電子文檔提交</p><p><b> 3、個人獨(dú)立完成。</b></p><p> 4、完成時間(1周)</p>&
9、lt;p><b> 四、課程設(shè)計(jì)過程</b></p><p> 1、系統(tǒng)中所使用的數(shù)據(jù)結(jié)構(gòu)及說明</p><p> //-----------------數(shù)據(jù)結(jié)構(gòu)的定義----------------------------</p><p> //定義進(jìn)程控制塊PCB</p><p> typedef s
10、truct PCB</p><p><b> {</b></p><p> char PID[5]; //進(jìn)程標(biāo)示符</p><p> char Name[10]; //進(jìn)程名稱</p><p> int PRI; //進(jìn)程的優(yōu)先級(越小越高)</p><p>
11、; float NeedTime; //進(jìn)程要求運(yùn)行時間(服務(wù)時間)</p><p> float StartTime; //進(jìn)程進(jìn)入就緒隊(duì)列的時間(到達(dá)時間)</p><p> float RunBeginTime; //開始運(yùn)行時間</p><p> float UpTime; //進(jìn)程已運(yùn)行時間</p><p
12、> float OverTime; //進(jìn)程運(yùn)行完成的時間</p><p> float TurnaroundTime; //周轉(zhuǎn)時間</p><p> float RightTTime; //帶權(quán)周轉(zhuǎn)時間</p><p> struct PCB *next;</p><p> }PCB,*QueuePtr;&l
13、t;/p><p><b> //定義進(jìn)程隊(duì)列</b></p><p> typedef struct</p><p><b> {</b></p><p> QueuePtr front,rear;//隊(duì)頭、隊(duì)尾指針 </p><p><b> }
14、PQueue;</b></p><p><b> 2、系統(tǒng)功能結(jié)構(gòu)</b></p><p> 本系統(tǒng)是處理機(jī)低級調(diào)度模擬系統(tǒng),主要通過模擬來實(shí)現(xiàn)處理機(jī)調(diào)度,調(diào)度方式有短進(jìn)程優(yōu)先調(diào)度(SJF)、高響應(yīng)比優(yōu)先調(diào)度(HRN)、兩種調(diào)度方式。</p><p> 系統(tǒng)運(yùn)行過程如下:輸入進(jìn)程個數(shù),輸入進(jìn)程詳細(xì)信息,通過簡單操作界面來選擇調(diào)
15、度方式,調(diào)度的過程和結(jié)果,重新選擇調(diào)度方式或者選擇結(jié)束。</p><p> 3、調(diào)度算法流程圖(如下圖所示)</p><p> 4、程序清單及其描述</p><p> #include<stdio.h> </p><p> #include<stdlib.h> </p><p> #i
16、nclude<math.h></p><p> #include<malloc.h> </p><p> #include<process.h> </p><p> #include<stdlib.h></p><p> #define NULL 0</p><p&
17、gt; int ProcessNum;//進(jìn)程個數(shù)</p><p> float AverageTurnoverTime;//平均周轉(zhuǎn)時間</p><p> float AverageRightTTime;//平均帶權(quán)周轉(zhuǎn)時間</p><p> //-----------------函數(shù)結(jié)果狀態(tài)代碼------------------------
18、----</p><p> #define TRUE 1</p><p> #define FALSE 0</p><p> #define OK 1</p><p> #define ERROR 0</p><p> //-----------------數(shù)據(jù)結(jié)構(gòu)的定義-------------------
19、---------</p><p> //定義進(jìn)程控制塊PCB</p><p> typedef struct PCB</p><p><b> {</b></p><p> char PID[5];//進(jìn)程標(biāo)示符</p><p> char Name[10];//進(jìn)程
20、名稱</p><p> int PRI;//進(jìn)程的優(yōu)先級(越小越高)</p><p> float NeedTime;//進(jìn)程要求運(yùn)行時間(服務(wù)時間)</p><p> float StartTime;//進(jìn)程進(jìn)入就緒隊(duì)列的時間(到達(dá)時間)</p><p> float RunBeginTime;//開始運(yùn)行時間
21、</p><p> float UpTime;//進(jìn)程已運(yùn)行時間</p><p> float OverTime;//進(jìn)程運(yùn)行完成的時間</p><p> float TurnaroundTime;//周轉(zhuǎn)時間</p><p> float RightTTime;//帶權(quán)周轉(zhuǎn)時間</p><p&g
22、t; struct PCB *next;</p><p> }PCB,*QueuePtr;</p><p><b> //定義進(jìn)程隊(duì)列</b></p><p> typedef struct</p><p><b> {</b></p><p> Queu
23、ePtr front,rear;//隊(duì)頭、隊(duì)尾指針 </p><p> }PQueue;</p><p> //-----------------函數(shù)的申明---------------------------------</p><p> int InitQueue(PQueue &Q);//構(gòu)造一個空隊(duì)列</p>&
24、lt;p> int EnQueue(PQueue &Q);//插入一個新的進(jìn)程到隊(duì)尾</p><p> int QueueEmpty(PQueue Q);//隊(duì)列判空, 若Q為空隊(duì)列,則返回1,否則返回0</p><p> void PoolQueue(PQueue *Q);//建立后備隊(duì)列</p><p> int print(
25、PQueue Q);//進(jìn)程隊(duì)列輸出</p><p> void SPFsort(PQueue &Q);//短進(jìn)程優(yōu)先調(diào)度的對服務(wù)時間進(jìn)行排序</p><p> void HRNsort(PQueue &Q);//高響應(yīng)比優(yōu)先調(diào)度的對服務(wù)時間進(jìn)行排序</p><p> void ManagesChooses(PQueue &
26、;Q); //調(diào)度方式選擇</p><p> //--------------------------------函數(shù)的定義---------------------------------</p><p> //--------------------------------構(gòu)造一個空隊(duì)列---------------------------------</p><
27、;p> int InitQueue(PQueue &Q)</p><p><b> {</b></p><p> Q.front=Q.rear=(QueuePtr)malloc(sizeof(PCB));</p><p> if(!Q.front)</p><p><b> exit(0
28、);</b></p><p> Q.front->next=NULL;</p><p><b> return 1;</b></p><p><b> }</b></p><p> //--------------------------------插入一個新的進(jìn)程到隊(duì)尾-
29、--------------------------------</p><p> int EnQueue(PQueue &Q)</p><p> { </p><p> QueuePtr p;</p><p> if(!(p=(
30、QueuePtr)malloc(sizeof(PCB))))//存儲分配失敗</p><p><b> exit(0);</b></p><p> scanf("%s",p->PID);//輸入進(jìn)程標(biāo)示符</p><p> scanf("%s",p->N
31、ame);//輸入進(jìn)程名</p><p> scanf("%d%f%f",&p->PRI,&p->NeedTime,&p->StartTime);//輸入進(jìn)程優(yōu)先級、要求運(yùn)行時間、到達(dá)時間</p><p> p->next=NULL;</p><p> Q.rear-
32、>next=p;</p><p><b> Q.rear=p;</b></p><p><b> return 1;</b></p><p><b> }</b></p><p> //--------------------------------隊(duì)列判空, 若
33、Q為空隊(duì)列,則返回1,否則返回0---------------------------------</p><p> int QueueEmpty(PQueue Q)</p><p> {// 若Q為空隊(duì)列,則返回1,否則返回0</p><p> if(Q.front==Q.rear)</p><p>&
34、lt;b> return 1;</b></p><p><b> else</b></p><p><b> return 0;</b></p><p><b> }</b></p><p> //--------------------------
35、------建立后備隊(duì)列---------------------------------</p><p> void PoolQueue(PQueue *Q) </p><p><b> {</b></p><p><b> int i;</b></p><p> printf(&qu
36、ot;請輸入進(jìn)程的個數(shù):");</p><p> scanf("%d",&ProcessNum);</p><p> printf("請輸入%d個進(jìn)程的信息(T代表時間)\n標(biāo)示符進(jìn)程名優(yōu)先級服務(wù)T到達(dá)T\n",ProcessNum);</p><p> for(i=1;i<=Proces
37、sNum;i++)</p><p> EnQueue(*Q);</p><p><b> }</b></p><p> //--------------------------------進(jìn)程隊(duì)列輸出---------------------------------</p><p> int print(PQue
38、ue Q)</p><p><b> {</b></p><p> QueuePtr p;</p><p> if(Q.front==Q.rear)</p><p><b> return 0;</b></p><p> p=Q.front->next;<
39、;/p><p> printf("(T代表時間)\n標(biāo)示符進(jìn)程名優(yōu)先級服務(wù)T到達(dá)T\n");</p><p> while (p!=NULL)//當(dāng)隊(duì)列不空</p><p><b> {</b></p><p> printf("%s\t%s\t%d\t%4.
40、3f\t%4.3f\n",p->PID,p->Name,p->PRI,p->NeedTime,p->StartTime); </p><p> p=p->next;</p><p><b> }</b></p><p><b&g
41、t; }</b></p><p> //--------------------------------短進(jìn)程優(yōu)先調(diào)度的對服務(wù)時間進(jìn)行排序---------------------------------</p><p> void SPFsort(PQueue &Q)</p><p><b> {</b><
42、;/p><p> float deltaT,Time=0;//deltaT是時間差</p><p> QueuePtr temp1,temp2,tail,p=Q.front;</p><p> QueuePtr q=p->next;</p><p> tail=NULL;</p><p> fo
43、r(;q->next!=tail;)//找出第一個到達(dá)而且服務(wù)時間最少的進(jìn)程</p><p><b> {</b></p><p> if(p->next->StartTime > q->next->StartTime)</p><p><b> {</b></p
44、><p> temp1=p->next;</p><p> temp2=q->next;</p><p> p->next=temp2;</p><p> q->next=temp2->next;</p><p> p->next->next=temp1;</p&g
45、t;<p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> q=q->next;</p><p><b> }</b></p><p
46、><b> }</b></p><p> if(p->next->StartTime > Time)</p><p> Time=p->StartTime;</p><p> Time=Time+p->next->NeedTime;</p><p> for(p=p-
47、>next,q=p->next;p->next->next!=tail;p=p->next,q=p->next)//對隊(duì)列按到達(dá)時間與服務(wù)時間長短進(jìn)行選擇排序(從第二個元素開始)</p><p><b> {</b></p><p> while(q->next!=tail)</p><p>&
48、lt;b> {</b></p><p> if((p->next->StartTime <= Time))</p><p><b> {</b></p><p> if((q->next->StartTime <= Time)&&(p->next->Nee
49、dTime > q->next->NeedTime))</p><p><b> {</b></p><p> temp1=p->next;</p><p> temp2=q->next;</p><p> p->next=temp2;</p><p>
50、 q->next=temp2->next;</p><p> p->next->next=temp1;</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p>
51、<p> q=q->next;</p><p><b> }</b></p><p><b> }</b></p><p> else if((p->next->StartTime > Time)&&(q->next->StartTime <=
52、Time))</p><p><b> {</b></p><p> temp1=p->next;</p><p> temp2=q->next;</p><p> p->next=temp2;</p><p> q->next=temp2->next;&l
53、t;/p><p> p->next->next=temp1;</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> q=q->next;</
54、p><p><b> }</b></p><p><b> }</b></p><p> if(p->next->StartTime > Time)</p><p><b> {</b></p><p> deltaT=p->
55、;StartTime-Time;</p><p> Time=Time+deltaT;</p><p><b> }</b></p><p> Time=Time+p->next->NeedTime;</p><p><b> } </b></p><
56、p><b> }</b></p><p> //--------------------------------高響應(yīng)比優(yōu)先調(diào)度的對服務(wù)時間進(jìn)行排序---------------------------------</p><p> void HRNsort(PQueue &Q)</p><p><b> {
57、</b></p><p> float deltaT,PResponseRatio,QResponseRatio,Time=0;//deltaT是時間差,PResponseRatio、QResponseRatio是響應(yīng)比</p><p> QueuePtr temp1,temp2,tail,p=Q.front;</p><p> QueuePt
58、r q=p->next;</p><p> tail=NULL;</p><p> for(;q->next!=tail;)//找出第一個到達(dá)而且服務(wù)時間最少的進(jìn)程</p><p><b> {</b></p><p> if(p->next->StartTime >
59、; q->next->StartTime)</p><p><b> {</b></p><p> temp1=p->next;</p><p> temp2=q->next;</p><p> p->next=temp2;</p><p> q->n
60、ext=temp2->next;</p><p> p->next->next=temp1;</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p>
61、; q=q->next;</p><p><b> }</b></p><p><b> }</b></p><p> if(p->next->StartTime > Time)</p><p> Time=p->StartTime;</p>
62、<p> Time=Time+p->next->NeedTime;</p><p> for(p=p->next,q=p->next;p->next->next!=tail;p=p->next,q=p->next)//對隊(duì)列按響應(yīng)比大小排序(從第二個元素開始)</p><p><b> {</b>&l
63、t;/p><p> while(q->next!=tail)</p><p><b> {</b></p><p> if((p->next->StartTime <= Time)&&(q->next->StartTime <= Time))</p><p>&
64、lt;b> {</b></p><p> PResponseRatio=(((Time-p->next->StartTime)+p->next->NeedTime)/(p->next->NeedTime));</p><p> QResponseRatio=(((Time-q->next->StartTime)+q-&
65、gt;next->NeedTime)/(q->next->NeedTime));</p><p> if(PResponseRatio<QResponseRatio)</p><p><b> {</b></p><p> temp1=p->next;</p><p> temp2=
66、q->next;</p><p> p->next=temp2;</p><p> q->next=temp2->next;</p><p> p->next->next=temp1;</p><p><b> }</b></p><p><b&g
67、t; else</b></p><p><b> {</b></p><p> q=q->next;</p><p><b> }</b></p><p><b> }</b></p><p> else if((p->
68、;next->StartTime > Time)&&(q->next->StartTime <= Time))</p><p><b> {</b></p><p> temp1=p->next;</p><p> temp2=q->next;</p><p&g
69、t; p->next=temp2;</p><p> q->next=temp2->next;</p><p> p->next->next=temp1;</p><p><b> }</b></p><p><b> else</b></p>
70、<p><b> {</b></p><p> q=q->next;</p><p><b> }</b></p><p><b> }</b></p><p> if(p->next->StartTime > Time)</p
71、><p><b> {</b></p><p> deltaT=p->StartTime-Time;</p><p> Time=Time+deltaT;</p><p><b> }</b></p><p> Time=Time+p->next->N
72、eedTime;</p><p><b> } </b></p><p><b> }</b></p><p> //--------------------------------調(diào)度---------------------------------</p><p> void Disp
73、atcher(PQueue &Q)</p><p><b> {</b></p><p> float SumTurnaroundTime=0;//定義周轉(zhuǎn)時間總和并賦值0</p><p> float SumRightTTime=0;//定義帶權(quán)周轉(zhuǎn)時間總和并賦值0</p>&
74、lt;p> float deltaT,Time=0;//deltaT是時間差</p><p> QueuePtr p=Q.front->next;</p><p> printf("(T代表時間)\n標(biāo)示符進(jìn)程名到達(dá)T服務(wù)T開始T完成T周轉(zhuǎn)T帶權(quán)周轉(zhuǎn)T\n");</p><p> for(;p!
75、=NULL;p=p->next)</p><p><b> {</b></p><p> if(p->StartTime>Time)</p><p><b> {</b></p><p> deltaT=p->StartTime-Time;</p>&l
76、t;p> Time=deltaT;</p><p><b> }</b></p><p> p->RunBeginTime=Time;</p><p> p->OverTime=Time+p->NeedTime;</p><p> p->TurnaroundTime=p->
77、OverTime-p->StartTime;</p><p> p->RightTTime=p->TurnaroundTime/p->NeedTime;</p><p> printf("%s\t%s\t%4.3f\t%4.3f\t%4.3f\t%4.3f\t%4.3f\t%4.3f\n",p->PID,p->Name,p->
78、;StartTime,p->NeedTime,p->RunBeginTime,p->OverTime,p->TurnaroundTime,p->RightTTime);</p><p> Time=p->OverTime;</p><p><b> }</b></p><p> for(p=Q.fron
79、t->next;p!=NULL;p=p->next)//計(jì)算平均周轉(zhuǎn)時間和平均帶權(quán)周轉(zhuǎn)時間</p><p><b> {</b></p><p> SumTurnaroundTime=SumTurnaroundTime+p->TurnaroundTime;</p><p> SumRightTTime=SumR
80、ightTTime+p->RightTTime;</p><p><b> }</b></p><p> AverageTurnoverTime=SumTurnaroundTime/ProcessNum;</p><p> AverageRightTTime=SumRightTTime/ProcessNum;</p>
81、<p> printf("此調(diào)度方式的平均周轉(zhuǎn)時間為%4.3f,平均帶權(quán)周轉(zhuǎn)時間為%4.3f\n",AverageTurnoverTime,AverageRightTTime);</p><p><b> }</b></p><p> //--------------------------------調(diào)度方式選擇---------
82、------------------------</p><p> void ManagesChooses(PQueue &Q)</p><p><b> {</b></p><p><b> int i;</b></p><p> printf("\n\n\n\t請選擇
83、調(diào)度方式:\n");</p><p> printf("===========================\n");</p><p> printf(" 1. 短進(jìn)程優(yōu)先調(diào)度\n");</p><p> printf(" 2. 高響應(yīng)比優(yōu)先調(diào)度\n");</p&g
84、t;<p> printf(" 3. 退出\n");</p><p> printf("(按數(shù)字1、2、3,選擇操作)\n");</p><p> printf("===========================\n");</p><p> scanf("%d
85、",&i);</p><p><b> switch(i)</b></p><p><b> {</b></p><p> case 1:SPFsort(Q);</p><p> printf("短進(jìn)程優(yōu)先調(diào)度的對服務(wù)時間進(jìn)行排序的排序結(jié)果如下:\n")
86、;</p><p><b> print(Q);</b></p><p> printf("\n調(diào)度后的結(jié)果如下:\n");</p><p> Dispatcher(Q);</p><p> ManagesChooses(Q);</p><p><b> b
87、reak;</b></p><p> case 2:HRNsort(Q);</p><p> printf("高響應(yīng)比優(yōu)先調(diào)度的對服務(wù)時間進(jìn)行排序的排序結(jié)果如下:\n");</p><p><b> print(Q);</b></p><p> printf("\n調(diào)度后
88、的結(jié)果如下:\n");</p><p> Dispatcher(Q);</p><p> ManagesChooses(Q);</p><p><b> break;</b></p><p> case 3:break;</p><p><b> }</b>
89、;</p><p><b> }</b></p><p> //--------------------------------主函數(shù)---------------------------------</p><p> void main()</p><p><b> {</b></p
90、><p><b> int n;</b></p><p><b> PQueue Q;</b></p><p> InitQueue(Q);//初始化后備隊(duì)列</p><p> PoolQueue(&Q);//進(jìn)程插入后備隊(duì)列中并返回進(jìn)程個數(shù)</p><p
91、> printf("\n輸入的進(jìn)程情況如下:\n");</p><p><b> print(Q);</b></p><p> ManagesChooses(Q);</p><p><b> }</b></p><p><b> 5、系統(tǒng)運(yùn)行結(jié)果<
92、/b></p><p><b> 五、課程設(shè)計(jì)體會</b></p><p> 處理機(jī)調(diào)度問題實(shí)際上是處理機(jī)分配問題。只有那些參與競爭處理機(jī)所必須的資源都已得到滿足的進(jìn)程才能享受競爭處理機(jī)的資格,這時它們處于內(nèi)存就緒狀態(tài)。這些必須的資源包括內(nèi)存、外設(shè)及有關(guān)數(shù)據(jù)結(jié)構(gòu)等。作業(yè)調(diào)度程序必須先調(diào)用存儲管理、外設(shè)管理,分配資源,讓它們能有競爭資格。</p>
93、<p> 為了提高資源利用率,一部分在內(nèi)存中處于就緒、等待狀態(tài)而短期內(nèi)不能執(zhí)行進(jìn)程、作業(yè)換出內(nèi)存,所以外存中除了處于后備狀態(tài)的作業(yè),還有處于就緒狀態(tài)的作業(yè)。這就需要一定的方法和策略來為這部分作業(yè)分配空間。</p><p> 學(xué)習(xí)完《操作系統(tǒng)原理》課程后,進(jìn)行的這次全面的綜合訓(xùn)練,通過課程設(shè)計(jì),使我更好地掌握操作系統(tǒng)的原理及實(shí)現(xiàn)方法,加深對操作系統(tǒng)基礎(chǔ)理論和重要算法的理解,加強(qiáng)學(xué)生的動手能力,并與編
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c語言課程設(shè)計(jì)--處理機(jī)低級調(diào)度模擬系統(tǒng)
- 課程設(shè)計(jì)報告---處理機(jī)調(diào)度模擬程序
- os課程設(shè)計(jì)---模擬處理機(jī)調(diào)度算法mfc實(shí)現(xiàn)
- 操作系統(tǒng)課程設(shè)計(jì)報告--處理機(jī)調(diào)度問題
- 操作系統(tǒng)課程設(shè)計(jì)-對處理機(jī)的調(diào)度
- 處理機(jī)調(diào)度算法的模擬
- c語言磁盤調(diào)度課程設(shè)計(jì)報告
- c語言課程設(shè)計(jì)-自動提款模擬系統(tǒng)
- c語言課程設(shè)計(jì)---??兆鲬?zhàn)模擬系統(tǒng)
- c語言課程設(shè)計(jì)--圖像處理
- c語言課程設(shè)計(jì)---交通模擬導(dǎo)航系統(tǒng)
- 處理機(jī)調(diào)度習(xí)題
- c語言課程設(shè)計(jì)--數(shù)據(jù)集合處理
- 圖形模擬時鐘c語言課程設(shè)計(jì)
- c語言課程設(shè)計(jì)報告-- 簡單圖形處理系統(tǒng)
- c語言課程設(shè)計(jì)報告—機(jī)房機(jī)位預(yù)約模擬系統(tǒng)
- 處理機(jī)調(diào)度算法詳解
- 【課程設(shè)計(jì)】c語言課程設(shè)計(jì)
- 進(jìn)程調(diào)度模擬系統(tǒng)課程設(shè)計(jì)
- c語言課程設(shè)計(jì)報告--符串處理
評論
0/150
提交評論