




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)設(shè)備管理培訓(xùn)課程第4章設(shè)備管理 ●設(shè)備管理是指計(jì)算機(jī)系統(tǒng)中除了CPU和內(nèi)存以外的其它所有設(shè)備的管理?!癯诉M(jìn)行實(shí)際I/O操作的設(shè)備之外,也包括了諸如設(shè)備控制器、DMA控制器、中斷控制器、I/O處理機(jī)等支持設(shè)備?!裨趯?shí)際使用過(guò)程中,外圍設(shè)備的種類(lèi)繁多,功能各異,管理復(fù)雜。如何有效而又方便地使用這些設(shè)備是設(shè)備管理的重要任務(wù)?!裨O(shè)備管理是操作系統(tǒng)的重要和基本的組成部分,對(duì)設(shè)備管理的好壞,直接影響系統(tǒng)的效率。2025/5/164.1.設(shè)備管理概述
4.2.I/O控制方式
4.3.緩沖技術(shù)
4.4.設(shè)備分配
4.5.WINDOWS2003Server的I/O系統(tǒng)
4.6.本章小結(jié)2025/5/164.1.1設(shè)備的分類(lèi)計(jì)算機(jī)系統(tǒng)的外圍設(shè)備包括:顯示器、鍵盤(pán)、紙帶閱讀器、紙帶穿孔機(jī)、打印機(jī)、磁帶、磁盤(pán)、光盤(pán)、激光打印機(jī)、繪圖儀、圖形數(shù)字化儀、鼠標(biāo)器、聲音輸入、聲音輸出設(shè)備以及辦公自動(dòng)化設(shè)備等等,種類(lèi)相當(dāng)繁多,可從不同的角度對(duì)它們進(jìn)行分類(lèi)。
4.1設(shè)備管理概述2025/5/16系統(tǒng)設(shè)備:在操作系統(tǒng)生成時(shí)已登記于系統(tǒng)的標(biāo)準(zhǔn)設(shè)備,一般至少有鍵盤(pán)、顯示器、打印機(jī)、磁盤(pán)或磁帶設(shè)備等。用戶設(shè)備:在系統(tǒng)生成時(shí)并沒(méi)有登入系統(tǒng)的非標(biāo)準(zhǔn)設(shè)備,一般由用戶提供設(shè)備及其處理程序,并通過(guò)適當(dāng)?shù)氖侄伟阉鼈兗{入系統(tǒng)中,由系統(tǒng)實(shí)施管理。例如實(shí)時(shí)測(cè)控系統(tǒng)中的各種A/D、D/A轉(zhuǎn)換器,圖像處理系統(tǒng)中的圖像設(shè)備,CAD系統(tǒng)所需的專用設(shè)備等。1.設(shè)備的從屬關(guān)系分類(lèi)2025/5/16塊設(shè)備:指以數(shù)據(jù)塊為單位來(lái)組織和傳送數(shù)據(jù)的設(shè)備,如磁盤(pán)、磁帶等。字符設(shè)備:指以單個(gè)字符為單位來(lái)傳送信息的設(shè)備,如終端、打印機(jī)等。2.設(shè)備中的數(shù)據(jù)組織方式分類(lèi)2025/5/16存儲(chǔ)設(shè)備:磁帶、磁盤(pán)(軟盤(pán)、硬盤(pán))、光盤(pán)、其它(磁鼓等)。輸入輸出設(shè)備:鍵盤(pán)、打印機(jī)、顯示器、圖形輸入輸出設(shè)備、圖像輸入輸出設(shè)備、繪圖儀、聲音輸入輸出設(shè)備、網(wǎng)卡、其它。終端設(shè)備:通用終端(會(huì)話型、批量型、智能型)、多用終端、虛終端。3.按設(shè)備的使用特性分類(lèi)2025/5/16獨(dú)占設(shè)備:這類(lèi)設(shè)備在用戶作業(yè)的整個(gè)運(yùn)行期間必須為此用戶所占有,才能保證傳送設(shè)備的連貫性。大多數(shù)低速I(mǎi)/O設(shè)備,如用戶終端、打印機(jī)、紙帶輸入機(jī)等均屬于這類(lèi)設(shè)備。共享設(shè)備:這類(lèi)設(shè)備通常指磁盤(pán)這類(lèi)直接存取設(shè)備,很容易被多個(gè)用戶所共享。實(shí)際上是幾個(gè)進(jìn)程或作業(yè)交替地對(duì)它們進(jìn)行讀寫(xiě),而宏觀上看是同時(shí)對(duì)它們進(jìn)行訪問(wèn)。虛擬設(shè)備:在一類(lèi)設(shè)備上模擬另一類(lèi)設(shè)備,常用共享設(shè)備模擬獨(dú)占設(shè)備,用高速設(shè)備模擬低速設(shè)備,被模擬的設(shè)備稱為虛擬設(shè)備。4.按資源分配的角度分類(lèi)2025/5/16為將慢速的獨(dú)占設(shè)備改造成多個(gè)用戶可共享的設(shè)備,以提高設(shè)備的利用率,可借助于假脫機(jī)技術(shù)(Spooling)。Spooling技術(shù)的基本思想是:當(dāng)某作業(yè)或進(jìn)程請(qǐng)求分配獨(dú)占設(shè)備時(shí),系統(tǒng)就分配給它共享設(shè)備中的某一部分,使其與獨(dú)占設(shè)備相關(guān)聯(lián)。
2025/5/16例如用磁盤(pán)中的某一部分代替打印機(jī),程序欲打印輸出的信息先寫(xiě)入磁盤(pán)的這部分存儲(chǔ)空間中,適當(dāng)?shù)臅r(shí)候,例如打印機(jī)空閑時(shí),再?gòu)谋P(pán)中取出該信息交由打印機(jī)輸出。這樣,用戶或進(jìn)程是直接和磁盤(pán)打交道,而間接地使用打印機(jī)。由于磁盤(pán)的存取速度遠(yuǎn)高于打印機(jī)的打印速度,而且磁盤(pán)是可共享的,所以,對(duì)用戶來(lái)說(shuō)似乎有了一臺(tái)高速的可共享的打印機(jī)。2025/5/16I/O系統(tǒng)的結(jié)構(gòu)CPU磁盤(pán)控制器存儲(chǔ)器打印機(jī)控制器其他控制器一、微型機(jī)I/O系統(tǒng):總線結(jié)構(gòu)磁盤(pán)驅(qū)動(dòng)器打印機(jī)2025/5/16二、主機(jī)系統(tǒng)輸入輸出結(jié)構(gòu) 在一臺(tái)通用的計(jì)算機(jī)系統(tǒng)中,通過(guò)輸入輸出控制系統(tǒng)完成外圍設(shè)備與主存儲(chǔ)器之間的信息傳送。各種外圍設(shè)備連接在相應(yīng)的設(shè)備控制器上,這些設(shè)備控制器又通過(guò)通道連接在公共的系統(tǒng)總線上。I/O系統(tǒng)共分為4級(jí):最低級(jí)為I/O設(shè)備,次低級(jí)為設(shè)備控制器,次高級(jí)為I/O通道,最高級(jí)是主機(jī)。2025/5/16
2025/5/16三.設(shè)備控制器設(shè)備控制器是CPU與I/O設(shè)備的接口(1)作用:接收從CPU發(fā)來(lái)的命令,控制I/O設(shè)備工作。(2)功能:接收和識(shí)別命令數(shù)據(jù)交換設(shè)備狀態(tài)的了解和報(bào)告地址識(shí)別2025/5/16I/O設(shè)備一般由機(jī)械與電子線路兩部分組成。為了使設(shè)計(jì)模塊化、具有通用性,也為了降低設(shè)備成本,通常總是把這兩部分分開(kāi):機(jī)械部稱為設(shè)備本身,電子部分稱為“設(shè)備控制器(或適配器)”。設(shè)備控制器上有供插接用的連接器,通過(guò)電纜與設(shè)備內(nèi)部相連。由于設(shè)備控制器是電子設(shè)備,工作速度快,因此很多設(shè)備控制器可以連接2個(gè)、4個(gè)、甚至8個(gè)相同類(lèi)型的設(shè)備。2025/5/16每種I/O設(shè)備都要通過(guò)一個(gè)控制器和CPU相連。例如軟磁盤(pán)通過(guò)軟盤(pán)控制器和CPU連接,打印機(jī)通過(guò)打印機(jī)控制器和CPU連接??刂破魇峭ㄟ^(guò)自己內(nèi)部的若干個(gè)寄存器與CPU進(jìn)行通信的。有用作數(shù)據(jù)緩沖的數(shù)據(jù)寄存器;有用作保存設(shè)備狀態(tài)信息供CPU對(duì)外部設(shè)備進(jìn)行測(cè)試的狀態(tài)寄存器;還有用來(lái)保存CPU發(fā)出的命令以及各種參數(shù)的命令寄存器。為了標(biāo)識(shí)這些寄存器,有的計(jì)算機(jī)系統(tǒng)把它們作為常規(guī)存儲(chǔ)器地址空間的一個(gè)部分來(lái)對(duì)待;有的計(jì)算機(jī)系統(tǒng)則給予它們專用的I/O地址。比如圖列出了IBMPC機(jī)上某些控制器所配置的I/O地址和相應(yīng)的中斷向量。2025/5/162025/5/16由于是設(shè)備掛接在控制器上,因此要讓設(shè)備做輸入/輸出操作,操作系統(tǒng)總是與控制器交往,而不是與設(shè)備交往。操作系統(tǒng)把命令以及執(zhí)行命令時(shí)所需要的參數(shù)一起寫(xiě)入控制器的寄存器中,以實(shí)現(xiàn)輸入/輸出。在控制器接受了一條命令后,就可以獨(dú)立于CPU去完成命令指定的任務(wù)。2025/5/16(3)設(shè)備控制器的組成
1.與處理機(jī)的接口2.與設(shè)備的接口3.I/O邏輯2025/5/161.設(shè)備備管理的目標(biāo)(1)提高外圍設(shè)備的利用效率設(shè)備管理的首要目標(biāo)是要提高外圍設(shè)備的利用率,盡可能地提高外設(shè)之間,外設(shè)和CPU之間的并行程度,使系統(tǒng)中的各種設(shè)備盡可能地處于忙碌狀態(tài)。
4.1.2設(shè)備管理的目標(biāo)和功能2025/5/16所謂方便,是指用戶程序應(yīng)該與給定的不同類(lèi)型、型號(hào)的設(shè)備無(wú)關(guān),并且與具體設(shè)備的物理特性無(wú)關(guān),而方便的使用設(shè)備。所謂統(tǒng)一,是指對(duì)不同設(shè)備盡量能有統(tǒng)一的操作方式。方便和統(tǒng)一都要求操作系統(tǒng)去實(shí)現(xiàn)具體設(shè)備的物理I/O操作,而對(duì)用戶程序屏蔽這些細(xì)節(jié),呈現(xiàn)給用戶的是一種性能理想化的、操作簡(jiǎn)便的邏輯設(shè)備。
(2)為用戶提供方便、統(tǒng)一的界面2025/5/16有時(shí)把系統(tǒng)的這種性能稱為設(shè)備的獨(dú)立性。例如對(duì)于用戶的同一個(gè)程序,操作系統(tǒng)應(yīng)該能夠讓用戶程序?qū)Σ煌拇蛴C(jī)進(jìn)行操作,而對(duì)不同的打印機(jī)的具體特性不必理睬,且用戶程序也不必修改。2025/5/16為實(shí)現(xiàn)設(shè)備的有效管理和用戶方便使用,設(shè)備管理一般應(yīng)具備下述功能:(1)設(shè)備分配在多道程序環(huán)境中,多個(gè)用戶和進(jìn)程往往同時(shí)要求使用同一個(gè)設(shè)備,按照設(shè)備的類(lèi)型和系統(tǒng)中采用的方法,決定把某個(gè)設(shè)備分配給哪一個(gè)要求該類(lèi)設(shè)備的進(jìn)程。在進(jìn)行分配的同時(shí)還應(yīng)分配相應(yīng)的控制器和通道,以保證設(shè)備與CPU之間能夠傳遞信息,未能分配到所需設(shè)備的進(jìn)程,應(yīng)排成一個(gè)隊(duì)列,按一定的次序等待使用設(shè)備。設(shè)備分配程序完成這一工作。2.設(shè)備管理的功能2025/5/16在設(shè)置通道的系統(tǒng)中,其I/O操作一般由通道執(zhí)行通道程序來(lái)完成。因此,操作系統(tǒng)的設(shè)備管理軟件應(yīng)具有這樣的功能:根據(jù)用戶提出的I/O要求,生成相應(yīng)的通道程序并提交給通道,然后用專門(mén)的通道指令啟動(dòng)通道對(duì)指定設(shè)備進(jìn)行I/O操作,并能響應(yīng)通道的中斷請(qǐng)求。在未設(shè)置通道的系統(tǒng)中,由設(shè)備管理軟件對(duì)設(shè)備I/O請(qǐng)求做必要的處理,如設(shè)備分配、緩沖區(qū)分配,并直接對(duì)設(shè)備接口編程,然后驅(qū)動(dòng)指定的設(shè)備進(jìn)行I/O操作。(2)實(shí)現(xiàn)物理I/O操作2025/5/16設(shè)備管理程序應(yīng)具有對(duì)緩沖區(qū)進(jìn)行管理的功能。此外,為改善系統(tǒng)的可適應(yīng)性和可擴(kuò)展性,應(yīng)使用戶程序與實(shí)際的設(shè)備無(wú)關(guān)。
(3)實(shí)現(xiàn)其它功能2025/5/16輸入輸出操作的控制方式一般有四種:查詢方式中斷方式直接內(nèi)存存取方式通道方式它們的主要差別在于處理器和外設(shè)并行工作的方式和程度的不同。4.2I/O控制方式2025/5/16查詢方式是最簡(jiǎn)單的I/O控制方式。在設(shè)備控制器中有兩個(gè)寄存器,一個(gè)是狀態(tài)寄存器,由其中的一個(gè)狀態(tài)位的值反映設(shè)備的忙或閑;另一個(gè)是數(shù)據(jù)緩沖寄存器。當(dāng)設(shè)備啟動(dòng)時(shí),狀態(tài)寄存器的啟動(dòng)位為1,此時(shí)外設(shè)把數(shù)據(jù)送往數(shù)據(jù)緩沖寄存器,并將狀態(tài)寄存器的狀態(tài)位置1。CPU執(zhí)行完一條指令后就測(cè)試狀態(tài)位,如果為1,就把數(shù)據(jù)寄存器中的數(shù)據(jù)取到內(nèi)存;若狀態(tài)位為0,則再測(cè)試,直到狀態(tài)寄存器的狀態(tài)位為1,然后再讀取數(shù)據(jù)。所以此種方式也稱循環(huán)測(cè)試I/O方式。4.2.1查詢方式2025/5/16就緒向設(shè)備控制器發(fā)讀命令讀設(shè)備控制器的狀態(tài)檢查狀態(tài)從設(shè)備控制器中讀入字向存儲(chǔ)器中寫(xiě)字傳送完成CPU->I/OCPU->內(nèi)存I/O->CPU出錯(cuò)I/O->CPU完成下條指令未完成未就緒2025/5/16由于CPU的速度遠(yuǎn)高于設(shè)備I/O的速度,使得CPU絕大部分時(shí)間都處于等待I/O完成的循環(huán)測(cè)試中。顯然,這是對(duì)CPU的極大浪費(fèi)。但是,它的管理簡(jiǎn)單,在要求不高的場(chǎng)合下常被采用,而且不能支持多道程序。2025/5/16查詢方式是主機(jī)向外設(shè)詢問(wèn),而引入中斷后,每當(dāng)設(shè)備完成I/O操作,它便以中斷請(qǐng)求方式主動(dòng)向CPU匯報(bào)。因此,CPU一旦啟動(dòng)I/O設(shè)備后便可轉(zhuǎn)去處理其他程序,僅在接到I/O中斷信息請(qǐng)求時(shí)才花費(fèi)極少時(shí)間去處理。
4.2.2中斷方式2025/5/16例如,打印機(jī)每打一行需要60ms,在查詢方式中,大約有59.99ms,CPU都處于循環(huán)等待中,而以中斷方式處理的話,CPU僅花費(fèi)0.1ms時(shí)間來(lái)處理I/O設(shè)備發(fā)來(lái)的中斷,其余的59.99ms都可以用來(lái)做別的事情。所以中斷方式比查詢方式節(jié)省CPU的時(shí)間。2025/5/16向設(shè)備控制器發(fā)讀命令讀設(shè)備控制器的狀態(tài)檢查狀態(tài)從設(shè)備控制器中讀入字向存儲(chǔ)器中寫(xiě)字傳送完成CPU->I/OCPU->內(nèi)存I/O->CPU出錯(cuò)I/O->CPU完成下條指令未完成CPU做其他中斷2025/5/16中斷方式的方法是當(dāng)設(shè)備完成I/O操作后,主動(dòng)向CPU報(bào)告,CPU只用少量時(shí)間處理I/O中斷,并將數(shù)據(jù)取回。在多道程序中的環(huán)境下,一個(gè)程序或進(jìn)程啟動(dòng)I/O設(shè)備并允許中斷后,不是自己主動(dòng)去執(zhí)行別的程序或繼續(xù)執(zhí)行主流程,而是應(yīng)當(dāng)把自己掛起,控制權(quán)交還給進(jìn)程調(diào)度程序。在中斷處理程序中,完成指定的I/O操作之后應(yīng)把等待此結(jié)果的進(jìn)程喚醒,而后由進(jìn)程調(diào)度程序在適當(dāng)時(shí)機(jī)把此進(jìn)程投入運(yùn)行。多道程序下的中斷處理方式如圖4-3所示。2025/5/16某進(jìn)程其他進(jìn)程輸入中斷處理中斷調(diào)度調(diào)度喚醒啟動(dòng)I/O并允許中斷阻塞等待處理輸入的數(shù)據(jù)保護(hù)現(xiàn)場(chǎng)輸入處理喚醒等待進(jìn)程恢復(fù)現(xiàn)場(chǎng)2025/5/16中斷處理方式提高了主機(jī)的利用率,但是每次中斷都要保存現(xiàn)場(chǎng)信息,恢復(fù)現(xiàn)場(chǎng)等,仍占用CPU時(shí)間。在傳送數(shù)據(jù)量大、速度高的情況下,中斷方式就不適應(yīng)了。目前在塊設(shè)備(如磁盤(pán))的傳輸系統(tǒng)中,都普遍采用了直接內(nèi)存存取方式,即DMA方式。是指對(duì)I/O設(shè)備的控制由DMA控制器完成,在DMA控制器的作用下,設(shè)備和主存之間可以成批地進(jìn)行數(shù)據(jù)交換,而不用CPU的干涉。4.2.3直接內(nèi)存存取方式2025/5/16DMA方式 控制器功能更強(qiáng),除有中斷功能外,還有一個(gè)DMA控制機(jī)構(gòu)。在DMA控制器的控制下,設(shè)備同主存之間可成批交換數(shù)據(jù),不用CPU干預(yù)。DMA控制器組成:2025/5/16DMA方式直接存儲(chǔ)器存取控制方式的步驟:①當(dāng)進(jìn)程要求設(shè)備輸入一批數(shù)據(jù)時(shí),CPU將設(shè)備存放輸入數(shù)據(jù)的內(nèi)存始址以及要傳送的字節(jié)數(shù)分別送入DMA控制器中的地址寄存器和傳送字節(jié)計(jì)數(shù)器;另外,還要將中斷位和啟動(dòng)位置為1,以啟動(dòng)設(shè)備開(kāi)始進(jìn)行數(shù)據(jù)輸入并允許中斷。②發(fā)出數(shù)據(jù)要求的進(jìn)程進(jìn)入等待狀態(tài),進(jìn)程調(diào)度程序調(diào)度其他進(jìn)程占據(jù)CPU。③輸入設(shè)備不斷地挪用CPU工作周期,將數(shù)據(jù)寄存器中的數(shù)據(jù)源源不斷地寫(xiě)入內(nèi)存,直到所要求的字節(jié)全部傳送完畢。④DMA控制器在傳送字節(jié)數(shù)完成時(shí),通過(guò)中斷請(qǐng)求線發(fā)出中斷信號(hào),CPU收到中斷信號(hào)后轉(zhuǎn)中斷處理程序,喚醒等待輸入完成的進(jìn)程,并返回被中斷的程序。⑤在以后的某個(gè)時(shí)刻,進(jìn)程調(diào)度程序選中提出請(qǐng)求輸入的進(jìn)程,該進(jìn)程從指定的內(nèi)存始址取出數(shù)據(jù)做進(jìn)一步處理。2025/5/16DMA方式有以下四個(gè)特點(diǎn):(1)它是高速外圍設(shè)備與內(nèi)存之間成批量的數(shù)據(jù)傳輸,但是不對(duì)數(shù)據(jù)再做加工處理,I/O操作類(lèi)型簡(jiǎn)單;(2)它需要使用一個(gè)專門(mén)的硬件DMA控制器(DMAC)。DMAC內(nèi)有控制寄存器、狀態(tài)寄存器、傳送字?jǐn)?shù)計(jì)數(shù)器和內(nèi)存地址寄存器以及數(shù)據(jù)緩沖寄存器;2025/5/16(3)它采用偷竊總線控制權(quán)的方法,由DMAC送出內(nèi)存地址和發(fā)出內(nèi)存讀、設(shè)備寫(xiě)或者設(shè)備讀、內(nèi)存寫(xiě)的控制信號(hào)來(lái)完成內(nèi)存與設(shè)備之間的直接數(shù)據(jù)傳送,而不用CPU干預(yù)。有的DMA傳送甚至不經(jīng)過(guò)DMAC內(nèi)的數(shù)據(jù)緩沖寄存器的再吞吐,傳輸速率非常高。
(4)每傳送一個(gè)數(shù)據(jù)并不產(chǎn)生中斷,只有DMAC中的傳送字?jǐn)?shù)計(jì)數(shù)器減1至0時(shí),也就是本次DMA傳送的數(shù)據(jù)全部傳送完畢時(shí),才產(chǎn)生中斷,請(qǐng)求CPU進(jìn)行結(jié)束處理。2025/5/16DMA方式只能完成簡(jiǎn)單的數(shù)據(jù)傳送、計(jì)數(shù)、內(nèi)存地址加1或減1等操作,不能滿足復(fù)雜的I/O操作要求。2025/5/16在大中型計(jì)算機(jī)系統(tǒng)中,普遍采用的是由專用的I/O處理機(jī)來(lái)管理外設(shè)和內(nèi)存之間的信息交換,這就是通道技術(shù)??梢园淹ǖ揽闯梢粋€(gè)比DMAC功能更強(qiáng)的接口設(shè)備,或者說(shuō)DMA方式是我們下面將要介紹的一種稱之為選擇通道的簡(jiǎn)易形式。
2025/5/16DMA方式與中斷的主要區(qū)別中斷方式是在數(shù)據(jù)緩沖寄存區(qū)滿后,發(fā)中斷請(qǐng)求,CPU進(jìn)行中斷處理
DMA方式則是在所要求傳送的數(shù)據(jù)塊全部傳送結(jié)束時(shí)要求CPU進(jìn)行中斷處理大大減少了CPU進(jìn)行中斷處理的次數(shù)中斷方式的數(shù)據(jù)傳送是由CPU控制完成的而DMA方式則是在DMA控制器的控制下不經(jīng)過(guò)CPU控制完成的2025/5/16CPU向控制器發(fā)出啟動(dòng)DMA通知和有關(guān)參數(shù)控制器向內(nèi)存發(fā)出詢問(wèn)請(qǐng)求訪問(wèn)內(nèi)存(讀、寫(xiě))計(jì)數(shù)器減1結(jié)束否發(fā)中斷NYDMA的實(shí)現(xiàn)流程2025/5/16通道的引入是為了建立獨(dú)立的I/O操作。它不僅要求數(shù)據(jù)傳送獨(dú)立于CPU,而且要求I/O操作的組織、管理、結(jié)束等也盡量獨(dú)立,以保證CPU有更多的時(shí)間從事計(jì)算。這樣就可以實(shí)現(xiàn)CPU計(jì)算和I/O操作的并行工作。通道是一種硬件機(jī)構(gòu),又稱I/O處理機(jī)。因其是專用,故有很強(qiáng)的I/O處理能力。它接受CPU的委托,獨(dú)立地執(zhí)行自己的通道程序來(lái)實(shí)現(xiàn)內(nèi)存與外設(shè)之間的數(shù)據(jù)傳輸。當(dāng)CPU委托的I/O任務(wù)完成后,通道發(fā)出中斷,請(qǐng)求CPU進(jìn)行結(jié)束處理。4.2.4通道方式2025/5/16
2025/5/16根據(jù)信息交換方式,通道可分成:字節(jié)多路通道、選擇通道、成組多路通道三種類(lèi)型。1.通道分類(lèi)2025/5/16(1)字節(jié)多路通道它適用于連接打印機(jī)、終端、卡片機(jī)等低速或中速的I/O設(shè)備,是按字節(jié)交叉方式工作的,這種通道可以連接8,16,32甚至更多的子通道
子通道所連接的I/O設(shè)備以字節(jié)為單位經(jīng)通道與內(nèi)存交換數(shù)據(jù),一個(gè)子通道傳送一個(gè)字節(jié)后,立即讓位于另一個(gè)子通道。由于字節(jié)通道的速度較高,而所連接的主要是低速I(mǎi)/O設(shè)備,因此,一個(gè)字節(jié)通道可以連接很多這樣的低速設(shè)備。2025/5/162025/5/16選擇通道的數(shù)據(jù)傳送是按成批的方式進(jìn)行的,故傳送速率很高。(2)選擇通道選擇通道2025/5/16它適用于連接高速I(mǎi)/O設(shè)備,如磁帶、磁盤(pán)等。選擇通道只有一個(gè)分配型子通道,即這個(gè)子通道可以連接多臺(tái)設(shè)備,但每次只能把子通道分配給一臺(tái)設(shè)備使用。一旦分配給某臺(tái)設(shè)備,子通道就被它獨(dú)占,即使暫時(shí)出現(xiàn)空閑,也不允許其他設(shè)備利用該子通道。直到它被釋放,再選擇另一臺(tái)設(shè)備為其服務(wù)。因此選擇通道的利用率是很低的。2025/5/16這種通道綜合了字節(jié)多路通道分時(shí)并行工作和選擇通道傳輸速率高的特點(diǎn)。它具有多個(gè)非分配型子通道,每個(gè)子通道連接一臺(tái)中、高速I(mǎi)/O設(shè)備,如:磁帶、磁鼓、磁盤(pán)等,因而通道所連接的幾個(gè)設(shè)備可以并行工作。每臺(tái)設(shè)備的數(shù)據(jù)傳送是按成組方式進(jìn)行的。
(3)成組多路通道2025/5/16它首先為某臺(tái)設(shè)備執(zhí)行一條通道命令,傳送一批數(shù)據(jù),然后再選擇另一臺(tái)設(shè)備執(zhí)行另一條通道命令,即幾臺(tái)設(shè)備的通道程序都在同時(shí)執(zhí)行中;但任何時(shí)刻,通道只能為一臺(tái)設(shè)備的數(shù)據(jù)傳輸提供服務(wù)。因此成組多路通道技術(shù)相當(dāng)于通道程序的多道程序設(shè)計(jì)技術(shù)。存在這三種通道的計(jì)算機(jī)系統(tǒng)的各硬件的連接關(guān)系如圖4-5所示。2025/5/16
CPU字節(jié)多路通道
打印機(jī)1打印機(jī)2
I/O控制器
I/O控制器
內(nèi)存
選擇通道成組多路通道
磁盤(pán)
I/O控制器
磁盤(pán)
I/O控制器
I/O控制器
I/O控制器
磁帶
磁帶
圖4-5通道與計(jì)算機(jī)系統(tǒng)各硬件的關(guān)系
2025/5/16通道I/O操作由兩種指令實(shí)現(xiàn)控制,即CPU的I/O指令和通道本身提供的通道命令字CCW(ChannelCommandWord)。I/O指令的功能一般包括有:清除、停止、啟動(dòng)、查詢等功能,除了操作碼之外,I/O指令中還有通道地址和設(shè)備地址。I/O指令屬特權(quán)指令,只能由操作系統(tǒng)使用。CCW一般有讀、寫(xiě)、查詢、控制和轉(zhuǎn)移等功能。2.通道的工作方式2025/5/16系統(tǒng)程序設(shè)計(jì)人員依據(jù)驅(qū)動(dòng)設(shè)備的要求,使用CCW編寫(xiě)的程序稱為通道程序,不同的設(shè)備有不同的通道程序。通道程序存放在內(nèi)存中,由I/O指令啟動(dòng)執(zhí)行。用戶請(qǐng)求I/O時(shí),CPU對(duì)通道的通信是向通道發(fā)出查詢、啟動(dòng)和停止通道程序工作,而通道向CPU的通信則采用中斷方式。其執(zhí)行過(guò)程如圖4-6所示。2025/5/16用戶I/O請(qǐng)求
查詢?cè)O(shè)備忙閑?
調(diào)用通道程序
執(zhí)行通道程序
I/O操作完成,發(fā)中斷請(qǐng)求
CPU響應(yīng)中斷,進(jìn)行結(jié)束處理
以I/O指令啟動(dòng)通道結(jié)束通道工作
進(jìn)入設(shè)備請(qǐng)求隊(duì)列,等待忙不忙圖4-6通道程序的執(zhí)行過(guò)程
2025/5/16通道有自己的指令系統(tǒng),為了與CPU的指令相區(qū)別,通道的指令被稱為“通道命令字”。通道命令字條數(shù)不多,主要涉及控制、轉(zhuǎn)移、讀、寫(xiě)及查詢等功能。通道命令字一般包含有:被交換數(shù)據(jù)在內(nèi)存中的位置、傳輸方向、數(shù)據(jù)塊長(zhǎng)度以及被控制的I/O設(shè)備的地址信息、特征信息等。圖給出了IBM通道命令字的格式。2025/5/16若干通道命令字構(gòu)成一個(gè)“通道程序”,它規(guī)定了設(shè)備應(yīng)該執(zhí)行的各種操作和順序。在CPU啟動(dòng)通道后,由通道執(zhí)行通道程序,完成CPU所交給的I/O任務(wù)。通常,通道程序存放在通道自己的存儲(chǔ)部件里。當(dāng)通道中沒(méi)有存儲(chǔ)部件時(shí),就存放在內(nèi)存儲(chǔ)器里。這時(shí),為了使通道能取到通道程序去執(zhí)行,必須把存放通道程序的內(nèi)存起始地址告訴通道。存放這個(gè)起始地址的內(nèi)存固定單元,被稱為“通道地址字”。2025/5/16綜上所述,在前三種I/O控制方式中,CPU直接對(duì)設(shè)備控制器和I/O接口編程,可以簡(jiǎn)化接口的設(shè)計(jì)。對(duì)于非DMA傳送,需要CPU實(shí)際去完成數(shù)據(jù)傳送。對(duì)于高速數(shù)據(jù)傳送可以使用DMA,但還是需要CPU設(shè)置設(shè)備控制器,初始化DMA操作和操作完畢去檢查端口傳送狀態(tài)。而通道不同于DMA控制器,它能夠去取和執(zhí)行它自己的指令;而且這些指令的功能已不僅僅是數(shù)據(jù)傳送,還包括檢索、分支轉(zhuǎn)移,甚至一些簡(jiǎn)單的算術(shù)、邏輯運(yùn)算。2025/5/16大、中型計(jì)算機(jī)系統(tǒng)普遍用通道方式去控制設(shè)備完成I/O操作,以提高CPU與外設(shè),外設(shè)與外設(shè)并行的程度。一些小型機(jī)和絕大多數(shù)微型機(jī)都是以CPU直接控制設(shè)備接口和設(shè)備控制器以查詢、中斷或DMA方式完成I/O操作,以降低系統(tǒng)造價(jià)。2025/5/16緩沖的引入原因:可減少占用通道的時(shí)間,從而緩和“瓶頸”現(xiàn)象,可以顯著提高CPU、通道、I/O設(shè)備之間的并行操作程度。改善CPU和I/O設(shè)備之間速度不匹配的情況??梢詼p少I(mǎi)/O對(duì)CPU的中斷次數(shù),放寬CPU對(duì)中斷響應(yīng)時(shí)間要求。凡是數(shù)據(jù)到達(dá)和離去速度不匹配的地方均可采用緩沖技術(shù)。4.3.緩沖技術(shù)2025/5/16緩沖有硬件緩沖和軟件緩沖之分。硬件緩沖是以專用的寄存器作為緩沖器。由于經(jīng)濟(jì)上的考慮,除了在最必要的地方采用少量硬件緩沖器外,大都采用軟件技術(shù)來(lái)實(shí)現(xiàn)緩沖。即在操作系統(tǒng)的管理下,在內(nèi)存中劃出若干個(gè)單元作為緩沖區(qū)。軟件緩沖的好處是易于改變緩沖區(qū)的大小和數(shù)量,缺點(diǎn)是占據(jù)了一部分內(nèi)存空間。2025/5/16根據(jù)緩沖區(qū)設(shè)置個(gè)數(shù)的多少,緩沖區(qū)有單緩沖、雙緩沖和多重緩沖之分。在只有一個(gè)緩沖區(qū)的情況下,如果把一批數(shù)據(jù)讀入并打印出來(lái),事實(shí)上,CPU和打印機(jī)是完全串行工作的,CPU將數(shù)據(jù)讀入緩沖區(qū)時(shí)打印機(jī)是空閑的,打印機(jī)工作時(shí),從緩沖區(qū)取出數(shù)據(jù)打印,CPU是空閑的。2025/5/16如果有兩個(gè)緩沖區(qū),就可以先讀入一部分?jǐn)?shù)據(jù)到緩沖區(qū)1,裝滿后在打印緩沖區(qū)1中的數(shù)據(jù)的同時(shí),便向緩沖區(qū)2中讀入另一部分?jǐn)?shù)據(jù)。在緩沖區(qū)1中的內(nèi)容打印完畢,緩沖區(qū)2的內(nèi)容也輸入完畢后,然后進(jìn)行交換,即打印緩沖區(qū)2中的同時(shí),又繼續(xù)向緩沖區(qū)1中讀入數(shù)據(jù)。此時(shí)CPU和打印機(jī)已處于并行工作狀態(tài),I/O設(shè)備得到充分利用。2025/5/16
2025/5/16雖然在采用雙緩沖時(shí),能實(shí)現(xiàn)CPU和I/O操作并行化,但在一般情況下,并不能獲得令人滿意的CPU和I/O設(shè)備的并行操作。由于CPU的速度遠(yuǎn)遠(yuǎn)高于輸入和輸出的速度,而使CPU經(jīng)常處于等待狀態(tài)。2025/5/16這時(shí),為了獲得良好的并行操作,就需要設(shè)置多個(gè)緩沖區(qū),稱之為多重緩沖。例如,由于
打印機(jī)輸出數(shù)據(jù)時(shí),若CPU輸出的數(shù)據(jù)又多又快,可能很快占滿緩沖區(qū),只有等打印機(jī)打印輸出完畢,緩沖區(qū)空了,
CPU才能進(jìn)行第二次輸出,設(shè)置多個(gè)緩沖區(qū),可使這種情況得到改善,CPU和設(shè)備的利用率、并行度都將有所提高。緩沖區(qū)究竟開(kāi)辟多大、多少為好,要根據(jù)CPU、設(shè)備、內(nèi)存容量等具體情況來(lái)考慮。另外,根據(jù)設(shè)置緩沖區(qū)的從屬關(guān)系,還可以分為專用緩沖區(qū)和緩沖池。
2025/5/16專用緩沖區(qū)是每個(gè)設(shè)備的專用資源,當(dāng)系統(tǒng)配置的設(shè)備比較多時(shí),即便每一個(gè)設(shè)備只配置一個(gè)緩沖區(qū),那么累積起來(lái)其內(nèi)存開(kāi)銷(xiāo)也十分可觀。另外,專用緩沖區(qū)的利用率也不高。把系統(tǒng)內(nèi)的緩沖區(qū)統(tǒng)一管理起來(lái),變專用為通用,這就是緩沖池,它由若干個(gè)大小相同緩沖區(qū)組成。
2025/5/16當(dāng)某進(jìn)程需要使用緩沖區(qū)時(shí),提出申請(qǐng),由管理程序分配給它,用完后,釋放緩沖區(qū)。這樣可用少量的緩沖區(qū)為更多的進(jìn)程服務(wù),當(dāng)然這需要一個(gè)緩沖區(qū)管理軟件的支持。在分時(shí)系統(tǒng)中常采用緩沖池方式。
2025/5/16補(bǔ)充:其它技術(shù)1總線技術(shù)2USB技術(shù)3SCSI接口技術(shù)4即插即用技術(shù)5網(wǎng)絡(luò)I/O設(shè)備2025/5/16新一代計(jì)算機(jī)出現(xiàn),帶來(lái)了總線技術(shù)的更新1、總線的基本概念:
在計(jì)算機(jī)系統(tǒng)內(nèi)各種子系統(tǒng),如CPU、內(nèi)存、I/O設(shè)備等之間,構(gòu)建公用的信號(hào)或數(shù)據(jù)傳輸通道這種可共享的傳輸通道稱為總線1總線技術(shù)2025/5/16總線的分類(lèi)CPU-內(nèi)存總線I/O總線數(shù)據(jù)總線地址總線控制總線(非本課程范圍)2、總線的分類(lèi)2025/5/16微型計(jì)算機(jī)總線的種類(lèi)和發(fā)展PC/XT總線ISA總線MCA總線EISA總線VESA總線
PCI總線USB總線…...(過(guò)時(shí))1394總線SCSI總線2025/5/16ISA(工業(yè)標(biāo)準(zhǔn)結(jié)構(gòu))ISA基于PC/AT總線,是由IEEE(美國(guó)電氣電子工程師協(xié)會(huì))1987年正式確立的標(biāo)準(zhǔn)。ISA槽是一個(gè)黑色的62+36線插槽。ISA工作頻率定在8.33MHz,數(shù)據(jù)傳輸率為8.33MB/s。隨著系統(tǒng)工作頻率的迅速提高,其配用的擴(kuò)展卡也逐漸被淘汰,現(xiàn)在最新的主板已開(kāi)始取消ISA槽。2025/5/16PCI(外圍部件互連)1993年Intel發(fā)表PCI2.0版,PCI開(kāi)始走進(jìn)主板。PCI有32位和64位兩種,32位PCI槽124線,64位槽188線,目前常用的是32位插槽。PCI槽的時(shí)鐘頻率為33.3MHz,32位PCI的數(shù)據(jù)傳輸率為133MB/s,大大高于ISA。所以PCI問(wèn)世后迅速成了擴(kuò)展總線的主流,流行的擴(kuò)展卡也都轉(zhuǎn)移到PCI上,如顯示卡、聲卡、網(wǎng)卡、MODEM卡等等。2025/5/16AGP(加速圖形端口)1996年Intel公司在PCI的基礎(chǔ)上專為顯示卡接口提出AGP標(biāo)準(zhǔn)。AGP使用32位數(shù)據(jù)總線,工作頻率為66.6MHzAGP1x的數(shù)據(jù)傳輸率可達(dá)266MB/s,AGP2x在一個(gè)時(shí)鐘周期的上升沿和下降沿各傳輸一次資料,其數(shù)據(jù)傳輸率可達(dá)到533MB/s,而AGP4x的理論傳輸率為1.066GB/s。2025/5/16IEEE1394IEEE1394是1995年由IEEE將APPLE公司高速串行總線“FIREWIRE”標(biāo)準(zhǔn)化而成,目前還在發(fā)展中。IEEE1394適用于聲音、圖像和視頻多媒體產(chǎn)品、高速打印機(jī)和掃描儀產(chǎn)品、硬盤(pán)等存儲(chǔ)設(shè)備、數(shù)碼攝影機(jī)、顯示器和影音錄放設(shè)備等。2025/5/16IEEE1394的特點(diǎn)標(biāo)準(zhǔn)數(shù)據(jù)傳輸率分三種:100Mbps、200Mbps和400Mbps,IEEE1394商業(yè)聯(lián)盟計(jì)劃將它提高到800Mbps、1Gbps和1.6Gbps;支持同步模式傳輸,可實(shí)現(xiàn)“準(zhǔn)實(shí)時(shí)”的多媒體數(shù)據(jù)傳輸;連接方便,易于擴(kuò)展,不必設(shè)定標(biāo)識(shí)號(hào)和連接終端負(fù)載,可采用菊花鏈或樹(shù)形方式連接,所有連接的設(shè)備是平等關(guān)系,不用個(gè)人計(jì)算機(jī)介入也可形成系統(tǒng),支持熱插拔;2025/5/16單根線纜最長(zhǎng)為4.5米,最大可進(jìn)行15級(jí)級(jí)聯(lián),連接最大距離為72米;采用6股銅芯線纜,兩股用于供電,另外四股分為兩對(duì)雙絞線,接頭小巧耐用。2025/5/16USB(UniversalSerialBus)通用串行總線一種連接I/O串行設(shè)備的技術(shù)標(biāo)準(zhǔn)USB是以Intel為主并有Compaq、MicroSoft、IBM、DEC、NEC、NorthernTelecom7家公司共同制定的串行接口規(guī)格。USB接口適用于低、中速的外圍設(shè)備如鍵盤(pán)、鼠標(biāo)、打印機(jī)、數(shù)碼相機(jī)、調(diào)制解調(diào)器、掃描儀等。2USB技術(shù)2025/5/16USB設(shè)備的分類(lèi)USB設(shè)備分為兩類(lèi):(1)USB集線器:本身可再接其他USB外圍設(shè)備(2)USB設(shè)備:連接在計(jì)算機(jī)上用來(lái)完成特定功能并符合USB規(guī)范的I/O設(shè)備單元,如鼠標(biāo)、鍵盤(pán)等2025/5/16USB的傳輸方式4種不同的數(shù)據(jù)傳輸方式:(1)等時(shí)傳輸方式以固定的傳輸速率,連續(xù)不斷傳輸數(shù)據(jù),發(fā)生錯(cuò)誤時(shí),USB不處理,而是繼續(xù)傳送新的數(shù)據(jù)。用于需要連續(xù)傳輸,且對(duì)數(shù)據(jù)的正確性要求不高而對(duì)時(shí)間極為敏感的外部設(shè)備,如麥克風(fēng)、音箱以及等(2)中斷傳輸方式該方式傳送的數(shù)據(jù)量很小,但這些數(shù)據(jù)需要及時(shí)處理,以達(dá)到實(shí)時(shí)效果,此方式主要用在鍵盤(pán)、鼠標(biāo)以及游戲手柄等外部設(shè)備上2025/5/16(3)控制傳輸方式
處理器與USB設(shè)備的數(shù)據(jù)傳輸,包括設(shè)備控制指令、設(shè)備狀態(tài)查詢及確認(rèn)命令。當(dāng)USB設(shè)備收到這些數(shù)據(jù)和命令后將按照先進(jìn)先出的原則按隊(duì)列方式處理到達(dá)的數(shù)據(jù)(4)批傳輸方式
用來(lái)傳輸要求正確無(wú)誤的數(shù)據(jù)。通常打印機(jī)、掃描儀和數(shù)碼相機(jī)以這種方式與主機(jī)連接除等時(shí)傳輸方式外,其他3種方式在數(shù)據(jù)傳輸發(fā)生錯(cuò)誤時(shí),都會(huì)試圖重新發(fā)送數(shù)據(jù)以保證其準(zhǔn)確性2025/5/16USB的特點(diǎn)數(shù)據(jù)傳輸具有1.5Mbps和12Mbps兩種方式;連接方便,易于擴(kuò)展,可使用集線器進(jìn)行樹(shù)形連接,連接的設(shè)備最多可達(dá)6層127個(gè),支持熱插拔;連接的設(shè)備之間不是平等關(guān)系而是親子關(guān)系,上下游的關(guān)系明確,對(duì)上和對(duì)下的電纜插頭不一樣,而且必須用個(gè)人計(jì)算機(jī)作為主設(shè)備,各個(gè)分設(shè)備只能同主設(shè)備進(jìn)行通信并受主設(shè)備的控制;2025/5/16單根線纜最長(zhǎng)為5米;采用4股銅芯線纜,兩股用于供電,直接由主板提供+5V電源,另外二股為信號(hào)線。USB2.0規(guī)范將最高速率提高到480Mbps2025/5/163SCSI接口技術(shù)小型計(jì)算機(jī)系統(tǒng)接口(SmallComputerSystemInterface)最早研制于1979年,原是為小型機(jī)的研制出的一種接口技術(shù),但隨著電腦技術(shù)的發(fā)展,現(xiàn)在它被完全移植到了普通微機(jī)上。2025/5/16在計(jì)算機(jī)外部設(shè)備,尤其是存儲(chǔ)設(shè)備的接口方面SCSI接口和IDE接口一直是飛速發(fā)展的兩大陣營(yíng)。IDE接口價(jià)格低廉,兼容性好,主板的BIOS能夠支持,使用方便,長(zhǎng)期以來(lái)的不斷改進(jìn),使其性能也有了長(zhǎng)足的進(jìn)步,傳輸速率現(xiàn)已達(dá)到66MB/S。SCSI接口從技術(shù)和性能上說(shuō),其始終擁有著頂級(jí)設(shè)備的特征。
2025/5/16IDE接口在PC機(jī)上擁有絕大多數(shù)的市場(chǎng)份額SCSI接口卻以其優(yōu)異的性能成為高端電腦市場(chǎng)的絕佳選擇。二者的區(qū)別主要在于:IDE的工作方式需要CPU的全程參與SCSI接口則完全通過(guò)獨(dú)立的高速的SCSI卡來(lái)控制數(shù)據(jù)的讀寫(xiě)操作2025/5/16優(yōu)缺點(diǎn)SCSI接口優(yōu)點(diǎn):1.適應(yīng)面廣,在一塊SCSI控制卡上就可以同時(shí)掛接15個(gè)設(shè)備2.高性能(具有很多任務(wù)、寬帶寬及少CPU占用率等特點(diǎn))3.具有外置和內(nèi)置兩種SCSI接口缺點(diǎn):價(jià)格昂貴、安裝復(fù)雜2025/5/16PlugandPlay
計(jì)算機(jī)系統(tǒng)I/O設(shè)備與部件配置的應(yīng)用技術(shù)顧名思義:插入就可用,不需要進(jìn)行任何設(shè)置操作4即插即用技術(shù)2025/5/16
由于一個(gè)系統(tǒng)可以配置多種外部設(shè)備,設(shè)備也經(jīng)常變動(dòng)和更換,它們都要占有一定的系統(tǒng)資源,彼此間在硬件和軟件上可能會(huì)產(chǎn)生沖突。因此在系統(tǒng)中要正確地對(duì)它們進(jìn)行配置和資源匹配;當(dāng)設(shè)備撤除、添置和進(jìn)行系統(tǒng)升級(jí)時(shí),配置過(guò)程往往是一個(gè)困難的過(guò)程PnP技術(shù)的產(chǎn)生2025/5/16(1)支持I/O設(shè)備及部件的自動(dòng)配置,使用戶能夠簡(jiǎn)單方便地使用系統(tǒng)擴(kuò)充設(shè)備(2)減少由制造商裝入的種種用戶支持和限制,簡(jiǎn)化部件的硬件跳接設(shè)置,使I/O附加卡和部件不再具有人工跳接線設(shè)置電路PnP技術(shù)的特點(diǎn)2025/5/16
(3)在主機(jī)板和附加卡上保存系統(tǒng)資源的配置參數(shù)和分配狀態(tài),有利于系統(tǒng)對(duì)整個(gè)I/O資源的分配和控制(4)支持和兼容各種操作系統(tǒng)平臺(tái),具有很強(qiáng)的擴(kuò)展性和可移植性。(5)在一定程度上具有“熱插入”、“熱拼接”技術(shù)2025/5/165網(wǎng)絡(luò)I/O設(shè)備典型網(wǎng)絡(luò)I/O設(shè)備——網(wǎng)絡(luò)打印以往的打印模式 打印機(jī)連接到網(wǎng)上PC上,或連到文件服務(wù)器上,提供網(wǎng)絡(luò)打印服務(wù)新的網(wǎng)絡(luò)打印 采用網(wǎng)絡(luò)打印服務(wù)器技術(shù),打印機(jī)直接上網(wǎng)任何數(shù)據(jù)直接送到網(wǎng)絡(luò)打印機(jī)輸出2025/5/16打印服務(wù)器還能實(shí)現(xiàn)多種網(wǎng)絡(luò)自動(dòng)切換:不同網(wǎng)絡(luò)環(huán)境中的用戶都可以直接向同一臺(tái)打印機(jī)發(fā)送打印作業(yè),打印服務(wù)器會(huì)自動(dòng)識(shí)別較強(qiáng)的打印管理功能:可以管理網(wǎng)絡(luò)打印驅(qū)動(dòng),而且容易安裝和管理;可以實(shí)現(xiàn)遠(yuǎn)程登錄訪問(wèn),進(jìn)行遠(yuǎn)程打印機(jī)管理提高工作效率分布式的環(huán)境設(shè)置:可以安裝在網(wǎng)絡(luò)的任何地方,這種打印服務(wù)方式,就顯得更加靈活和滿足需要2025/5/16設(shè)備分配的任務(wù)是按照一定的算法將設(shè)備及有關(guān)資源分配給申請(qǐng)者進(jìn)程。除分配設(shè)備外,有些設(shè)備還要分配緩沖區(qū)、控制器和通道。為了提高系統(tǒng)的適應(yīng)性和均衡性,應(yīng)考慮設(shè)備的獨(dú)立性,即不能因物理設(shè)備的更換而影響用戶程序的正常進(jìn)行。最后還必須考慮系統(tǒng)的安全性,設(shè)備分配不能導(dǎo)致死鎖現(xiàn)象的發(fā)生。4.4.設(shè)備分配2025/5/16在系統(tǒng)中,要求設(shè)備的進(jìn)程總是多于設(shè)備,這樣,造成多個(gè)進(jìn)程競(jìng)爭(zhēng)同一個(gè)設(shè)備的情況,也就是有多個(gè)進(jìn)程等待設(shè)備,于是就有了設(shè)備的分配和調(diào)度問(wèn)題,或者說(shuō)設(shè)備的分配策略問(wèn)題。4.4.1設(shè)備分配策略2025/5/16按照資源分配的觀點(diǎn),可把設(shè)備分成獨(dú)占設(shè)備、共享設(shè)備和虛擬設(shè)備三類(lèi)。獨(dú)占設(shè)備是指這類(lèi)設(shè)備被分配給作業(yè)后,為作業(yè)所獨(dú)占使用,不能為幾個(gè)作業(yè)同時(shí)使用。大多數(shù)低速設(shè)備如:打印機(jī)、繪圖儀等均屬此類(lèi)設(shè)備。共享設(shè)備是指允許多個(gè)用戶同時(shí)共同使用的設(shè)備。例如磁盤(pán)、磁鼓等設(shè)備,可由多個(gè)進(jìn)程同時(shí)進(jìn)行訪問(wèn)。
虛擬設(shè)備是指通過(guò)Spooling技術(shù)把獨(dú)占設(shè)備變?yōu)榭捎啥鄠€(gè)用戶共享的設(shè)備,以提高獨(dú)占設(shè)備的利用率,Spooling技術(shù)把一臺(tái)共享設(shè)備模擬成獨(dú)占設(shè)備,從而使獨(dú)占設(shè)備能為多個(gè)用戶共享。設(shè)備類(lèi)型不同,設(shè)備的分配策略也不同。2025/5/16獨(dú)占設(shè)備的分配策略在一般情況下,按照先來(lái)先服務(wù)的原則進(jìn)行。在具有優(yōu)先級(jí)作業(yè)調(diào)度的系統(tǒng)中,需考慮優(yōu)先級(jí)的因素。但不管是什么算法分配設(shè)備,都應(yīng)考慮死鎖問(wèn)題,因?yàn)樵O(shè)備分配往往是產(chǎn)生死鎖的主要原因。尤其是獨(dú)占設(shè)備,它本身的性質(zhì)已是構(gòu)成死鎖的必要條件之一,所以在考慮獨(dú)占設(shè)備的分配算法時(shí),應(yīng)結(jié)合有關(guān)的防止死鎖和避免死鎖的算法。1.獨(dú)占設(shè)備的分配策略2025/5/16隨著用戶處理的信息量的越來(lái)越大,一般將各種數(shù)據(jù)以文件的形式存放在磁盤(pán)或磁鼓等共享設(shè)備上,以便進(jìn)行訪問(wèn)。特別在多道程序系統(tǒng)中,用戶對(duì)磁盤(pán)和磁鼓等設(shè)備的訪問(wèn)是十分頻繁的,因此對(duì)磁盤(pán)或磁鼓等設(shè)備的使用是否適當(dāng),直接影響著系統(tǒng)的效率。2.共享設(shè)備的分配和磁盤(pán)調(diào)度策略2025/5/16由于磁盤(pán)、磁鼓等共享設(shè)備,可讓多個(gè)作業(yè)同時(shí)使用,所以一般不必進(jìn)行分配。(1)磁盤(pán)的結(jié)構(gòu)磁盤(pán)機(jī)是一種高速、大容量、旋轉(zhuǎn)型的存儲(chǔ)設(shè)備,它能把信息記錄在盤(pán)片上,也能把盤(pán)片上的信息讀出。每個(gè)盤(pán)片有正反兩面,若干張盤(pán)片可以組成一個(gè)盤(pán)組。一個(gè)盤(pán)組中的盤(pán)片都被固定在一個(gè)軸上,沿著一個(gè)方向高速旋轉(zhuǎn)。2025/5/16●每個(gè)盤(pán)面有一個(gè)讀寫(xiě)磁頭,所有的讀寫(xiě)磁頭被固定在惟一的移動(dòng)臂上同時(shí)移動(dòng),把所有的讀寫(xiě)磁頭按從上到下的次序從0開(kāi)始進(jìn)行編號(hào),稱為“磁頭號(hào)”。●每個(gè)盤(pán)面上有許多磁道,從0開(kāi)始按由外向里的次序順序編號(hào),不同盤(pán)面上具有相同編號(hào)的磁道在同一個(gè)柱面上,把盤(pán)面上的磁道號(hào)稱為“柱面號(hào)”?!褚苿?dòng)臂可以帶動(dòng)讀寫(xiě)磁頭訪問(wèn)所有的磁道,當(dāng)移動(dòng)臂移動(dòng)到某一位置時(shí),所有的讀寫(xiě)磁頭都在同一柱面上,每次只有其中的一個(gè)磁頭可以進(jìn)行讀或?qū)懙牟僮鳌?025/5/16●在磁盤(pán)初始化時(shí)把每個(gè)盤(pán)面劃分成相等數(shù)量的扇區(qū),按磁盤(pán)旋轉(zhuǎn)的反向從0開(kāi)始給各扇區(qū)編號(hào),稱為扇區(qū)號(hào)。●每個(gè)扇區(qū)的各磁道上均可存放相等數(shù)量的字符,我們稱它為“塊”,塊是信息讀寫(xiě)的最小單位?!褚_定一個(gè)塊所在的位置必須給出三個(gè)參數(shù):柱面號(hào)、磁頭號(hào)、扇區(qū)號(hào)。磁盤(pán)的結(jié)構(gòu)如圖所示。2025/5/16
2025/5/16●啟動(dòng)磁盤(pán)執(zhí)行輸入輸出操作時(shí),要把移動(dòng)臂移動(dòng)到指定的柱面,再等待指定的扇區(qū)旋轉(zhuǎn)到磁頭位置下,然后讓指定的磁頭進(jìn)行讀寫(xiě),完成信息傳送。因此,執(zhí)行一次輸入輸出所花的時(shí)間有:
尋找時(shí)間——磁頭在移動(dòng)臂帶動(dòng)下移動(dòng)到指定柱面所花的時(shí)間。(Seek)
延遲時(shí)間(Delay)——指定扇區(qū)旋轉(zhuǎn)到磁頭下所需的時(shí)間。
傳送時(shí)間——由磁頭進(jìn)行讀寫(xiě)完成信息傳送的時(shí)間。其中傳送信息所花的時(shí)間是硬件設(shè)計(jì)就固定的,而尋找時(shí)間和延遲時(shí)間是與信息在磁盤(pán)上的位置有關(guān)。是訪問(wèn)磁盤(pán)的操作時(shí)間示意。2025/5/16
2025/5/16●各磁盤(pán)塊的編號(hào)按柱面順序(從0號(hào)柱面開(kāi)始),每個(gè)柱面按磁道順序,每個(gè)磁道又按扇區(qū)順序進(jìn)行排序。假定用t表示每個(gè)柱面上的磁道數(shù),用s表示每個(gè)盤(pán)面上的扇區(qū)數(shù),則第i柱面,j磁頭,k扇區(qū)所對(duì)應(yīng)的塊號(hào)b可有如下公式確定:
b=k+S*(j+i*t)
2025/5/16同樣地,根據(jù)塊號(hào)也可確定該塊在磁盤(pán)上的位置。在上述的假定下,每個(gè)柱面上有s*t個(gè)磁盤(pán)塊,為了計(jì)算第P塊在磁盤(pán)上的位置,可以令D=s*t,設(shè)M=[P/D],N=PmodD。
第P塊在磁盤(pán)上的位置為:
柱面號(hào)=M
磁頭號(hào)=[N/S]
扇區(qū)號(hào)=NmodS2025/5/16磁盤(pán)的調(diào)度策略有很多,在制訂調(diào)度策略時(shí),主要考慮三個(gè)方面:吞吐量、平均響應(yīng)時(shí)間和響應(yīng)時(shí)間的變化幅度等。根據(jù)這三個(gè)方面,當(dāng)前使用比較普遍的查找操作的策略有如下四種:(2)磁盤(pán)查找操作的調(diào)度策略2025/5/16各進(jìn)程對(duì)磁盤(pán)請(qǐng)求的等待隊(duì)列按提出請(qǐng)求的時(shí)間進(jìn)行排序,并按次序給予服務(wù)。這個(gè)策略對(duì)各進(jìn)程是公平的,它也不管進(jìn)程優(yōu)先級(jí)有多高,只要是新來(lái)到的訪問(wèn)請(qǐng)求,就被排在隊(duì)尾。1)先來(lái)先服務(wù)策略:2025/5/16例如,如果現(xiàn)在讀寫(xiě)磁頭正在53號(hào)柱面上執(zhí)行輸入輸出操作,而等待訪問(wèn)者依次要訪問(wèn)的柱面為98,183,37,122,14,124,65,67。那么,當(dāng)53號(hào)柱面上的操作結(jié)束后,移動(dòng)臂將按請(qǐng)求的先后次序先移到98號(hào)往面,最后到達(dá)67號(hào)柱面,如下頁(yè)圖所示。其相應(yīng)的臂的總移動(dòng)量為:(98-53)+(183-98)+(183-37)+(122-37)+(122-14)+(124-14)+(124-65)+(67-65)=45+85+146+85+108+110+59+2=496+144=6402025/5/1698,183,37,122,14,124,65,67
2025/5/16當(dāng)用戶提出的訪問(wèn)請(qǐng)求比較均勻地遍布整個(gè)盤(pán)面,而不是集中某部分時(shí),先來(lái)先服務(wù)策略導(dǎo)致了隨機(jī)訪問(wèn)模式,在這種策略下無(wú)法對(duì)訪問(wèn)進(jìn)行優(yōu)化。在對(duì)磁盤(pán)的訪問(wèn)請(qǐng)求比較多的情況下,此策略將降低設(shè)備服務(wù)的吞吐量和提高響應(yīng)時(shí)間,但各進(jìn)程得到服務(wù)的響應(yīng)時(shí)間的變化幅度較小。先來(lái)先服務(wù)策略在訪問(wèn)請(qǐng)求不是很多的情況下,是一個(gè)可以接受地策略,而且算法的實(shí)現(xiàn)比較簡(jiǎn)單。2025/5/162)最短查找時(shí)間優(yōu)先的策略是選擇請(qǐng)求隊(duì)列中柱面號(hào)最接近于磁頭當(dāng)前所在的柱面的訪問(wèn)要求,作為下一個(gè)服務(wù)對(duì)象。此策略可以得到比較好的吞吐量和較低的平均響應(yīng)時(shí)間。其缺點(diǎn)是對(duì)用戶的服務(wù)請(qǐng)求的響應(yīng)機(jī)會(huì)不是均等的,對(duì)中間磁道的訪問(wèn)請(qǐng)求得到最好的服務(wù),對(duì)內(nèi)、外兩側(cè)磁道的服務(wù)隨偏離中心磁道的距離愈遠(yuǎn)而愈差,因而導(dǎo)致響應(yīng)時(shí)間的變化幅度很大,在服務(wù)請(qǐng)求很多的情況下,對(duì)內(nèi)、外邊緣磁道的請(qǐng)求將會(huì)無(wú)限期地被延遲。因而有些請(qǐng)求的響應(yīng)時(shí)間將不可預(yù)期。2025/5/16●我們還是用同一個(gè)例子來(lái)討論,現(xiàn)在當(dāng)53號(hào)柱面的操作結(jié)束后,應(yīng)該先處理65號(hào)柱面的請(qǐng)求,然后到達(dá)67號(hào)柱面執(zhí)行操作。隨后應(yīng)處理37號(hào)柱面的請(qǐng)求(它與67號(hào)柱面相距30個(gè)柱面)而不是98號(hào)柱面的請(qǐng)求(它與67號(hào)柱面相距31個(gè)柱面),后繼操作的次序應(yīng)該是14,98,122,124,183。如下頁(yè)圖所示。從圖中可以看到采用最短尋找時(shí)間優(yōu)先算法決定等待訪問(wèn)者執(zhí)行輸入輸出操作的次序時(shí),讀寫(xiě)磁頭總共移動(dòng)了236個(gè)柱面的距離。與先來(lái)先服務(wù)算法比較,大幅度地減少了尋找時(shí)間。因而縮短了為各請(qǐng)求訪問(wèn)者服務(wù)的平均時(shí)間,也就提高了系統(tǒng)效率。2025/5/16現(xiàn)對(duì)需要存取得磁筒進(jìn)行排序:14,37,65,6798,122,124,183。相對(duì)于53最近的磁筒為65。余下的問(wèn)題是在到達(dá)67后,下一個(gè)目標(biāo)是?37,67,98其差為30與31,所以下一個(gè)目標(biāo)為37。
2025/5/16其目的是克服最短查找時(shí)間優(yōu)先策略的缺點(diǎn)。對(duì)于最短查找時(shí)間優(yōu)先策略來(lái)說(shuō),只要某訪問(wèn)請(qǐng)求所在的柱面離磁頭當(dāng)前位置最近,而不管該柱面是在磁臂地前進(jìn)方向上,還是相反。而掃描策略是選擇請(qǐng)求隊(duì)列中,按磁臂前進(jìn)方向最接近于磁頭當(dāng)前所在柱面的訪問(wèn)要求作為下一個(gè)服務(wù)對(duì)象。3)掃描策略2025/5/16此策略基本上克服了最短查找時(shí)間優(yōu)先策略的服務(wù)集中于中間磁道和響應(yīng)時(shí)間變化比較大的缺點(diǎn)。
并且具有最短查找時(shí)間優(yōu)先策略地優(yōu)點(diǎn),即吞吐量比較大,平均響應(yīng)時(shí)間較小,但是由于是擺動(dòng)式的掃描方法,兩側(cè)磁道被訪問(wèn)的頻率仍然低于中間磁道,比最短查找時(shí)間優(yōu)先策略要好多了。2025/5/16對(duì)相同的例子采用單向掃描調(diào)度算法的執(zhí)行次序?yàn)椋?5,6798,122,124,183,此時(shí)移動(dòng)臂繼續(xù)向里移動(dòng),直到最內(nèi)的柱面(圖中為199號(hào)柱面)后,再返回到0號(hào)柱面,重新掃描時(shí)依次為14,37柱面的訪問(wèn)者服務(wù)??偟谋垡苿?dòng)量為:(199-53)+200+37=3832025/5/16
2025/5/16作為對(duì)掃描策略的改進(jìn)提出了N步掃描策略與循環(huán)掃描策略。N步掃描策略基本上與掃描策略相同,只是當(dāng)它在磁臂向內(nèi)或向外移動(dòng)過(guò)程中,只服務(wù)于在磁臂改變方向前到達(dá)的訪問(wèn)請(qǐng)求,而不理會(huì)在磁臂單向移動(dòng)過(guò)程中到達(dá)的那些新的訪問(wèn)請(qǐng)求。4)N步掃描和循環(huán)掃描策略:2025/5/16循環(huán)掃描策略與掃描策略的不同之處在于循環(huán)掃描是單向反復(fù)地掃描。當(dāng)磁臂向內(nèi)移動(dòng)時(shí),它對(duì)本次移動(dòng)開(kāi)始前到達(dá)的各訪問(wèn)請(qǐng)求,自外向內(nèi)地依次給予服務(wù),直到對(duì)最內(nèi)柱面上的訪問(wèn)請(qǐng)求滿足后,磁臂直接向外移動(dòng),使磁頭停在所有新的訪問(wèn)請(qǐng)求的最外邊的柱面上,然后再對(duì)本次移動(dòng)前到達(dá)的各訪問(wèn)要求依次給予服務(wù)。2025/5/16這兩個(gè)策略具有掃描策略的優(yōu)點(diǎn),并且消除了其缺點(diǎn)。根據(jù)模擬研究表明,再訪問(wèn)負(fù)荷較小的情況下,掃描策略是最好的。在中等以上的負(fù)荷情況下,循環(huán)掃描策略則產(chǎn)生最好的結(jié)果。2025/5/165)電梯調(diào)度算法●“電梯調(diào)度”算法總是從移動(dòng)臂當(dāng)前位置開(kāi)始沿著臂的移動(dòng)方向去選擇離當(dāng)前移動(dòng)臂最近的那個(gè)住面的訪問(wèn)者,如果沿臂的移動(dòng)方向無(wú)請(qǐng)求訪問(wèn)時(shí),就改變臂的移動(dòng)方向再選擇。這好比乘電梯,如果電梯已向上運(yùn)動(dòng)到4層時(shí),依次有3位乘客A,B,C,他們的要求是:A在2層等待去10層;B在5層等待去底層;C在8層等待上15層。電梯管理員不是按照乘客來(lái)到的先后次序服務(wù),而是考慮電梯的效率。在這種情況下,沿電梯運(yùn)動(dòng)方向總是先把乘客C帶到15層,然后把乘客B帶到底層,最后再把乘客A送到10層。2025/5/16●我們?nèi)杂猛焕觼?lái)討論采用“電梯調(diào)度”算法的情況,由于該算法是與移動(dòng)臂的方向有關(guān),所以,應(yīng)分兩種情況來(lái)討論。(1)移動(dòng)臂是向外移的。
當(dāng)前正在53號(hào)柱面,在這種情況下為等待訪問(wèn)者服務(wù)的次序是:37,14,65,67,98,122,124,183??偟谋垡苿?dòng)量為:(53–14)+(183–14)=208(2)移動(dòng)臂是向里移的。
當(dāng)前正在53號(hào)柱面,在這種情況下為等待訪問(wèn)者服務(wù)的次序是:65,67,98,122,124,183,37,14??偟谋垡苿?dòng)量為:(183–53)+(183–14)=2992025/5/16
2025/5/16磁盤(pán)調(diào)度算法總結(jié)
●除了“先來(lái)先服務(wù)”調(diào)度算法外,其余幾種調(diào)度算法都是根據(jù)欲訪問(wèn)的柱面位置來(lái)進(jìn)行調(diào)度的?!裨谡{(diào)度過(guò)程中可能有新的請(qǐng)求訪問(wèn)者加入,這些新的請(qǐng)求訪問(wèn)者加入時(shí),如果讀寫(xiě)磁頭已經(jīng)超過(guò)了它們所要訪問(wèn)的柱面位置,則只能在以后的調(diào)度中被選擇執(zhí)行。所以,在處理過(guò)程中,除了先來(lái)先服務(wù)算法外,其他的算法一般都需要對(duì)需要存取得磁筒進(jìn)行排序,以便進(jìn)行判斷,而且不會(huì)漏掉。2025/5/16●對(duì)于這些調(diào)度算法的優(yōu)劣比較:1.先來(lái)先服務(wù)(FIFS):算法簡(jiǎn)單,但效率差。2.最短尋找時(shí)間優(yōu)先調(diào)度算法:效率比較高,但會(huì)出現(xiàn)有的請(qǐng)求很長(zhǎng)時(shí)間得不到響應(yīng)。3.單向掃描調(diào)度算法:效率比較高,但有一個(gè)空行程。4.雙向掃描調(diào)度算法:比單向掃描調(diào)度算法效率高,調(diào)度算法也相對(duì)合理。但還是有一個(gè)空行程。5.電梯調(diào)度算法:是一個(gè)比較合理、優(yōu)化的算法。2025/5/16為了減少旋轉(zhuǎn)延遲時(shí)間,對(duì)同一柱面上各磁道的扇區(qū)的對(duì)個(gè)訪問(wèn)請(qǐng)求也需重新排隊(duì),進(jìn)行旋轉(zhuǎn)優(yōu)化,通常使用的優(yōu)化策略是最短延遲時(shí)間優(yōu)化策略。(3)磁盤(pán)旋轉(zhuǎn)優(yōu)化策略2025/5/16在選擇請(qǐng)求隊(duì)列中,對(duì)同一柱面上各磁道的扇區(qū)按磁頭到達(dá)的先后順序進(jìn)行排序,首先訪問(wèn)最近的扇區(qū),
然后根據(jù)順序進(jìn)行訪問(wèn),直到本柱面的所有請(qǐng)求扇區(qū)都訪問(wèn)過(guò)。因?yàn)榇蓬^是旋轉(zhuǎn)的,這樣按離磁頭由近到遠(yuǎn)的訪問(wèn),可以減少磁頭的旋轉(zhuǎn)時(shí)間,降低磁頭旋轉(zhuǎn)的圈數(shù)。從而提高系統(tǒng)效率。對(duì)于磁盤(pán)的查找優(yōu)化和旋轉(zhuǎn)優(yōu)化都可以采用硬件的方法來(lái)實(shí)現(xiàn)。2025/5/16●用共享設(shè)備模擬獨(dú)占設(shè)備的動(dòng)作,使獨(dú)占型設(shè)備成為共享設(shè)備。實(shí)現(xiàn)這一功能的技術(shù)稱為Spooling技術(shù)?!癫捎肧pooling技術(shù)后,用預(yù)輸入程序和緩輸出程序取代外圍處理機(jī),通過(guò)管理程序,用一臺(tái)磁盤(pán)機(jī)代替兩臺(tái)磁盤(pán)機(jī),所以把這種系統(tǒng)稱為假脫機(jī)系統(tǒng)。假脫機(jī)系統(tǒng)輸入輸出的工作原理如圖4-7所示。3.虛擬設(shè)備和Spooling系統(tǒng)2025/5/16要輸入的作業(yè)結(jié)果信息作業(yè)執(zhí)行
CPU預(yù)輸入程序緩輸出程序輸入井輸出井硬盤(pán)作業(yè)圖4-7假脫機(jī)系統(tǒng)輸入輸出的工作原理2025/5/16通過(guò)預(yù)輸入程序把作業(yè)信息送到輸入井中,當(dāng)作業(yè)被選中執(zhí)行時(shí),直接從輸入井中讀取信息,與讀卡機(jī)是脫離的;作業(yè)執(zhí)行的結(jié)果先放在輸出井中,待作業(yè)執(zhí)行執(zhí)行結(jié)束后由緩輸出程序?qū)⒆鳂I(yè)結(jié)果打印輸出。由于預(yù)輸入程序和緩輸出程序的執(zhí)行是在主機(jī)控制下進(jìn)行的,所以也稱作外圍設(shè)備同時(shí)聯(lián)機(jī)操作。2025/5/16采用Spooling技術(shù)后,讀卡機(jī)不用等待作業(yè)執(zhí)行完畢,就可以輸入其它作業(yè)的信息,CPU也不用等待讀卡機(jī)把作業(yè)輸入和打印機(jī)把作業(yè)的結(jié)果信息打印出來(lái),這樣,不僅提高了CPU的利用率,也提高了獨(dú)占設(shè)備的利用率。2025/5/16由此可以看出,虛擬設(shè)備分配的特點(diǎn):(1)用戶進(jìn)程并未真正分得打印機(jī),即打印機(jī)并未被某各進(jìn)程所獨(dú)占;(2)用戶進(jìn)程時(shí)間被分給的不是打印設(shè)備,而是共享設(shè)備中的一個(gè)存儲(chǔ)區(qū)或文件,即虛擬設(shè)備,實(shí)際的打印機(jī)由Spooling調(diào)度依次按某一策略逐個(gè)地打印存儲(chǔ)區(qū)中的數(shù)據(jù)。(3)由于實(shí)際打印由Spooling系統(tǒng)調(diào)度,依次完成,這樣,打印機(jī)的效率就提高了,從而整個(gè)系統(tǒng)的效率也提高了。2025/5/16目前不但在大、中型計(jì)算機(jī)的操作系統(tǒng)中廣泛使用Spooling技術(shù),而且微機(jī)上也使用了Spooling技術(shù)。在Spooling系統(tǒng)設(shè)計(jì)中,為了彌補(bǔ)獨(dú)占設(shè)備與共享設(shè)備間數(shù)據(jù)傳輸速度的差異,需要使用緩沖技術(shù),另外,需要注意同步和互斥的問(wèn)題。2025/5/16設(shè)備分配程序的功能是當(dāng)某進(jìn)程向系統(tǒng)提出I/O請(qǐng)求后,設(shè)備分配程序按照一定的策略,把所要求的設(shè)備分配給它。為確保CPU和設(shè)備之間能進(jìn)行通訊,還應(yīng)分配相應(yīng)的控制器和通道。若使用選擇型通道,則設(shè)備應(yīng)獨(dú)占該通道與控制器,若是其它兩種類(lèi)型的通道,則通道無(wú)需獨(dú)占,但要防止通道程序過(guò)長(zhǎng),以免影響中斷響應(yīng)時(shí)間。4.4.2設(shè)備分配程序2025/5/16設(shè)備管理程序?qū)/O設(shè)備進(jìn)行分配和控制,必須記錄設(shè)備的信息才能實(shí)現(xiàn)控制,于是,在系統(tǒng)中建立了一些表,來(lái)記錄對(duì)I/O設(shè)備控制所需的信息,它們是設(shè)備管理程序?qū)崿F(xiàn)管理功能的數(shù)據(jù)結(jié)構(gòu)。其中基本的表有:系統(tǒng)設(shè)備表、設(shè)備控制表、控制器表和通道表。1.設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)2025/5/16系統(tǒng)設(shè)備表是系統(tǒng)范圍的數(shù)據(jù)結(jié)構(gòu),它記錄了系統(tǒng)中所擁有的全部I/O設(shè)備,每一設(shè)備一個(gè)表目,每個(gè)表目又包括若干項(xiàng)。其具體內(nèi)容如圖4-8所示。(1)系統(tǒng)設(shè)備表2025/5/16表目i┊設(shè)備類(lèi)型
設(shè)備標(biāo)識(shí)符
進(jìn)程標(biāo)識(shí)符
設(shè)備接口模塊標(biāo)識(shí)符
表目1┊圖4-8系統(tǒng)設(shè)備表2025/5/16其中,設(shè)備類(lèi)型:說(shuō)明設(shè)備的類(lèi)別,如打印機(jī)、磁盤(pán)等;設(shè)備標(biāo)識(shí)符:設(shè)備控制表中所用的設(shè)備標(biāo)識(shí)符;進(jìn)程標(biāo)識(shí)符:當(dāng)設(shè)備未分配時(shí),該項(xiàng)為0,設(shè)備不能工作時(shí)為-1,若設(shè)備以被分配給某進(jìn)程,則填上該進(jìn)程標(biāo)識(shí)符。設(shè)備接口模塊標(biāo)識(shí)符:指出負(fù)責(zé)該設(shè)備進(jìn)行實(shí)際操作的軟件的標(biāo)識(shí)符。2025/5/16系統(tǒng)中每一設(shè)備都設(shè)置一張用以記錄本設(shè)備情況的設(shè)備控制表,該表的具體內(nèi)容如下圖4-9所示。(2)設(shè)備控制表2025/5/16表目i┊設(shè)備類(lèi)型
設(shè)備標(biāo)識(shí)符
設(shè)備狀態(tài)
控制器表指針重復(fù)執(zhí)行次數(shù)和時(shí)間設(shè)備隊(duì)列的隊(duì)首指針
設(shè)備隊(duì)列的隊(duì)尾指針
表目1┊設(shè)備控制表集合設(shè)備控制表圖4-9系統(tǒng)設(shè)備表2025/5/16設(shè)備控制表包括:設(shè)備類(lèi)型、設(shè)備標(biāo)識(shí)符、設(shè)備狀態(tài)、控制器表指針、重復(fù)執(zhí)行次數(shù)和時(shí)間、設(shè)備隊(duì)列的隊(duì)首指針和設(shè)備隊(duì)列的隊(duì)尾指針等七項(xiàng)。其中,設(shè)備類(lèi)型和設(shè)備標(biāo)識(shí)符來(lái)指明設(shè)備的類(lèi)型和名字。2025/5/16設(shè)備狀態(tài):有四種狀態(tài):等待、不等待、忙、閑,等待和不等待用一個(gè)“等待/不等待”標(biāo)志位表示,忙和閑用一個(gè)“忙/閑”標(biāo)志位表示。當(dāng)某進(jìn)程提出I/O請(qǐng)求時(shí),系統(tǒng)除了為該進(jìn)程分配設(shè)備外,還須同時(shí)分配相應(yīng)的通道和控制器。若此時(shí)與設(shè)備相連的所有控制器和通道都忙,則把該進(jìn)程插入該控制器或通道隊(duì)列,并置位“等待/不等待”標(biāo)志位。若設(shè)備自身也處于忙的狀態(tài),則置位“忙/閑”標(biāo)志位。2025/5/16控制器表指針:若I/O設(shè)備與內(nèi)存之間僅有一條通道,此時(shí)設(shè)備僅連向一個(gè)控制器,該表目便填上該控制器表的首址。為提高I/O系統(tǒng)的靈活性和可靠性,不少系統(tǒng)在I/O設(shè)備和內(nèi)存之間都配置了多條通道,此時(shí)該表目中應(yīng)填上相應(yīng)的多個(gè)控制器表的首址。2025/5/16重復(fù)執(zhí)行的次數(shù)或時(shí)間:在數(shù)據(jù)傳送中,若發(fā)生信息錯(cuò)誤,系統(tǒng)并不立即認(rèn)為傳送失敗,而是重復(fù)執(zhí)行該傳送操作。只要在規(guī)定的重復(fù)執(zhí)行次數(shù)或時(shí)間內(nèi)恢復(fù)正確的傳送,則仍認(rèn)為此次傳送成功,否則才宣布此次傳送操作失敗,并停止它。設(shè)備隊(duì)列的隊(duì)首指針和隊(duì)尾指針:凡因請(qǐng)求本設(shè)備未得到滿足的進(jìn)程,將其按一定的策略排成一個(gè)隊(duì)列,該隊(duì)列稱為設(shè)備請(qǐng)求隊(duì)列或簡(jiǎn)稱設(shè)備隊(duì)列。該隊(duì)列的隊(duì)首和隊(duì)尾指針?lè)謩e指向其隊(duì)首和隊(duì)尾。當(dāng)隊(duì)列不太長(zhǎng)時(shí),隊(duì)尾指針可以省去。2025/5/16系統(tǒng)中設(shè)置一張用以記錄系統(tǒng)中所有控制器情況的控制器表,該表的具體內(nèi)容如下4-10所示。(3)控制器表2025/5/16表目i┊控制器標(biāo)識(shí)符
控制器狀態(tài)
與控制器連接的通道表指針控制器隊(duì)列的隊(duì)首指針
控制器隊(duì)列的隊(duì)尾指針
表目1┊控制器表
圖4-10控制器表其中控制器表中包括:控制器標(biāo)識(shí)符、控制器狀態(tài)、與控制器連接的通道表指針、控制器隊(duì)列的隊(duì)首指針和隊(duì)尾指針。與設(shè)備控制表的表目類(lèi)似,不再重復(fù)。2025/5/16系統(tǒng)中設(shè)置一張用以記錄系統(tǒng)中所有通道情況的通道表,該表的具體內(nèi)容如下4-11所示。(4)通道表2025/5/16
表目i┊通道標(biāo)識(shí)符
通道狀態(tài)
與通道連接的控制器表首址通道隊(duì)列的隊(duì)首指針通道隊(duì)列的隊(duì)尾指針
表目1┊通道表圖4-11通道表其中通道表中包括:通道標(biāo)識(shí)符、通道狀態(tài)、與通道連接的控制器表首址、通道隊(duì)列的隊(duì)首指針和隊(duì)尾指針。與設(shè)備控制表的表目類(lèi)似,不再重復(fù)。2025/5/16為使系統(tǒng)正常的工作,系統(tǒng)必須具有合理的設(shè)備分配原則,一般與下述的四個(gè)因素有關(guān):●I/O設(shè)備的固有屬性,即該設(shè)備是適于某進(jìn)程獨(dú)占還是可供多個(gè)進(jìn)程共享;●系統(tǒng)采用的分配算法,是采用先請(qǐng)求先分配方式,還是按優(yōu)先級(jí)最高者優(yōu)先的方式;●設(shè)備分配中的安全性,不合理的設(shè)備分配有可能導(dǎo)致死鎖的發(fā)生;●與設(shè)備的無(wú)關(guān)性,用戶程序與實(shí)際使用的物理設(shè)備無(wú)關(guān)。2.設(shè)備分配原則2025/5/16我們主要來(lái)研究以下設(shè)備分配的安全性以及與設(shè)備的無(wú)關(guān)性。(1)設(shè)備分配中的安全性設(shè)備分配程序應(yīng)保證不發(fā)生進(jìn)程死鎖。在CPU和I/O設(shè)備之間串行工作時(shí),不會(huì)發(fā)生死鎖現(xiàn)象,因?yàn)槊慨?dāng)進(jìn)程以命令形式發(fā)出I/O請(qǐng)求后,便立即進(jìn)入阻塞狀態(tài),直到所提出的I/O請(qǐng)求完成才被喚醒。這種方法具有程序的編址較為方便和設(shè)備分配比較安全的優(yōu)點(diǎn),其缺點(diǎn)是進(jìn)程進(jìn)展比較緩慢。為了加速進(jìn)程的推進(jìn),使CPU和I/O設(shè)備并行工作的情況下,進(jìn)程可以同時(shí)操作多個(gè)設(shè)備,即某進(jìn)程可以以命令形式發(fā)出I/O請(qǐng)求后仍可繼續(xù)運(yùn)行,需要時(shí)又可發(fā)出第二個(gè)I/O請(qǐng)求,第三個(gè)I/O請(qǐng)求,僅當(dāng)進(jìn)程所請(qǐng)求的設(shè)備以被另一進(jìn)程占用時(shí)才進(jìn)入阻塞狀態(tài)。2025/5/16這種分配方式可以加速進(jìn)程的推進(jìn)速度,但這種多請(qǐng)求的方式的缺點(diǎn)是設(shè)備分配不安全。例如,進(jìn)程A和進(jìn)程B都需要使用卡片輸入機(jī)和打印機(jī),進(jìn)程A先提出使用卡片輸入機(jī)并已獲得,進(jìn)程B要求打印機(jī)且已分到,因此進(jìn)程A、B都將繼續(xù)運(yùn)行,當(dāng)進(jìn)程A又需要打印機(jī)時(shí),由于進(jìn)程B已占用打印機(jī),進(jìn)程A因此阻塞。同樣,當(dāng)進(jìn)程B提出使用讀卡機(jī)請(qǐng)求時(shí),又因?yàn)樽x卡機(jī)已被進(jìn)程A占用,進(jìn)程B也被阻塞,此時(shí),進(jìn)程A和B都指望對(duì)方釋放出自己需要的資源,但兩者都不能釋放自己的占有資源而使兩者都不能繼續(xù)運(yùn)行,于是發(fā)生了死鎖現(xiàn)象。因此,在多請(qǐng)求方式中,設(shè)備的分配程序應(yīng)保證不發(fā)生進(jìn)程死鎖。2025/5/16為提高系統(tǒng)的可適應(yīng)性和可擴(kuò)展性,希望所編制的程序與實(shí)際使用的物理設(shè)備無(wú)關(guān),即與設(shè)備的無(wú)關(guān)性。為此使用邏輯設(shè)備名和物理設(shè)備名,實(shí)現(xiàn)用戶程序與物理設(shè)備的無(wú)關(guān)性。邏輯設(shè)備是實(shí)際物理設(shè)備屬性的抽象,它并不局限于某個(gè)具體設(shè)備。
(2)與設(shè)備無(wú)關(guān)性2025/5/16例如一臺(tái)名為L(zhǎng)ST的具有打印機(jī)屬性的邏輯設(shè)備,它可能是0號(hào)打印機(jī)或1號(hào)打印機(jī),在某些情況下,也可能是顯示終端,甚至是一臺(tái)磁盤(pán)的某部分空間(虛擬打印機(jī))。邏輯設(shè)備究竟和哪一個(gè)具體的物理設(shè)備相對(duì)應(yīng),這要由系統(tǒng)根據(jù)當(dāng)時(shí)的設(shè)備忙、閑情況來(lái)決定或由用戶指定。2025/5/16用戶程序使用邏輯設(shè)備名,而不直接使用物理設(shè)備名有以下優(yōu)點(diǎn):1)當(dāng)物理設(shè)備發(fā)生意外情況無(wú)法工作或設(shè)備型號(hào)發(fā)生變動(dòng)時(shí),用戶程序無(wú)須修改也不用重新編譯,只需更換控制卡或用命令重新修改邏輯設(shè)備名和物理設(shè)備名之間的連接即可。2)能適應(yīng)多用戶多進(jìn)程的需要,系統(tǒng)可根據(jù)設(shè)備的忙閑情況合理調(diào)整邏輯設(shè)備名與物理設(shè)備名之間的連接情況。使用邏輯設(shè)備名能保證設(shè)備的獨(dú)立性。2025/5/163.設(shè)備分配流程
當(dāng)系統(tǒng)中已經(jīng)具備了設(shè)備分配的數(shù)據(jù)結(jié)構(gòu),且確定了一定的分配原則后,若某進(jìn)程提出了I/O請(qǐng)求,便可按照下述步驟實(shí)施設(shè)備分配。設(shè)備分配包括分配設(shè)備、分配控制器和分配通道。設(shè)備分配的具體流程如圖4-12所示。2025/5/16上面的設(shè)備分配流程只是面向單通路的I/O系統(tǒng),即每個(gè)I/O設(shè)備只有一條通路與內(nèi)存連接,實(shí)際上,為了可靠性和靈活性,往往采用多通路的I/O系統(tǒng),這樣,一個(gè)I/O設(shè)備可連至幾個(gè)控制器,每個(gè)控制器又連接幾個(gè)通道,使得設(shè)備分配更為復(fù)雜化。當(dāng)進(jìn)程已獲得所需的設(shè)備、控制器和通道之后,便可執(zhí)行具體的I/O操作。對(duì)于設(shè)置有通道的系統(tǒng),CPU啟動(dòng)I/O就是調(diào)用相應(yīng)的通道程序,由通道專用處理機(jī)執(zhí)行通道程序完成I/O操作。2025/5/16許多微機(jī)并不設(shè)置通道,在這種情況下,CPU啟動(dòng)I/O是調(diào)用相應(yīng)的設(shè)備驅(qū)動(dòng)程序和I/O處理程序,由CPU直接向I/O設(shè)備發(fā)出指令,控制設(shè)備來(lái)完成實(shí)際的I/O操作。設(shè)備驅(qū)動(dòng)程序與物理設(shè)備有關(guān),針對(duì)具體的I/O設(shè)備控制器進(jìn)行編碼和操作。
2025/5/16從系統(tǒng)設(shè)備表中找到該設(shè)備的設(shè)備控制表此設(shè)備是否忙?檢查設(shè)備的安全性?分配此設(shè)備給進(jìn)程檢查控制器忙否?分配此控制器給進(jìn)程
檢查通道忙否?分配通道給進(jìn)程啟動(dòng)I/O,進(jìn)行具體的I/O操作從系統(tǒng)設(shè)備表中找到該設(shè)備的設(shè)備控制表將進(jìn)程放入此設(shè)備的等待隊(duì)列將進(jìn)程放入此控制器的等待隊(duì)列進(jìn)程申請(qǐng)I/O設(shè)備將進(jìn)程放入此通道的等待隊(duì)列忙不安全不忙安全不忙不忙忙忙圖4-12設(shè)備分配流程圖2025/5/16MicrosoftWindows2003I/O系統(tǒng)是Windows2003執(zhí)行體的組件,并且存在于Ntoskrnl.exe中。它接受I/O請(qǐng)求,并且以不同的形式把它們傳送到I/O設(shè)備。在用戶函數(shù)和實(shí)際的I/O硬件之間有幾個(gè)分立的系統(tǒng)組件,包括文件系統(tǒng)驅(qū)動(dòng)程序、過(guò)濾器驅(qū)動(dòng)程序和低層設(shè)備驅(qū)動(dòng)程序。4.5MicrosoftWindows2003I/O系統(tǒng)2025/5/16Windows2003I/O系統(tǒng)的設(shè)計(jì)目標(biāo)是:1)加快系統(tǒng)的I/O處理。2)使用標(biāo)準(zhǔn)的Windows2003安全機(jī)制保護(hù)共享的資源。3)滿足各種環(huán)境子系統(tǒng)指定的I/O服務(wù)的需要。4)提供服務(wù),使設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā)盡可能地簡(jiǎn)單,并且允許用高級(jí)語(yǔ)言編寫(xiě)驅(qū)動(dòng)程序。2025/5/165)允許在系統(tǒng)中動(dòng)態(tài)地添加或刪除設(shè)備驅(qū)動(dòng)程序。6)通過(guò)添加驅(qū)動(dòng)程序透明地修改其他驅(qū)動(dòng)程序或設(shè)備的行為。7)為多種可安裝的文件系統(tǒng)提供支持,如FAT、CD-ROM文件系統(tǒng)(CDFS)、統(tǒng)一磁盤(pán)格式(UDF)文件系統(tǒng)和Windows2003文件系統(tǒng)(NTFS)。8)允許整個(gè)系統(tǒng)或單個(gè)硬件設(shè)備進(jìn)入和離開(kāi)低功耗狀態(tài),這樣可以節(jié)約能源。2025/5/16Windows2003的I/O系統(tǒng)是由一些執(zhí)行體組件和設(shè)備驅(qū)動(dòng)程序組成,包括:I/O子系統(tǒng)、I/O管理器、設(shè)備驅(qū)動(dòng)程序、PnP管理器、電源管理器、WMI支持例程、注冊(cè)表、硬件抽象層I/O訪問(wèn)例程等。I/O系統(tǒng)結(jié)構(gòu)如圖4-13所示。4.5.1.I/O系統(tǒng)的結(jié)構(gòu)2025/5/16圖4-13I/O系統(tǒng)結(jié)構(gòu)
WDMWMI例程應(yīng)用程序
WIN32系統(tǒng)服務(wù)WMI服務(wù)用戶模式的即插即用管理器安裝組件.inf文件.cat文件.注冊(cè)表即插即用管理器電源管理器I/O管理器硬件抽象層(HAL)……驅(qū)動(dòng)程序核心模式用戶模式I/O系統(tǒng)2025/5/16在I/O系統(tǒng)中,各個(gè)組件的作用如下:I/O子系統(tǒng):它是內(nèi)部的執(zhí)行體系統(tǒng)服務(wù),系統(tǒng)調(diào)用它們實(shí)現(xiàn)子系統(tǒng)的文檔化的I/O函數(shù)。即用戶程序所發(fā)出的I/O操作函數(shù),調(diào)用它實(shí)現(xiàn)I/O操作。I/O管理器:它負(fù)責(zé)驅(qū)動(dòng)I/O請(qǐng)求的處理。設(shè)備驅(qū)動(dòng)程序:負(fù)責(zé)把I/O請(qǐng)求轉(zhuǎn)化為對(duì)硬件設(shè)備的特定的控制請(qǐng)求。PnP管理器:通過(guò)與I/O管理器和總線驅(qū)動(dòng)程序的協(xié)同工作來(lái)檢測(cè)硬件資源的分配,并且檢測(cè)相應(yīng)硬件設(shè)備的添加和刪除。2025/5/16電源管理器:通過(guò)與I/O管理器的協(xié)同工作來(lái)檢測(cè)整個(gè)系統(tǒng)和單個(gè)硬件設(shè)備,完成不同電源狀態(tài)的轉(zhuǎn)換。WMI支持例程:也稱為Windows驅(qū)動(dòng)程序模型(WDM)WMI提供者,允許驅(qū)動(dòng)程序使用這些支持例程作為媒介,與用戶模式下運(yùn)行的WMI服務(wù)通信。注冊(cè)表:作為一個(gè)數(shù)據(jù)庫(kù),存儲(chǔ)基本硬件設(shè)備的描述信息以及驅(qū)動(dòng)程序的初始化和配置信息。硬件抽象層I/O訪問(wèn)例程:負(fù)責(zé)把驅(qū)動(dòng)程序與多種多樣的硬件平臺(tái)隔離開(kāi)來(lái),使它們?cè)诮o定的體系中是可移植的,并保證在Windows2003支持的硬件體系結(jié)構(gòu)中的源代碼是可移植的。2025/5/16大部分I/O操作并不會(huì)涉及所有的組件,一個(gè)典型的I/O操作從應(yīng)用程序調(diào)用一個(gè)與I/O操作有關(guān)的函數(shù)開(kāi)始,通常會(huì)涉及I/O管理、一個(gè)或多個(gè)設(shè)備驅(qū)動(dòng)程序以及硬件抽象層。一個(gè)典型的I/O請(qǐng)求流程的結(jié)構(gòu)如圖4-14所示。2025/5/16驅(qū)動(dòng)程序支持例程用戶模式API
I/O系統(tǒng)服務(wù)APII/O管理器核心模式設(shè)備驅(qū)動(dòng)程序設(shè)備抽象層I/O訪問(wèn)例程
I/O端口和寄存器圖4-14典型的I/O請(qǐng)求流程2025/5/16I/O管理器實(shí)現(xiàn)與設(shè)備無(wú)關(guān)的輸入輸出,并建立執(zhí)行體I/O的模型,它并不進(jìn)行實(shí)際的I/O處理。在該模型里,I/O請(qǐng)求被提交給設(shè)備驅(qū)動(dòng)程序。I/O系統(tǒng)是包驅(qū)動(dòng)的,大多數(shù)I/O請(qǐng)求用“I/O請(qǐng)求包(IRP)”來(lái)表示,它從一個(gè)I/O系統(tǒng)組件移動(dòng)到另一個(gè)I/O系統(tǒng)組件。1.I/O管理器2025/5/16I/O管理器創(chuàng)建代表每個(gè)I/O操作的IRP,傳遞IRP給正確的設(shè)備驅(qū)動(dòng)程序,并且當(dāng)此I/O操作完成后,處理這個(gè)數(shù)據(jù)包,最后撤消這個(gè)IRP。相反,驅(qū)動(dòng)程序接受IRP,執(zhí)行IRP指定的操作,并且在完成后把IRP送回I/O管理器或?yàn)橄乱徊降奶幚矶阉ㄟ^(guò)I/O管理器送到另一個(gè)驅(qū)動(dòng)程序。2025/5/16除了創(chuàng)建并處理IRP外,I/O管理器還為不同的驅(qū)動(dòng)程序提供了公共的代碼,驅(qū)動(dòng)程序調(diào)用這些代碼執(zhí)行它們的I/O處理。通過(guò)在I/O管理器中合并公共的任務(wù),單個(gè)的驅(qū)動(dòng)程序?qū)⒆兊酶雍?jiǎn)潔和緊湊。例如,I/O管理器提供一個(gè)允許某個(gè)驅(qū)動(dòng)程序調(diào)用其它驅(qū)動(dòng)程序的函數(shù)。2025/5/16I/O管理器還管理用于I/O請(qǐng)求的緩沖區(qū),為驅(qū)動(dòng)程序提供超時(shí)支持,并記錄操作系統(tǒng)中加載了哪些可安裝的文件系統(tǒng)。I/O管理器提供靈活的I/O服務(wù),允許環(huán)境子系統(tǒng)執(zhí)行它們自己的I/O函數(shù)。這些服務(wù)包括用于異步I/O的服務(wù),它們也允許開(kāi)發(fā)者建立可升級(jí)的高性能的服務(wù)器應(yīng)用程序。
2025/5/16驅(qū)動(dòng)程序呈現(xiàn)的統(tǒng)一的、模塊化的接口允
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度地庫(kù)車(chē)位銷(xiāo)售與售后服務(wù)合同范本
- 二零二五年度教育培訓(xùn)機(jī)構(gòu)加盟合同買(mǎi)賣(mài)補(bǔ)充約定
- 2025版企業(yè)招聘及員工培訓(xùn)一體化合同
- 2025至2030年中國(guó)新疆煤炭資源開(kāi)采市場(chǎng)深度評(píng)估及行業(yè)投資前景咨詢報(bào)告
- 2025至2030年中國(guó)高速耦合器行業(yè)市場(chǎng)全景監(jiān)測(cè)及投資前景展望報(bào)告
- 二零二五年度專業(yè)理發(fā)店技師崗位錄用協(xié)議
- 二零二五年度昆都侖召消防演練場(chǎng)地租賃與布置合同
- 二零二五年度履約保函標(biāo)準(zhǔn)協(xié)議書(shū)(新能源開(kāi)發(fā))
- 2025至2030年中國(guó)豬油膏行業(yè)市場(chǎng)調(diào)查研究及發(fā)展戰(zhàn)略規(guī)劃報(bào)告
- 二零二五年度汽車(chē)租賃企業(yè)員工租車(chē)服務(wù)合同
- GB/T 35778-2017企業(yè)標(biāo)準(zhǔn)化工作指南
- 羽毛球校本教材
- GB/T 15601-2013管法蘭用金屬包覆墊片
- GB/T 12325-2008電能質(zhì)量供電電壓偏差
- 汽輪機(jī)原理-凝汽器課件
- 二年級(jí)下冊(cè)認(rèn)識(shí)方向練習(xí)題
- 檢驗(yàn)報(bào)告(風(fēng)機(jī))
- 鼻骨及眼眶骨折的CT診斷課件
- 房屋拆除工程監(jiān)理規(guī)劃
- 海思芯片HTOL老化測(cè)試技術(shù)規(guī)范
- 最新版?zhèn)€人征信報(bào)告(可編輯+帶水印)
評(píng)論
0/150
提交評(píng)論