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

正文內(nèi)容

操作系統(tǒng)進(jìn)程管理演示系統(tǒng)開(kāi)發(fā)(生產(chǎn)者-消費(fèi)者)畢業(yè)論文(存儲(chǔ)版)

  

【正文】 設(shè)計(jì) ............................................................................................. 12 MFC的介紹 .......................................................................................... 12 MFC界面效果 ....................................................................................... 14 系統(tǒng)功能的實(shí)現(xiàn) .............................................................................................. 17 4 系統(tǒng)演示 ................................................................................................................. 19 系統(tǒng)演示的準(zhǔn)備 .............................................................................................. 19 系統(tǒng)演示的效果 .............................................................................................. 19 單生產(chǎn)者 單消費(fèi)者模擬效果 .................................................................. 19 多生產(chǎn)者 多消費(fèi)者模擬效果 .................................................................. 20 系統(tǒng)演示結(jié)論 .................................................................................................. 22 5 總結(jié) ......................................................................................................................... 23 浙江林學(xué)院天目學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 1 1 引言 選題的意義 操作系統(tǒng)(簡(jiǎn)稱(chēng) OSoperating system) 是高等教育計(jì)算機(jī)應(yīng)用專(zhuān)業(yè)教學(xué)計(jì)劃中一門(mén)重要的專(zhuān)業(yè)基礎(chǔ)課程 。 眾所周知,計(jì)算機(jī)是各種信息系統(tǒng)的核心 , CPU被喻為計(jì)算機(jī)系統(tǒng)的心臟 , OS 被喻為計(jì)算機(jī)系統(tǒng)的大腦,是用戶(hù)與計(jì)算機(jī)系統(tǒng)打交道的環(huán)境界面,心臟和大腦的緊密配合,才使計(jì)算機(jī)系統(tǒng)成為電子時(shí)代、信息社會(huì)無(wú)所不在的基礎(chǔ)設(shè)施 [1]。 生產(chǎn)者 消費(fèi)者問(wèn)題是經(jīng)典同步問(wèn)題之一 ,不但在操作系統(tǒng)中很重要 , 而且在分布式應(yīng)用開(kāi)發(fā)、實(shí)時(shí)數(shù)據(jù)庫(kù)管理系統(tǒng)、 CIMS 網(wǎng)絡(luò)工程中都會(huì)遇到。 開(kāi)發(fā)系統(tǒng)的意義 采用信號(hào)量機(jī)制與 PV操作來(lái)協(xié)調(diào)進(jìn)程的同步 , 一直是操作系統(tǒng)教學(xué)中的一個(gè)難點(diǎn)問(wèn)題 , 而且由它引出的一系列問(wèn)題 , 如 : 生產(chǎn)者與消費(fèi)者、讀者與寫(xiě)者、哲學(xué)家進(jìn)餐、理發(fā)師等問(wèn)題都是很典型的進(jìn)程同步與互斥問(wèn)題。 P 操作 相當(dāng)于申請(qǐng)資源 , 進(jìn) 程在使用資源之前 , 應(yīng)先調(diào)用操作申請(qǐng)所須資源 , 若資源申請(qǐng)被滿(mǎn)足 , 則進(jìn)程可以繼續(xù)執(zhí)行 , 否則進(jìn)程將調(diào)用阻塞原語(yǔ)阻塞自己 。實(shí)現(xiàn)進(jìn)程同步的關(guān)鍵在于當(dāng)一個(gè)進(jìn)程執(zhí)行以后 , 確定下一個(gè)將要執(zhí)行的進(jìn)程 , 并用 V操作使該進(jìn)程可以執(zhí)行。要使多個(gè)進(jìn)程不會(huì)同時(shí)訪(fǎng)問(wèn)臨界資源 , 只需要讓它們?cè)趫?zhí)行時(shí)不會(huì)同時(shí)執(zhí)行臨界區(qū)內(nèi)的代碼就可以了?;コ獯嬖谟谒羞M(jìn)程之間 , 各自需要獨(dú)占地使用緩沖區(qū)。 ( 2)對(duì)于任意的 i( 1≤ i≤ n), j( 1≤ j≤ m),只有在 ConsumerJ從緩沖區(qū)取出物品后, ProducerI才能夠繼續(xù)向緩沖區(qū)中放入新生產(chǎn)的物品;因此存在 ProducerI 對(duì)于 ConsumerJ 的同步依賴(lài)。 進(jìn)程關(guān)系分析 同步關(guān)系: ( 1)只有在 Producer 向緩沖區(qū)放入物品后, Consumer 才能夠從緩沖區(qū)中取出物品消費(fèi);因此存在 Consumer 對(duì)于 Producer 的同步依賴(lài)。 互斥關(guān)系: ( 1)對(duì)于任意的 i( 1≤ i≤ n), j( 1≤ j≤ m), s( 1≤ s≤ K), t( 1≤ t≤ K), s≠ t,ProducerI 向空閑緩沖區(qū) Buffer[Ks]放入物品的同時(shí), ConsumerJ 可以從滿(mǎn)緩沖區(qū) Buffer[Kt]中取出物品;反之亦然。 浙江林學(xué)院天目學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 7 2 系統(tǒng)需求分析 任務(wù)概述 目標(biāo) 學(xué)生通過(guò)該演示系統(tǒng)能形象的看到進(jìn)程的調(diào)度 ,以便能更加透徹的理解操作系統(tǒng)中消費(fèi)者 生產(chǎn)者的同步互斥問(wèn)題。 演示系統(tǒng)的分析 功能需求分析 1. 操作系統(tǒng)進(jìn)程管理演示系統(tǒng)是 采用動(dòng)畫(huà)和交互的方式對(duì) 生產(chǎn)者 消費(fèi)者 問(wèn)題 進(jìn)行演示、教學(xué) 。 P( Empty) 申請(qǐng)一個(gè)空白緩沖 ; P (MuxPro2ducer)申請(qǐng)對(duì)空白緩沖資源獨(dú)占使用 ; 找出一空白緩沖區(qū) ,把數(shù)據(jù)拷貝到緩沖區(qū) 。為了通用性 ,采用了以上兩種方法的結(jié)合 ,并把生產(chǎn)者和消費(fèi)者中的加入數(shù)據(jù)到緩沖區(qū)和從緩沖區(qū)中取出數(shù)據(jù)的過(guò)程封裝到一個(gè) DLL 中 [7] ,這樣 ,可以大大方便應(yīng)用程序的編制 ,也使進(jìn)行應(yīng)用程序設(shè)計(jì)的人員不必關(guān)心該問(wèn)題中具體實(shí)現(xiàn)過(guò)程。 int temp=0。 t+=1。 t+=10。 int t=0。 浙江林學(xué)院天目學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 12 t+=1。 t+=10。 1. 封裝 構(gòu)成 MFC框架的是 MFC 類(lèi)庫(kù)。文檔是用戶(hù)操作的數(shù)據(jù)對(duì)象,視圖是數(shù)據(jù)操作的窗口,用戶(hù)通過(guò)它處理、查看數(shù)據(jù)。所有從 CObject派生的類(lèi)都將具備或者可以具備 CObject 所擁有的特性。例如, CWnd 封裝 Windows 窗口對(duì)象時(shí),每一條 Windows 消息對(duì)應(yīng)一個(gè)成員函數(shù),這些成員函數(shù)為派生類(lèi)所繼承。這樣封裝的結(jié)果對(duì)程序員來(lái)說(shuō),是一套開(kāi)發(fā)模板(或者說(shuō)模式)。同時(shí), MFC支持對(duì)底層 API的直接調(diào)用。 thisSetTimer(100,1000,NULL)。 thism_PT[i] =new CProducerThread(this,str)。amp。 VERIFY(thism_CT[i]SetThreadPriority(THREAD_PRIORITY_IDLE))。 m_Array[i]=0。 } 4. 退出按紐的代碼: void CPCDlg::OnExit() { EndDialog(0)。以后當(dāng)消費(fèi)者消費(fèi)后喚醒它。 此類(lèi)問(wèn)題較簡(jiǎn)單 ,對(duì)于生產(chǎn)者進(jìn)程 ,他的活動(dòng)過(guò)程如下 :首先判斷該單緩沖區(qū)是否為空 ,如果不是 ,則生產(chǎn)者進(jìn)程自我阻塞 。 再 多生產(chǎn)者 多消費(fèi)者模擬 演示時(shí)設(shè)置生產(chǎn)者數(shù)目為 3,而消費(fèi)者數(shù)目為 4,這樣更有利于觀(guān)察系統(tǒng)模擬的準(zhǔn)確性。同樣 ,當(dāng)有 1 個(gè)消費(fèi)者線(xiàn)程從循環(huán)緩沖區(qū)中取走 1個(gè)數(shù)據(jù)后 ,它會(huì)喚醒阻塞著的生產(chǎn)者線(xiàn)程。感謝所有幫助過(guò)我的老師和同學(xué),謝謝你們!最后感謝我的母校浙江林學(xué)院四年來(lái)對(duì)我的大力栽培。 汪老師給了我很大的幫助,使我得到了很大的提高,這對(duì)于我 以后的工作和學(xué)習(xí)有非常大的幫助,非常感謝他的耐心指導(dǎo)。 當(dāng)循環(huán)緩沖區(qū)滿(mǎn)時(shí) ,生產(chǎn)者線(xiàn)程阻塞。但要注意 ,不論是生產(chǎn)者之間 ,消費(fèi)者之間 ,還是生產(chǎn)者與消費(fèi)者之間 ,他們對(duì)于臨界資源──緩沖區(qū)的訪(fǎng)問(wèn)必須是互斥的 ,也就是說(shuō) ,在 1 個(gè)生產(chǎn)者或消費(fèi)者線(xiàn)程訪(fǎng)問(wèn)完該緩沖區(qū)之前 ,是決不允許其它的生產(chǎn)者或消費(fèi)者線(xiàn)程訪(fǎng) 問(wèn)的。 2. 多生產(chǎn)者 多消費(fèi)者問(wèn)題模型 。生產(chǎn)者放一個(gè)產(chǎn)品 , 就在生產(chǎn)者當(dāng)前指針位置的方框用 紅 色填充 , 指針順時(shí)針前進(jìn)一格 , 指向下一個(gè)可以放產(chǎn)品的緩沖區(qū) 。 (true)。i++) { m_hFullSemaphore[i]=CreateSemaphore(NULL,0,1,NULL)。 thism_CT[i] =new CConsumerThread(this,str)。 thism_continue=true。 ithism_np。 MFC 界面效果 這 是 系統(tǒng)界 面設(shè)計(jì)的截圖: 浙江林學(xué)院天目學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 15 圖 MFC 界面 界面上有 2 個(gè)靜態(tài)文本, 2 個(gè)編輯框和 7 個(gè)按紐組成 : 1. 啟動(dòng)生產(chǎn)者按紐 的 代碼: void CPCDlg::OnPstar() { UpdateData(true)。雖然,這些內(nèi)部處理對(duì)程序員來(lái)說(shuō)是透明的,但是,懂得和理解 MFC內(nèi)部機(jī)制有助于寫(xiě)出功能靈活而強(qiáng)大的程序。本書(shū)將充分的展示 MFC 調(diào)用虛擬函數(shù)和消息處理 函數(shù)的內(nèi)幕,讓讀者對(duì) MFC 的編程接口有清晰的理解。 3. 虛擬函數(shù)和動(dòng)態(tài)約束 MFC 以 “C++”為基礎(chǔ),自然支持虛擬函數(shù)和動(dòng)態(tài)約束。 CObject 是 MFC 的根類(lèi),絕大多數(shù) MFC 類(lèi)是其派生的,包括 CCmdTarget。 MFC 把許多類(lèi)似的處理封裝起來(lái),替程序員完成這些工作。因?yàn)榭傮w上, MFC框架定義了應(yīng)用程序的輪廓,并提供了用戶(hù)接口的標(biāo)準(zhǔn)實(shí)現(xiàn)方法,程序員所要做的就是通過(guò)預(yù)定義的接口把具體應(yīng)用程序特有的東西填入這個(gè)輪廓。 srand( (unsigned)time( NULL ) )。 srand( (unsigned)time( NULL ) )。 pDlg=(CPCDlg*)thism_Parent。 srand( (unsigned)time( NULL ) )。 srand( (unsigned)time( NULL ) )。 生產(chǎn)者 模擬函數(shù)代碼 int CProducerThread::Run() { CPCDlg *pDlg。 V (MuxCustomer) 釋放對(duì)滿(mǎn)緩沖資源獨(dú)占使用 ; V(Empty)產(chǎn)生一個(gè)空白緩沖區(qū)進(jìn)行數(shù)據(jù)處理。設(shè)兩個(gè)互斥 量MuxProducer 和 MuxCustomer ,它們的初值都為 1。 Visual C++件組成,包括編輯器、調(diào)試器以及程序向?qū)?AppWizard、類(lèi)向?qū)?Class Wizard等開(kāi)發(fā)工具。 ( 4)對(duì)于任意的 i( 1≤ i≤ n), j( 1≤ j≤ n), i≠ j, s( 1≤ s≤ m), t( 1≤ t ≤ m), s≠ t,盡管 ProducerI 和 ProducerJ 之間、 ConsumerS 和 ConsumerT 之間、 ProducerI 和 ConsumerS 之間不存在針對(duì)緩沖區(qū)的互斥關(guān)系 ,但由于 ProducerI、 ProducerJ、 ConsumerS 和ConsumerT 都需要在操作緩沖區(qū)的同時(shí)對(duì)緩沖區(qū)隊(duì)列進(jìn)行維護(hù),緩沖區(qū)隊(duì)列成為所有進(jìn)程間的新的臨界資源,因此 ProducerI 和 ProducerJ 之間、 ConsumerS 和 ConsumerT 之間、ProducerI 和 ConsumerS 之間出現(xiàn)了針對(duì)緩沖區(qū)隊(duì)列的互斥關(guān)系。 進(jìn)程關(guān)系分析 同步關(guān)系: ( 1)對(duì)于任意的 i( 1≤ i ≤ n), j( 1≤ j≤ m),只有在 ProducerI 向緩沖區(qū)放入物品后, ConsumerJ 才能夠從緩沖區(qū)中取出物品消費(fèi);因此存在 ConsumerJ 對(duì)于 ProducerI 的同步依賴(lài)。因此存在 ConsumerI 和 ConsumerJ 之間的互斥關(guān)系。 2. 單緩沖區(qū)的多生產(chǎn)者 多消費(fèi)者問(wèn)題模型限制條件:整個(gè)系統(tǒng)僅有唯一的一個(gè)緩沖區(qū),活動(dòng)進(jìn)程有 n 個(gè)生產(chǎn)者 Producer 和 m 個(gè)消費(fèi)者 Consumer。同步存在于 p、 c 兩類(lèi)進(jìn)程之間 : 當(dāng)緩沖池已放滿(mǎn)了產(chǎn)品 (供過(guò)于求 ) , 生產(chǎn)者進(jìn)程必須等待 。競(jìng)爭(zhēng)到資源的進(jìn)程可以立即投入運(yùn)行 , 而沒(méi)有競(jìng)爭(zhēng)到資源的進(jìn)程只能阻塞自己以等待資源。 多個(gè)進(jìn)程為了共同完成任務(wù) , 須要按照一定的次序去執(zhí)行 , 各個(gè)進(jìn)程在執(zhí)行時(shí)在時(shí)間上具有明顯的先后次序 , 即進(jìn)程必須按照一定的順序去執(zhí)行。 P, V操作主要通過(guò)對(duì)信號(hào)量的操作來(lái)實(shí)現(xiàn)對(duì)資源的控制 , 從而控制進(jìn)程的執(zhí)行 。 在 操作系統(tǒng) 教學(xué)過(guò)程中,因?yàn)椴糠纸炭茣?shū)中對(duì)生產(chǎn)者和消費(fèi)者問(wèn)題的解釋不夠全面,學(xué)生在理解應(yīng)用過(guò)程中 經(jīng)常出現(xiàn)一些問(wèn)題。 開(kāi)發(fā)系統(tǒng)的背景 有關(guān) 操作系統(tǒng) 的教材大多注重理論 ,而絕大多數(shù)學(xué)習(xí)者一生都不可能參于操作系統(tǒng)的研究工作 ,他們需要的是對(duì)理論 的理解和對(duì)實(shí)用系統(tǒng)的靈活應(yīng)用。 通過(guò) 該 演示系統(tǒng) 展現(xiàn)進(jìn)程的管理 (生產(chǎn)者 消費(fèi)者) 可 以用于 操作系統(tǒng)的教學(xué) 中 。
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1