資源描述:
《處理機(jī)調(diào)度與死鎖(III)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第三章 處理機(jī)調(diào)度與死鎖教學(xué)目的與要求熟悉處理機(jī)調(diào)度的層次掌握作業(yè)調(diào)度策略和算法掌握進(jìn)程調(diào)度策略和算法了解實(shí)時調(diào)度系統(tǒng)理解死鎖的基本概念掌握產(chǎn)生死鎖的必要條件理解并掌握處理死鎖的基本方法重點(diǎn)和難點(diǎn)作業(yè)調(diào)度策略和算法進(jìn)程調(diào)度策略和算法用于死鎖避免的銀行家算法主要外語詞匯JobSchedulingAlgorithmFCFS(firstcomefirstserve)SJF(shortjobfirst)Deadlock第三章處理機(jī)調(diào)度與死鎖3.1處理機(jī)調(diào)度的層次3.2調(diào)度算法3.4預(yù)防死鎖的方法3.5死鎖的檢測與解除3.3產(chǎn)生死鎖的原因和必要條件3.1處理機(jī)調(diào)度的層次3
2、.1.1高級調(diào)度(作業(yè)調(diào)度)3.1.2低級調(diào)度(進(jìn)程調(diào)度)3.1.3中級調(diào)度(交換調(diào)度)3.1.1高級調(diào)度高級調(diào)度(作業(yè)調(diào)度):按一定算法,把外存中處于后備隊列中的作業(yè)調(diào)入內(nèi)存,為其分配必要的資源,并創(chuàng)建進(jìn)程。調(diào)度對象為作業(yè)。決定允許哪些作業(yè)競爭系統(tǒng)資源。在分時和實(shí)時系統(tǒng)中,一般不配置作業(yè)調(diào)度。3.1.2低級調(diào)度低級調(diào)度(進(jìn)程調(diào)度):將處理機(jī)分配給進(jìn)程。主要任務(wù):按照給定的某種策略和方法決定就緒隊列中哪個進(jìn)程應(yīng)先獲得處理機(jī),并將處理機(jī)分配給選中的進(jìn)程。是最基本的一種調(diào)度。低級調(diào)度的功能(1)保存當(dāng)前進(jìn)程的處理機(jī)現(xiàn)場信息。(2)按某種算法選取投入執(zhí)行的新進(jìn)程。(3
3、)恢復(fù)新進(jìn)程的處理機(jī)現(xiàn)場把處理器分配給進(jìn)程。3.1.3中級調(diào)度交換調(diào)度(中級調(diào)度):決定允許哪些進(jìn)程競爭處理機(jī)。主要任務(wù):按一定的算法,將外存中已具備運(yùn)行條件的進(jìn)程換入內(nèi)存,而將內(nèi)存中處于阻塞狀態(tài)的某些進(jìn)程交換到外存。引入中級調(diào)度的目的:為了提高內(nèi)存的利用率和系統(tǒng)吞吐量。BasicConcepts基本概念1.CPU-I/OBurstCycleCPU-I/O區(qū)間周期2.CPUSchedulerCPU調(diào)度程序3.PreemptiveScheduling搶占式調(diào)度4.Dispatcher分派程序1.CPU-I/OBurstCycleCPU-I/O區(qū)間周期2.CPUSc
4、hedulerSelectsfromamongtheprocessesinmemorythatarereadytoexecute,andallocatestheCPUtooneofthem.Whenweconsiderthevariousschedulingalgorithms,areadyqueuemaybeimplementedasaFIFOqueue,apriorityqueue,atree,orsimplyanunorderedlinkedlist.<3.PreemptiveSchedulingCPUschedulingdecisionsmaytakep
5、lacewhenaprocess:Switchesfromrunningtowaitingstate.Switchesfromrunningtoreadystate.Switchesfromwaitingtoready.Terminates.Schedulingunder1and4isnonpreemptive非搶占方式調(diào)度.Allotherschedulingispreemptive.搶占方式調(diào)度nonpreemptivescheduling非搶占方式調(diào)度oncetheCPUhasbeenallocatedtoaprocess,theprocesskeepst
6、heCPUuntilitreleasestheCPUeitherbyterminatingorbyswitchingtothewaitingstate.實(shí)現(xiàn)簡單,系統(tǒng)開銷小,適用于大多數(shù)的批處理系統(tǒng)環(huán)境。preemptivescheduling搶占方式調(diào)度incursacost.防止一個長進(jìn)程長時間占用處理機(jī),提供更公平的服務(wù)。搶占調(diào)度方式遵循的原則(1)優(yōu)先權(quán)原則。對重要和緊急的作業(yè)或進(jìn)程賦予較高的優(yōu)先權(quán)。(2)短作業(yè)(進(jìn)程)優(yōu)先原則(3)時間片原則4.Dispatcher(分派程序)DispatchermodulegivescontroloftheCPUto
7、theprocessselectedbytheshort-termscheduler;thisinvolves:分派程序是一個模塊,用來將CPU的控制交給短期調(diào)度程序所選擇的進(jìn)程,switchingcontext切換上下文switchingtousermode切換到用戶模式j(luò)umpingtotheproperlocationintheuserprogramtorestartthatprogram跳轉(zhuǎn)到用戶程序的合適位置以重新啟動這個程序。進(jìn)程上下文進(jìn)程上下文:是一個與進(jìn)程切換和處理機(jī)狀態(tài)發(fā)生交換有關(guān)的概念。包括計算機(jī)系統(tǒng)中與執(zhí)行該進(jìn)程有關(guān)的各種寄存器的值、程序段
8、在經(jīng)過編譯之后形成的機(jī)器