版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第五章 設(shè)備管理操作系統(tǒng)10/7/20221第五章 設(shè)備管理I/O系統(tǒng) I/O控制方式 緩沖管理 設(shè)備分配設(shè)備處理磁盤存儲(chǔ)器管理10/7/20222緩沖管理緩沖的引入單緩沖和雙緩沖循環(huán)緩沖緩沖池(Buffer Pool)10/7/20223緩沖的引入緩和CPU與I/O設(shè)備間速度不匹配的矛盾 數(shù)據(jù)到達(dá)速率與其離去速率不同減少對(duì)CPU的中斷頻率,放寬對(duì)CPU中斷響應(yīng)時(shí)間的限制1位緩沖9.6 Kb/s(a)中斷CPU的頻率為9.6Kb/s,每100s中斷一次CPUCPU必須在100 s內(nèi)響應(yīng),否則數(shù)據(jù)會(huì)被沖掉8位緩沖寄存器送內(nèi)存9.6 Kb/s(b)中斷CPU的頻率降低為9.6Kb/8 10/7/2
2、0224緩沖的引入8位緩沖寄存器9.6 Kb/s送內(nèi)存(c)提高CPU和I/O設(shè)備之間的并行性提高系統(tǒng)的吞吐量和設(shè)備的利用率每800s中斷一次CPU10/7/20225緩沖管理緩沖的引入單緩沖和雙緩沖循環(huán)緩沖緩沖池(Buffer Pool)10/7/20226單緩沖和雙緩沖單緩沖(Single Buffer) CT時(shí),每塊數(shù)據(jù)的處理時(shí)間是M+T;反之,為M+C,即由于C和T可并行,M和C或M和T不能并行因此處理一塊數(shù)據(jù)時(shí)間:Max(C,T)+M10/7/20227單緩沖和雙緩沖雙緩沖(Double Buffer) 效率有所提高,且進(jìn)一步平滑了傳輸峰值。系統(tǒng)處理一塊數(shù)據(jù)的時(shí)間約為:MAX(C,T
3、)工作區(qū)用戶進(jìn)程緩沖區(qū)1緩沖區(qū)2I/O 設(shè)備T1(緩沖1)M1C1M2C2M3C3T2(緩沖2)T3(緩沖3)M4C4T4(緩沖4)(a)(b)10/7/20228單緩沖和雙緩沖只能實(shí)現(xiàn)單向的數(shù)據(jù)傳輸緩沖區(qū)緩沖區(qū)A機(jī)B機(jī)(a) 單緩沖發(fā)送緩沖區(qū)接收緩沖區(qū)接收緩沖區(qū)發(fā)送緩沖區(qū)A機(jī)B機(jī)(b) 雙緩沖為了實(shí)現(xiàn)雙向數(shù)據(jù)傳輸,必須在兩臺(tái)機(jī)器中都設(shè)置兩個(gè)緩沖區(qū),一個(gè)用作發(fā)送緩沖區(qū),另一個(gè)用作接收緩沖區(qū)。10/7/20229緩沖管理緩沖的引入單緩沖和雙緩沖循環(huán)緩沖緩沖池(Buffer Pool)10/7/202210循環(huán)緩沖循環(huán)緩沖的引入當(dāng)輸入與輸出速度基本匹配時(shí),雙緩沖能獲得較好效果;當(dāng)速度相差較大時(shí),可
4、引入多個(gè)(大小相等)緩沖,組織成循環(huán)緩沖的形式循環(huán)緩沖的組成多個(gè)緩沖區(qū)用于裝輸入數(shù)據(jù)的空緩沖區(qū)R已裝滿數(shù)據(jù)的滿緩沖區(qū)G計(jì)算進(jìn)程正在使用的現(xiàn)行工作緩沖區(qū)C多個(gè)指針指示計(jì)算進(jìn)程下一可用緩沖區(qū)Nextg指示輸入進(jìn)程下一可用空緩沖區(qū)Nexti指示計(jì)算進(jìn)程正在使用的緩沖區(qū)Current10/7/202211循環(huán)緩沖類型:R:空緩沖;G:滿緩沖;C:當(dāng)前緩沖RGGGRG165423NextiNextgRGGGRC165423NextiNextgcurrent10/7/202212循環(huán)緩沖循環(huán)緩沖區(qū)的使用Getbuf過(guò)程為計(jì)算進(jìn)程和輸入進(jìn)程提供緩沖區(qū),并移動(dòng)指針Releasebuf過(guò)程當(dāng)計(jì)算進(jìn)程或輸入使用完
5、緩沖區(qū)后,調(diào)用過(guò)程將緩沖區(qū)釋放進(jìn)程同步輸入、計(jì)算進(jìn)程并行Nexti指針追趕上Nextg指針輸入進(jìn)程速度大于計(jì)算進(jìn)程,全部空緩沖區(qū)已滿,無(wú)可用緩沖區(qū),輸入進(jìn)程阻塞(系統(tǒng)受計(jì)算限制)Nextg指針追趕上Nexti指針計(jì)算進(jìn)程速度大于輸入進(jìn)程,全部緩沖區(qū)空,無(wú)可用數(shù)據(jù),計(jì)算進(jìn)程阻塞(系統(tǒng)受I/O限制)10/7/202213緩沖管理緩沖的引入單緩沖和雙緩沖循環(huán)緩沖緩沖池(Buffer Pool)10/7/202214緩沖池(Buffer Pool)緩沖池的組成專用緩沖的利用率不高,與環(huán)形緩沖不同的是緩沖池中的緩沖區(qū)是系統(tǒng)的公用資源,可供多個(gè)進(jìn)程共享,既能用于輸入,也能用于輸出緩沖區(qū)類型空(閑)緩沖區(qū)裝
6、滿輸入數(shù)據(jù)的緩沖區(qū)裝滿輸出數(shù)據(jù)的緩沖區(qū)緩沖隊(duì)列:按其使用情況空緩沖隊(duì)列emq輸入隊(duì)列inq輸出隊(duì)列outq10/7/202215緩沖池(Buffer Pool)緩沖池的組成四種工作緩沖區(qū)用于收容輸入數(shù)據(jù)的工作緩沖區(qū)(hin)用于提取輸入數(shù)據(jù)的工作緩沖區(qū)(sin)用于收容輸出數(shù)據(jù)的工作緩沖區(qū)(hout)用于提取輸出數(shù)據(jù)的工作緩沖區(qū)(sout)10/7/202216緩沖池(Buffer Pool)兩個(gè)對(duì)緩沖區(qū)操作的過(guò)程Getbuf(type),type-隊(duì)列類型 Putbuf(type,number),number-指某緩沖區(qū)隊(duì)列是臨界資源需設(shè)置互斥信號(hào)量MS,每個(gè)隊(duì)列一個(gè)MS(type)資源信號(hào)
7、量RS ,每個(gè)隊(duì)列一個(gè)RS(type)隊(duì)列操作過(guò)程Takebuf(type) :取type所指隊(duì)列隊(duì)首緩沖區(qū)Addbuf(type,number):將number所指緩沖區(qū)加到type所指隊(duì)列尾10/7/202217緩沖池(Buffer Pool) Procedure Getbuf(type) begin Wait(RS(type); Wait(MS(type); B(number):=Takebuf(type); /從隊(duì)首摘下一個(gè)緩沖區(qū) Signal(MS(type); end Procedure Putbuf(type, number) begin Wait(MS(type); Addbu
8、f(type, number); /將指定緩沖區(qū)掛在type指定隊(duì)列上 Signal(MS(type); Signal(RS(type); end 互斥信號(hào)量MS(type)資源信號(hào)量RS(type)10/7/202218緩沖池(Buffer Pool)緩沖區(qū)工作方式hinsoutsinhout收容輸入提取輸出用戶進(jìn)程提取輸入收容輸出緩沖池Getbuf(emq)Putbuf(inq,hin)Getbuf(inq)Putbuf(emp,sin)Getbuf(emq)Putbuf(outq,hout)Getbuf(outq)Putbuf(emq,sout)10/7/2022193. 緩沖區(qū)的工作方
9、式 圖 5-15 緩沖區(qū)的工作方式 1.收容輸入;2.提取輸入;3.收容輸出;4.提取輸出1. hin=getbuf(emq);putbuf(inq,hin)2. sin=getbuf(inq);計(jì)算;putbuf(emq,sin)3. hout=getbuf(emq);putbuf(outq, hout)4. sout=getbuf(outq);輸出;putbuf(emq,sout)10/7/202220設(shè)備分配設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配時(shí)應(yīng)考慮的因素設(shè)備獨(dú)立性獨(dú)占設(shè)備的分配程序SPOOLing技術(shù)10/7/202221 I/O軟件的總體設(shè)計(jì)目標(biāo)是:高效率和通用性。 通常,I/O軟件設(shè)計(jì)時(shí)
10、主要考慮以下問(wèn)題:設(shè)備無(wú)關(guān)性、統(tǒng)一命名、出錯(cuò)處理、緩沖技術(shù)、設(shè)備分配與釋放、I/O控制方式。 為了合理、高效地解決以上問(wèn)題,操作系統(tǒng)通常把I/O軟件組織成以下四個(gè)層次: I/O中斷處理程序(底層) I/O設(shè)備驅(qū)動(dòng)程序 與設(shè)備無(wú)關(guān)的操作系統(tǒng)I/O軟件 用戶層I/O軟件I/O軟件的目標(biāo)10/7/202222設(shè)備處理系統(tǒng)層次結(jié)構(gòu)10/7/202223設(shè)備處理中斷處理程序的處理過(guò)程設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)設(shè)備驅(qū)動(dòng)程序的處理過(guò)程10/7/202224設(shè)備處理系統(tǒng)層次結(jié)構(gòu)接收上層軟件發(fā)來(lái)的抽象要求read/write,轉(zhuǎn)換成具體的要求,發(fā)給設(shè)備控制器將由設(shè)備控制器發(fā)來(lái)的信號(hào)送給上層軟件10/7/20222
11、5I/O中斷處理程序中斷處理程序系統(tǒng)為每類設(shè)備設(shè)置一個(gè)中斷處理程序,它們的入口地址被存放在內(nèi)存的固定單元中, 稱為中斷向量。 當(dāng)某臺(tái)設(shè)備完成一次操作時(shí),發(fā)出中斷信號(hào),接受中斷信號(hào),暫?,F(xiàn)行進(jìn)程的執(zhí)行,根據(jù)中斷向量轉(zhuǎn)到相應(yīng)的中斷處理程序執(zhí)行。中斷處理程序的基本工作包括:保留現(xiàn)行進(jìn)程的執(zhí)行現(xiàn)場(chǎng);通知等待該操作完成的進(jìn)程;最終轉(zhuǎn)入進(jìn)程調(diào)度程序進(jìn)行重新調(diào)度。10/7/202226中斷現(xiàn)場(chǎng)保護(hù)示意圖PSW程序狀態(tài)字PC(N1)程序計(jì)數(shù)器R0Rn寄存器開(kāi)始返回用戶程序中斷服務(wù)子例程PSWPC(N1)中斷棧TTM棧指針YNN1R0Rn10/7/202227中斷處理程序的處理過(guò)程1.喚醒被阻塞的驅(qū)動(dòng)程序2.保
12、護(hù)被中斷進(jìn)程的CPU環(huán)境3.轉(zhuǎn)入相應(yīng)設(shè)備處理程序4.中斷處理5.恢復(fù)被中斷程序的現(xiàn)場(chǎng)10/7/202228設(shè)備處理中斷處理程序的處理過(guò)程設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)設(shè)備驅(qū)動(dòng)程序的處理過(guò)程10/7/202229設(shè)備處理系統(tǒng)層次結(jié)構(gòu)10/7/202230設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)設(shè)備處理程序又稱為設(shè)備驅(qū)動(dòng)程序,是I/O進(jìn)程與設(shè)備控制器之間的通信程序不論是哪種設(shè)備驅(qū)動(dòng)程序,它的功能是相同的接收用戶的I/O請(qǐng)求命令和參數(shù),并將命令中的抽象要求轉(zhuǎn)換為具體要求(I/O請(qǐng)求塊),例如,將磁盤塊號(hào)轉(zhuǎn)換為磁盤的盤面、 磁道號(hào)及扇區(qū)號(hào)檢查用戶I/O請(qǐng)求的合法性,了解I/O設(shè)備的狀態(tài),傳遞有關(guān)參數(shù),設(shè)置設(shè)備的工作方式發(fā)出
13、I/O命令并檢查設(shè)備狀態(tài),空閑則啟動(dòng)I/O完成指定的操作,忙碌則將請(qǐng)求者的請(qǐng)求塊掛到相應(yīng)設(shè)備的I/O請(qǐng)求隊(duì)列及時(shí)響應(yīng)由控制器或通道發(fā)來(lái)的中斷請(qǐng)求并處理若計(jì)算機(jī)系統(tǒng)設(shè)置有通道,則驅(qū)動(dòng)程序根據(jù)用戶的I/O請(qǐng)求,自動(dòng)地構(gòu)成通道程序10/7/202231設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)注意每類設(shè)備有一個(gè)I/O請(qǐng)求隊(duì)列,在系統(tǒng)初始化時(shí),將系統(tǒng)中所有設(shè)備的I/O請(qǐng)求隊(duì)列置為空在系統(tǒng)初啟時(shí),系統(tǒng)為每類設(shè)備創(chuàng)建一個(gè)進(jìn)程(其中的一種方式),執(zhí)行程序就是該設(shè)備的設(shè)備驅(qū)動(dòng)程序。由于系統(tǒng)初啟時(shí),相應(yīng)的I/O請(qǐng)求隊(duì)列為空,則在該隊(duì)列上睡眠一旦有I/O請(qǐng)求塊掛入,喚醒該設(shè)備驅(qū)動(dòng)進(jìn)程。它被調(diào)度到時(shí),從隊(duì)列中取出一個(gè)I/O請(qǐng)求塊,并
14、按該塊的內(nèi)容執(zhí)行一次I/O操作,發(fā)出I/O完成(或出錯(cuò))中斷信號(hào)。然后,檢查請(qǐng)求隊(duì),若為空,則進(jìn)入睡眠狀態(tài),否則,取下一個(gè)請(qǐng)求塊10/7/202232設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)在不同的系統(tǒng),設(shè)備驅(qū)動(dòng)程序的運(yùn)行方式在整個(gè)系統(tǒng)中設(shè)置一個(gè)I/O進(jìn)程,統(tǒng)一負(fù)責(zé)所有設(shè)備的驅(qū)動(dòng)工作。專門用于執(zhí)行系統(tǒng)中所有各類設(shè)備的I/O操作為每一類設(shè)備設(shè)置一個(gè)進(jìn)程,專門用于負(fù)責(zé)該類設(shè)備的驅(qū)動(dòng)工作(I/O操作) 為每臺(tái)設(shè)備建立一個(gè)設(shè)備驅(qū)動(dòng)進(jìn)程,它們分別負(fù)責(zé)專門設(shè)備的驅(qū)動(dòng)工作。同類設(shè)備的各驅(qū)動(dòng)進(jìn)程共享該類設(shè)備的設(shè)備驅(qū)動(dòng)程序。不設(shè)置專門的設(shè)備處理進(jìn)程,而只為各類設(shè)備設(shè)置相應(yīng)的設(shè)備處理程序(模塊), 供用戶進(jìn)程或系統(tǒng)進(jìn)程調(diào)用10/
15、7/202233設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)為了控制I/O傳輸,系統(tǒng)為每類設(shè)備編制設(shè)備驅(qū)動(dòng)程序設(shè)備驅(qū)動(dòng)程序是一種低級(jí)的系統(tǒng)例程。它必須和系統(tǒng)的輸入輸出硬設(shè)備相互通信。使用特權(quán)/指令來(lái)訪問(wèn)硬件,它通常是用匯編語(yǔ)言或系統(tǒng)編程語(yǔ)言寫的任務(wù):主要負(fù)責(zé)接收和分析從設(shè)備分配轉(zhuǎn)來(lái)的信息,并根據(jù)設(shè)備分配的結(jié)果,結(jié)合具體物理設(shè)備特性完成具體工作10/7/202234設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)設(shè)備驅(qū)動(dòng)程序的特點(diǎn)驅(qū)動(dòng)程序主要是指在請(qǐng)求I/O的進(jìn)程與設(shè)備控制器之間的一個(gè)通信和轉(zhuǎn)換程序驅(qū)動(dòng)程序與設(shè)備控制器和I/O設(shè)備的硬件特性緊密相關(guān), 因而對(duì)不同類型的設(shè)備應(yīng)配置不同的驅(qū)動(dòng)程序驅(qū)動(dòng)程序與I/O設(shè)備所采用的I/O控制方式緊密相
16、關(guān)由于驅(qū)動(dòng)程序與硬件緊密相關(guān), 因而其中的一部分必須用匯編語(yǔ)言書(shū)寫10/7/202235設(shè)備處理中斷處理程序的處理過(guò)程設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)設(shè)備驅(qū)動(dòng)程序的處理過(guò)程10/7/202236設(shè)備驅(qū)動(dòng)程序的處理過(guò)程將抽象要求轉(zhuǎn)換為具體要求設(shè)置控制器中的寄存器檢查I/O請(qǐng)求的合法性若請(qǐng)求的設(shè)備不支持本次的I/O請(qǐng)求,認(rèn)為是非法操作讀出和檢查設(shè)備的狀態(tài) 檢查設(shè)備是否空閑或是否就緒傳送必要的參數(shù) 如數(shù)據(jù)量、起始地址等工作方式的設(shè)置 對(duì)于有多種工作方式的設(shè)備進(jìn)行設(shè)置啟動(dòng)I/O設(shè)備驅(qū)動(dòng)進(jìn)程將自己阻塞起來(lái),直到中斷到來(lái)時(shí)將其喚醒10/7/202237設(shè)備處理中斷處理程序的處理過(guò)程設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)設(shè)備驅(qū)動(dòng)
17、程序的處理過(guò)程10/7/2022385.4.4 設(shè)備獨(dú)立性設(shè)備獨(dú)立性(Device Independence)的概念定義:是指用戶在編制程序時(shí)所使用的設(shè)備與實(shí)際使用的設(shè)備無(wú)關(guān)。即 應(yīng)用程序獨(dú)立于具體使用的物理設(shè)備為了實(shí)現(xiàn)設(shè)備獨(dú)立性而引入了邏輯設(shè)備和物理設(shè)備這兩個(gè)概念在應(yīng)用程序中, 使用邏輯設(shè)備名稱來(lái)請(qǐng)求使用某類設(shè)備;而系統(tǒng)在實(shí)際執(zhí)行時(shí), 還必須使用物理設(shè)備名稱系統(tǒng)須具有將邏輯設(shè)備名稱轉(zhuǎn)換為某物理設(shè)備名稱的功能,這非常類似于存儲(chǔ)器管理中所介紹的邏輯地址和物理地址的概念10/7/202239設(shè)備獨(dú)立性設(shè)備獨(dú)立性的優(yōu)點(diǎn)設(shè)備分配時(shí)的靈活性系統(tǒng)可將該邏輯設(shè)備類中的任一臺(tái)分配給進(jìn)程使用所有設(shè)備均占用時(shí)才阻
18、塞易于實(shí)現(xiàn)I/O重定向所謂I/O重定向,指用于I/O操作的設(shè)備可以更換,而不必改變應(yīng)用程序如調(diào)試程序時(shí)輸出到屏幕,而實(shí)際應(yīng)用時(shí)改為輸出到打印機(jī)10/7/202240設(shè)備獨(dú)立性設(shè)備獨(dú)立性軟件設(shè)備驅(qū)動(dòng)程序是一個(gè)與硬件(或設(shè)備)緊密相關(guān)的軟件。設(shè)備驅(qū)動(dòng)程序一方面可以定制以適合各種設(shè)備,另一方面也提供了一組標(biāo)準(zhǔn)接口。設(shè)備驅(qū)動(dòng)程序的作用是為內(nèi)核I/O子系統(tǒng)隱藏設(shè)備控制器之間的差異為了實(shí)現(xiàn)設(shè)備獨(dú)立性,必須在設(shè)備驅(qū)動(dòng)程序上設(shè)置一層軟件,稱為設(shè)備獨(dú)立性軟件10/7/2022412. 設(shè)備獨(dú)立性軟件 為了實(shí)現(xiàn)設(shè)備獨(dú)立性,必須再將驅(qū)動(dòng)程序之上設(shè)備一層軟件,稱為設(shè)備獨(dú)立性軟件,其主要功能可分為以下兩個(gè)方面: (1)執(zhí)行所有設(shè)備的公有操作 (2)向用戶層(或文件層)軟件提供統(tǒng)一接口。10/7/2022422. 設(shè)備獨(dú)立性軟件 1) 執(zhí)行所有設(shè)備的公有操作 對(duì)獨(dú)立設(shè)備的分配與回收; 將邏輯設(shè)備名映射為物理設(shè)備名,進(jìn)一步可以找到相應(yīng)物理設(shè)備的驅(qū)動(dòng)程序; 對(duì)設(shè)備進(jìn)行保護(hù),禁止用戶直接訪問(wèn)設(shè)備; 緩沖管理,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 讀《自卑與超越》有感
- 股權(quán)抵押合同
- 學(xué)期小結(jié)范文(8篇)
- 致客戶的新年賀信(3篇)
- 幼兒教育案例15篇
- 電氣消防維保投標(biāo)書(shū)
- 2024區(qū)塊鏈在供應(yīng)鏈管理中的應(yīng)用合同
- 2020年互聯(lián)網(wǎng)家裝行業(yè)報(bào)告
- 2024年教育培訓(xùn)服務(wù)與投資合同
- 分紅勞動(dòng)合同范例
- 新制定《公平競(jìng)爭(zhēng)審查條例》學(xué)習(xí)課件
- GB/T 44051-2024焊縫無(wú)損檢測(cè)薄壁鋼構(gòu)件相控陣超聲檢測(cè)驗(yàn)收等級(jí)
- TD/T 1060-2021 自然資源分等定級(jí)通則(正式版)
- 完整加快發(fā)展新質(zhì)生產(chǎn)力課件
- 三位數(shù)除以兩位數(shù)300題-整除-有標(biāo)準(zhǔn)答案
- 辦公室裝修工程施工方案講義
- 奇異的仿生學(xué) 知到智慧樹(shù)網(wǎng)課答案
- 大學(xué)生職業(yè)生涯規(guī)劃書(shū)藥學(xué)專業(yè)
- 中醫(yī)病案辯證分析報(bào)告
- 《馬克思主義基本原理概論》試題庫(kù)(a卷)
- 中國(guó)農(nóng)業(yè)銀行貸后管理辦法
評(píng)論
0/150
提交評(píng)論