freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

實(shí)現(xiàn)生產(chǎn)者消費(fèi)者問(wèn)題操作系統(tǒng)課程設(shè)計(jì)報(bào)告-wenkub

2023-04-09 13:02:15 本頁(yè)面
 

【正文】 ion[i,j]=K,則表示進(jìn)程i當(dāng)前已分得RJ類資源的數(shù)目為K。這是一個(gè)N*M的矩陣,它定義了系統(tǒng)中N個(gè)進(jìn)程中的每一個(gè)進(jìn)程對(duì)M類資源的最大需求。涉及的數(shù)據(jù)結(jié)構(gòu)①用資源向量Available。當(dāng)生產(chǎn)者產(chǎn)生出數(shù)據(jù),需要將其存入緩沖區(qū)之前,首先檢查緩沖區(qū)中是否有“空”存儲(chǔ)單元,若緩沖區(qū)存儲(chǔ)單元全部用完,則生產(chǎn)者必須阻塞等待,直到消費(fèi)者取走一個(gè)存儲(chǔ)單元的數(shù)據(jù),喚醒它。這顯然是不允許的。生產(chǎn)者從第一個(gè)存儲(chǔ)單元開(kāi)始存放數(shù)據(jù),一次存放一條數(shù)據(jù)一條數(shù)據(jù)且in指針向后移一個(gè)位置,當(dāng)in 指針指向第n個(gè)存儲(chǔ)單元,下一次將指向第一個(gè)存儲(chǔ)單元,如此循環(huán)反復(fù)使用緩沖區(qū)。生產(chǎn)者與消費(fèi)者進(jìn)程共享一個(gè)大小固定的緩沖區(qū)。由于有界緩沖區(qū)是一個(gè)零界資源,必須互斥使用,所以另外還需設(shè)置一個(gè)互斥信號(hào)燈mutex,起初值為1。個(gè)這一計(jì)數(shù)器的初始值是可利用的資源數(shù)目。 在生產(chǎn)者—消費(fèi)者問(wèn)題中,信號(hào)燈具有兩種功能。而當(dāng)某個(gè)進(jìn)程釋放資源時(shí),則它就相當(dāng)一個(gè)生產(chǎn)者。當(dāng)生產(chǎn)者線程生產(chǎn)物品時(shí),如果沒(méi)有空緩沖區(qū)可用,那么生產(chǎn)者線程必須等待消費(fèi)者線程釋放出一個(gè)空緩沖區(qū)。生產(chǎn)者消費(fèi)者問(wèn)題是一個(gè)經(jīng)典的進(jìn)程同步問(wèn)題,該問(wèn)題最早由Dijkstra提出,用以演示他提出的信號(hào)量機(jī)制。當(dāng)消費(fèi)者線程消費(fèi)物品時(shí),如果沒(méi)有滿的緩沖區(qū),那么消費(fèi)者線程將被阻塞,直到新的物品被生產(chǎn)出來(lái),我的具體做法也是如此,建立緩沖區(qū),生產(chǎn)者生產(chǎn)的產(chǎn)品放入,消費(fèi)者從中取產(chǎn)品,如果沒(méi)有產(chǎn)品,則等待。二、設(shè)計(jì)內(nèi)容在同一個(gè)進(jìn)程地址空間內(nèi)執(zhí)行的兩個(gè)線程。課程設(shè)計(jì)要求:生產(chǎn)者與消費(fèi)者問(wèn)題可以算作是經(jīng)典進(jìn)程同步問(wèn)題的典型代表。******大學(xué)操作系統(tǒng)課程設(shè)計(jì)題目一:實(shí)現(xiàn)生產(chǎn)者消費(fèi)者問(wèn)題題目二:實(shí)現(xiàn)銀行家算法 指導(dǎo)老師: ****** 班 級(jí): ******班 學(xué) 號(hào): ****** 姓 名: ****** 2007年12月12日目 錄第一部分:實(shí)現(xiàn)生產(chǎn)者與消費(fèi)者問(wèn)題一、題目……………………………………………………………………………………………2課程設(shè)計(jì)目的…………………………………………………………………………………2課程設(shè)計(jì)要求…………………………………………………………………………………2二、設(shè)計(jì)內(nèi)容………………………………………………………………………………………2三、開(kāi)發(fā)環(huán)境………………………………………………………………………………………3四、分析設(shè)計(jì)………………………………………………………………………………………3設(shè)計(jì)原理………………………………………………………………………………………3涉及的數(shù)據(jù)結(jié)構(gòu)………………………………………………………………………………5流程圖…………………………………………………………………………………………6五、運(yùn)行示例及結(jié)果分析…………………………………………………………………………8運(yùn)行示例………………………………………………………………………………………8運(yùn)行結(jié)果分析:………………………………………………………………………………9六、個(gè)人體會(huì)………………………………………………………………………………………9七、附錄(源程序)………………………………………………………………………………10第二部分:實(shí)現(xiàn)銀行家算法一、題目……………………………………………………………………………………………14課程設(shè)計(jì)目的…………………………………………………………………………………14二、設(shè)計(jì)內(nèi)容………………………………………………………………………………………14三、開(kāi)發(fā)環(huán)境………………………………………………………………………………………14四、分析設(shè)計(jì)………………………………………………………………………………………14預(yù)備知識(shí)……………………………………………………………………………………14設(shè)計(jì)原理……………………………………………………………………………………17涉及的數(shù)據(jù)結(jié)構(gòu)……………………………………………………………………………18安全檢測(cè)……………………………………………………………………………………18流程圖………………………………………………………………………………………19五、運(yùn)行示例及結(jié)果分析…………………………………………………………………………19運(yùn)行示例……………………………………………………………………………………19運(yùn)行結(jié)果分析:……………………………………………………………………………20六、個(gè)人體會(huì)………………………………………………………………………………………21七、附錄(源程序)………………………………………………………………………………21參考文獻(xiàn)………………………………………………………………………………………29第一部分:實(shí)現(xiàn)生產(chǎn)者與消費(fèi)者問(wèn)題一、題目:實(shí)現(xiàn)生產(chǎn)者與消費(fèi)者問(wèn)題此問(wèn)題是經(jīng)典的進(jìn)程同步互斥問(wèn)題,問(wèn)題描述參見(jiàn)教材第36頁(yè)和第46頁(yè),要求編程實(shí)現(xiàn),生產(chǎn)者放入產(chǎn)品的和消費(fèi)者取走產(chǎn)品的速度可以調(diào)節(jié)。該課程設(shè)計(jì)要求運(yùn)用基于單緩沖區(qū)和多緩沖區(qū)的生產(chǎn)者與消費(fèi)者問(wèn)題的多種實(shí)現(xiàn)機(jī)制,其中利用了數(shù)據(jù)結(jié)構(gòu)中的循環(huán)隊(duì)列和堆棧來(lái)模擬實(shí)現(xiàn)是一種比較容易實(shí)現(xiàn)的方法。生產(chǎn)者線程生產(chǎn)物品,然后將物品放置在一個(gè)空緩沖區(qū)中供消費(fèi)者線程消費(fèi)。三、開(kāi)發(fā)環(huán)境此程序的設(shè)計(jì)在Windows XP操作系統(tǒng)下,基于Microsoft Visual C++。本作業(yè)要求設(shè)計(jì)在同一個(gè)進(jìn)程地址空間內(nèi)執(zhí)行的兩個(gè)線程。當(dāng)消費(fèi)者線程消費(fèi)物品時(shí),如果沒(méi)有滿的緩沖區(qū),那么消費(fèi)者線程將被阻塞,直到新的物品被生產(chǎn)出來(lái)。 通過(guò)一個(gè)有界緩沖區(qū)把生產(chǎn)者和消費(fèi)者聯(lián)系起來(lái)。首先,它是跟蹤資源的生產(chǎn)和消費(fèi)的計(jì)數(shù)器;其次,它是協(xié)調(diào)資源的生產(chǎn)者和消費(fèi)者之間的同步器。當(dāng)資源是不可利用時(shí),將申請(qǐng)資源的進(jìn)程放置在等待隊(duì)列中。 假定在生產(chǎn)者和消費(fèi)者之間的公用緩沖區(qū)中,具有n個(gè)緩沖區(qū),這時(shí)可以利用互斥信號(hào)量mutex實(shí)現(xiàn)諸進(jìn)程對(duì)緩沖池的互斥使用;利用信號(hào)量empty和full分別表示緩沖池中空緩沖區(qū)和滿緩沖區(qū)的數(shù)量。其中,一個(gè)或多個(gè)生產(chǎn)者生產(chǎn)數(shù)據(jù),并將生產(chǎn)的數(shù)據(jù)存入緩沖區(qū),并有一個(gè)或多個(gè)消費(fèi)者從緩沖區(qū)中取數(shù)據(jù)。消費(fèi)者從緩沖區(qū)中逐條取走數(shù)據(jù),一次取一條數(shù)據(jù),相應(yīng)的存儲(chǔ)單元變?yōu)椤翱铡保梢员簧a(chǎn)者再次使用。所以,必須使生產(chǎn)者和消費(fèi)者互斥進(jìn)入緩沖區(qū)。若緩沖區(qū)內(nèi)有“空”存儲(chǔ)單元,生產(chǎn)者需要判斷此時(shí)是否有別的生產(chǎn)者或消費(fèi)者正在使用緩沖區(qū),若是有,則阻塞等待,否則,獲得緩沖區(qū)的使用權(quán),將數(shù)據(jù)存入緩沖區(qū),釋放緩沖區(qū)的使用權(quán)。這是一個(gè)含有m個(gè)元素的數(shù)組,其中的每一個(gè)元素代表一類可利用的資源數(shù)目,其初始值是系統(tǒng)中所配置的該類全部可用資源的數(shù)目,其數(shù)值隨該類資源的分配和回收而動(dòng)態(tài)地改變。如果MAX[i,j]=K,則表示進(jìn)程I需要RJ類資源的最大數(shù)目為K。④矩陣Need。六、個(gè)人體會(huì)經(jīng)過(guò)快一個(gè)月的時(shí)間來(lái)弄這個(gè)大型作業(yè)。有于當(dāng)時(shí)在實(shí)驗(yàn)室就對(duì)進(jìn)程之間的運(yùn)轉(zhuǎn)有了一個(gè)全面的了解,雖然好多的細(xì)節(jié)部分還不是太了解,但是對(duì)一個(gè)進(jìn)程的流向和執(zhí)行過(guò)程還是有個(gè)大概的認(rèn)識(shí),所以這個(gè)大型作業(yè)做起來(lái)也不是那么的簡(jiǎn)單。經(jīng)過(guò)兩個(gè)多星期的查資料。在生產(chǎn)者與消費(fèi)者問(wèn)題的算法編寫(xiě)程序的時(shí)候要盡可能用全所學(xué)到的函數(shù),因?yàn)檫@是檢測(cè)我們用C語(yǔ)言進(jìn)行程序設(shè)計(jì)的能力的重要方式。由于對(duì)C語(yǔ)言知識(shí)已經(jīng)有些遺忘,所以我找出了以前的筆記,花了半天的時(shí)間去回憶和理解。雖然很累,但是覺(jué)得值得。 //信號(hào)量的Windows原型 define P(S) WaitForSingleObject(S, INFINITE) //定義Windows下的P操作 define V(S) ReleaseSemaphore(S, 1, NULL)//定義Windows下的V操作 define rate 1000 define CONSUMER_NUM 4 /* 消費(fèi)者個(gè)數(shù) */ define PRODUCER_NUM 4 /* 生產(chǎn)者個(gè)數(shù) */ define BUFFER_NUM 4 /* 緩沖區(qū)個(gè)數(shù) */ char *thing[10]={s1, s2, s3, s4,}。 Semaphore g_semBuffer, g_semProduct, g_mutex。 Sleep(1800)。 //記錄消費(fèi)的物品 ptr=。 Sleep(rate*rand()%10+1800)。 } //生產(chǎn)者線程 DWORD WINAPI Producer(LPVOID para) { int i=*(int*)paraCONSUMER_NUM。 Sleep(1800)。 printf(小草%03d:我要長(zhǎng)大!data = %s!\n, i, thing[data])。 //再移動(dòng)緩沖區(qū)指針 = (+1)%BUFFER_NUM。 Sleep(rate/2*rand()%10+1800)。 } int main(int argc, char *argv[]) { //線程技術(shù),前面為消費(fèi)者線程,后面為生產(chǎn)者線程 HANDLE hT
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1