第15講嵌入式系統(tǒng)基本知識(shí)_第1頁(yè)
第15講嵌入式系統(tǒng)基本知識(shí)_第2頁(yè)
第15講嵌入式系統(tǒng)基本知識(shí)_第3頁(yè)
第15講嵌入式系統(tǒng)基本知識(shí)_第4頁(yè)
第15講嵌入式系統(tǒng)基本知識(shí)_第5頁(yè)
已閱讀5頁(yè),還剩51頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1第十五講第十五講 基本概念及設(shè)計(jì)方法基本概念及設(shè)計(jì)方法2主要內(nèi)容主要內(nèi)容嵌入式系統(tǒng)的硬件基礎(chǔ)嵌入式系統(tǒng)的硬件基礎(chǔ)嵌入式系統(tǒng)的軟件基礎(chǔ)嵌入式系統(tǒng)的軟件基礎(chǔ)嵌入式系統(tǒng)的設(shè)計(jì)方法嵌入式系統(tǒng)的設(shè)計(jì)方法3lCISC與與RISCl影響影響CPU性能的因素性能的因素l存儲(chǔ)器系統(tǒng)存儲(chǔ)器系統(tǒng)lI/O接口接口一、嵌入式系統(tǒng)硬件基礎(chǔ)一、嵌入式系統(tǒng)硬件基礎(chǔ)4典型嵌入式系統(tǒng)基本組成硬件典型嵌入式系統(tǒng)基本組成硬件MPUMPU微處理器微處理器電源電源模塊模塊時(shí)鐘時(shí)鐘復(fù)位復(fù)位FlashFlashRAMRAMROMROMUSBUSBLCDLCDKeyboardKeyboard外圍電路外圍電路OtherOther外設(shè)外設(shè)5CI

2、SC和和RISCCISC:復(fù)雜指令集(:復(fù)雜指令集(Complex Instruction Set Computer)具有大量的指令和尋址方式具有大量的指令和尋址方式8/2原則:原則:80%的程序只使用的程序只使用20%的指令的指令大多數(shù)程序只使用少量的指令就能夠運(yùn)行。大多數(shù)程序只使用少量的指令就能夠運(yùn)行。RISC:精簡(jiǎn)指令集(:精簡(jiǎn)指令集(Reduced Instruction Set Computer)在通道中只包含最有用的指令在通道中只包含最有用的指令確保數(shù)據(jù)通道快速執(zhí)行每一條指令確保數(shù)據(jù)通道快速執(zhí)行每一條指令使使CPU硬件結(jié)構(gòu)設(shè)計(jì)變得更為簡(jiǎn)單硬件結(jié)構(gòu)設(shè)計(jì)變得更為簡(jiǎn)單 6CISC與與RI

3、SC的數(shù)據(jù)通道的數(shù)據(jù)通道IFIDREGALUMEM開(kāi)始退出IFIDALUMEMREG微操作通道開(kāi)始退出單通數(shù)據(jù)通道7影響影響CPU性能的因素:流水線、超標(biāo)量和緩存性能的因素:流水線、超標(biāo)量和緩存流水線技術(shù):幾個(gè)指令可以并行執(zhí)行流水線技術(shù):幾個(gè)指令可以并行執(zhí)行 提高了提高了CPU的運(yùn)行效率的運(yùn)行效率 內(nèi)部信息流要求通暢流動(dòng)內(nèi)部信息流要求通暢流動(dòng)譯碼取指執(zhí)行add譯碼取指執(zhí)行sub譯碼取指執(zhí)行cmp時(shí)間AddSubCmp8超標(biāo)量執(zhí)行超標(biāo)量執(zhí)行超標(biāo)量執(zhí)行:超標(biāo)量超標(biāo)量執(zhí)行:超標(biāo)量CPU采用多條流水線結(jié)構(gòu)采用多條流水線結(jié)構(gòu) 執(zhí)行1預(yù)取指令CACHE譯碼2譯碼1執(zhí)行2執(zhí)行1預(yù)取譯碼2譯碼1執(zhí)行2流水線1

4、流水線2數(shù)據(jù)9高速緩存(高速緩存(CACHE)1、為什么采用高速緩存、為什么采用高速緩存 微處理器的時(shí)鐘頻率比內(nèi)存速度提高快得多,高速緩存可以提高微處理器的時(shí)鐘頻率比內(nèi)存速度提高快得多,高速緩存可以提高內(nèi)存的平均性能。內(nèi)存的平均性能。2、高速緩存的工作原理、高速緩存的工作原理 高速緩存是一種小型、快速的存儲(chǔ)器,它保存部分主存內(nèi)容的高速緩存是一種小型、快速的存儲(chǔ)器,它保存部分主存內(nèi)容的拷貝。拷貝。 CPU高速緩存控制器CACHE主存數(shù)據(jù)數(shù)據(jù)地址10總線和總線橋總線和總線橋CPU低速設(shè)備橋數(shù)據(jù)高速總線存儲(chǔ)器高速設(shè)備高速設(shè)備低速總線11存儲(chǔ)器系統(tǒng)存儲(chǔ)器系統(tǒng)RAM:隨機(jī)存取存儲(chǔ)器,:隨機(jī)存取存儲(chǔ)器,

5、SRAM:靜態(tài)隨機(jī)存儲(chǔ)器,:靜態(tài)隨機(jī)存儲(chǔ)器, DRAM:動(dòng)態(tài)隨機(jī)存儲(chǔ)器:動(dòng)態(tài)隨機(jī)存儲(chǔ)器 1)SRAM比比DRAM快快 2)SRAM比比DRAM耗電多耗電多 3)DRAM存儲(chǔ)密度比存儲(chǔ)密度比SRAM高得多高得多 4)DRM需要周期性刷新需要周期性刷新ROM:只讀存儲(chǔ)器:只讀存儲(chǔ)器FLASH:閃存:閃存12輸入輸出接口輸入輸出接口lI/OlA/D、D/Al鍵盤(pán)鍵盤(pán)lLCDl存儲(chǔ)器接口存儲(chǔ)器接口l設(shè)備接口設(shè)備接口13二、嵌入式系統(tǒng)軟件基礎(chǔ)二、嵌入式系統(tǒng)軟件基礎(chǔ)l操作系統(tǒng)的分類(lèi)操作系統(tǒng)的分類(lèi)l嵌入式實(shí)時(shí)操作系統(tǒng)嵌入式實(shí)時(shí)操作系統(tǒng)l基本概念基本概念141. 操作系統(tǒng)的分類(lèi)操作系統(tǒng)的分類(lèi)(1)順序執(zhí)行系統(tǒng)

6、:系統(tǒng)內(nèi)只含有一個(gè)程序,獨(dú)占)順序執(zhí)行系統(tǒng):系統(tǒng)內(nèi)只含有一個(gè)程序,獨(dú)占CPU的的運(yùn)行時(shí)間,按語(yǔ)句順序執(zhí)行該程序,直至執(zhí)行完畢,另一運(yùn)行時(shí)間,按語(yǔ)句順序執(zhí)行該程序,直至執(zhí)行完畢,另一程序才能啟動(dòng)運(yùn)行。如程序才能啟動(dòng)運(yùn)行。如DOS操作系統(tǒng)。操作系統(tǒng)。(2)分時(shí)操作系統(tǒng):系統(tǒng)內(nèi)同時(shí)可以有多個(gè)程序運(yùn)行,把)分時(shí)操作系統(tǒng):系統(tǒng)內(nèi)同時(shí)可以有多個(gè)程序運(yùn)行,把CPU的時(shí)間按順序分成若干片,每個(gè)時(shí)間片內(nèi)執(zhí)行不同的的時(shí)間按順序分成若干片,每個(gè)時(shí)間片內(nèi)執(zhí)行不同的程序。如程序。如UNIX(3)實(shí)時(shí)操作系統(tǒng):系統(tǒng)內(nèi)有多個(gè)程序運(yùn)行,每個(gè)程序有)實(shí)時(shí)操作系統(tǒng):系統(tǒng)內(nèi)有多個(gè)程序運(yùn)行,每個(gè)程序有不同的優(yōu)先級(jí),只有最高優(yōu)先級(jí)的任

7、務(wù)才能占有不同的優(yōu)先級(jí),只有最高優(yōu)先級(jí)的任務(wù)才能占有CPU的控的控制權(quán)。制權(quán)。15按實(shí)時(shí)性分類(lèi)按實(shí)時(shí)性分類(lèi):l強(qiáng)實(shí)時(shí)系統(tǒng),其系統(tǒng)響應(yīng)時(shí)間在毫秒或微秒級(jí)(數(shù)控強(qiáng)實(shí)時(shí)系統(tǒng),其系統(tǒng)響應(yīng)時(shí)間在毫秒或微秒級(jí)(數(shù)控機(jī)床);機(jī)床);l一般實(shí)時(shí)系統(tǒng),其系統(tǒng)響應(yīng)時(shí)間在毫秒幾秒的數(shù)量一般實(shí)時(shí)系統(tǒng),其系統(tǒng)響應(yīng)時(shí)間在毫秒幾秒的數(shù)量級(jí)上,其實(shí)時(shí)性的要求比強(qiáng)實(shí)時(shí)系統(tǒng)要差一些(電子菜譜級(jí)上,其實(shí)時(shí)性的要求比強(qiáng)實(shí)時(shí)系統(tǒng)要差一些(電子菜譜的查詢(xún))。的查詢(xún))。l弱實(shí)時(shí)系統(tǒng),其系統(tǒng)響應(yīng)時(shí)間約為數(shù)十秒或更長(zhǎng)(工弱實(shí)時(shí)系統(tǒng),其系統(tǒng)響應(yīng)時(shí)間約為數(shù)十秒或更長(zhǎng)(工程機(jī)械)。程機(jī)械)。按軟件結(jié)構(gòu)分類(lèi)按軟件結(jié)構(gòu)分類(lèi)l循環(huán)輪詢(xún)系統(tǒng):(循環(huán)輪詢(xún)系統(tǒng)

8、:(Polling Loop)l事件驅(qū)動(dòng)系統(tǒng):(事件驅(qū)動(dòng)系統(tǒng):(Event-Driven system)162. 嵌入式實(shí)時(shí)操作系統(tǒng)嵌入式實(shí)時(shí)操作系統(tǒng)RTOS是是32位嵌入式位嵌入式CPU的軟件基礎(chǔ)的軟件基礎(chǔ)lRTOS(實(shí)時(shí)多任務(wù)操作系統(tǒng))內(nèi)核提供(實(shí)時(shí)多任務(wù)操作系統(tǒng))內(nèi)核提供CPU的管理的管理l硬件初時(shí)化,硬件初時(shí)化,MMU,定時(shí)器,中斷,定時(shí)器,中斷l(xiāng)RTOS內(nèi)核提供任務(wù),內(nèi)存管理內(nèi)核提供任務(wù),內(nèi)存管理lRTOS提供設(shè)備管理,文件和網(wǎng)絡(luò)的支持提供設(shè)備管理,文件和網(wǎng)絡(luò)的支持lRTOS提供提供C/C+,JAVA,圖形模塊等編程接口,圖形模塊等編程接口17常見(jiàn)的嵌入式操作系統(tǒng)常見(jiàn)的嵌入式操作系統(tǒng)

9、 實(shí)時(shí)嵌入式操作系統(tǒng)的種類(lèi)繁多,大體上可分為兩實(shí)時(shí)嵌入式操作系統(tǒng)的種類(lèi)繁多,大體上可分為兩種,商用型和免費(fèi)型。種,商用型和免費(fèi)型。l商用型的實(shí)操作系統(tǒng)功能穩(wěn)定、可靠,有完善的技商用型的實(shí)操作系統(tǒng)功能穩(wěn)定、可靠,有完善的技術(shù)支持和售后服務(wù),但往往價(jià)格昂貴。術(shù)支持和售后服務(wù),但往往價(jià)格昂貴。l免費(fèi)型的實(shí)時(shí)操作系統(tǒng)在價(jià)格方面具有優(yōu)勢(shì),目前免費(fèi)型的實(shí)時(shí)操作系統(tǒng)在價(jià)格方面具有優(yōu)勢(shì),目前主要有主要有LinuxLinux和和C/OSC/OS,穩(wěn)定性與服務(wù)性存在挑戰(zhàn)。,穩(wěn)定性與服務(wù)性存在挑戰(zhàn)。18VxWorksVxWorkslVxWorks操作系統(tǒng)是美國(guó)操作系統(tǒng)是美國(guó)WindRiver公司于公司于1983年設(shè)

10、計(jì)開(kāi)年設(shè)計(jì)開(kāi)發(fā)的一種嵌入式實(shí)時(shí)操作系統(tǒng)(發(fā)的一種嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS),具有良好的持),具有良好的持續(xù)發(fā)展能力、高性能的內(nèi)核以及友好的用戶(hù)開(kāi)發(fā)環(huán)境,在續(xù)發(fā)展能力、高性能的內(nèi)核以及友好的用戶(hù)開(kāi)發(fā)環(huán)境,在嵌入式實(shí)時(shí)操作系統(tǒng)領(lǐng)域牢牢占據(jù)著一席之地。嵌入式實(shí)時(shí)操作系統(tǒng)領(lǐng)域牢牢占據(jù)著一席之地。lVxWorks所具有的顯著特點(diǎn)是:所具有的顯著特點(diǎn)是: 可靠性、實(shí)時(shí)性和可裁減性。可靠性、實(shí)時(shí)性和可裁減性。 它支持多種處理器,如它支持多種處理器,如x86、i960、Sun Sparc、Motorola MC68xxx、MIPS 、POWER PC等等。等等。l 大多數(shù)的大多數(shù)的VxWorks API是

11、專(zhuān)有的,火星機(jī)器人。是專(zhuān)有的,火星機(jī)器人。19Windows EmbeddedWindows EmbeddedlWindows CE 3.0:一種針對(duì)小容量、移動(dòng)式、智能化、:一種針對(duì)小容量、移動(dòng)式、智能化、32位、連接設(shè)備的模塊化實(shí)時(shí)嵌入式操作系統(tǒng)。位、連接設(shè)備的模塊化實(shí)時(shí)嵌入式操作系統(tǒng)。l針對(duì)掌上設(shè)備、無(wú)線設(shè)備的動(dòng)態(tài)應(yīng)用程序和服務(wù)提供了針對(duì)掌上設(shè)備、無(wú)線設(shè)備的動(dòng)態(tài)應(yīng)用程序和服務(wù)提供了一種功能豐富的操作系統(tǒng)平臺(tái),一種功能豐富的操作系統(tǒng)平臺(tái), WindowsCE嵌入但不夠嵌入但不夠?qū)崟r(shí),屬于軟實(shí)時(shí)操作系統(tǒng),實(shí)時(shí),屬于軟實(shí)時(shí)操作系統(tǒng),l由于其由于其Windows背景,界面比較統(tǒng)一認(rèn)可。背景,界面

12、比較統(tǒng)一認(rèn)可。l操作系統(tǒng)的基本內(nèi)核需要至少操作系統(tǒng)的基本內(nèi)核需要至少200K的的ROM。 20Palm OSPalm OSlPalm OS是著名的網(wǎng)絡(luò)設(shè)備制造商是著名的網(wǎng)絡(luò)設(shè)備制造商3COM旗下的旗下的Palm Computing掌上電腦公司的產(chǎn)品。掌上電腦公司的產(chǎn)品。l3COM、CISCO競(jìng)爭(zhēng)競(jìng)爭(zhēng)lPalm OS在在PDA市場(chǎng)上占有很大的市場(chǎng)份額,市場(chǎng)上占有很大的市場(chǎng)份額, Palm OS的市場(chǎng)份額占到將近的市場(chǎng)份額占到將近90%,最近下降,最近下降70,目前主要與,目前主要與WIN CE進(jìn)行激烈競(jìng)爭(zhēng)。進(jìn)行激烈競(jìng)爭(zhēng)。 21QNXQNXl加拿大加拿大QNX公司的產(chǎn)品。公司的產(chǎn)品。lQNX是在是

13、在X86體系上面開(kāi)發(fā)出來(lái)的,這和別的體系上面開(kāi)發(fā)出來(lái)的,這和別的RTOS不一樣不一樣,別的好多,別的好多RTOS都是從都是從68K的的CPU上面開(kāi)發(fā)成熟,然后再上面開(kāi)發(fā)成熟,然后再移植到移植到X86體系上面來(lái)的。體系上面來(lái)的。lQNX是一個(gè)實(shí)時(shí)的、可擴(kuò)充的操作系統(tǒng),它部分遵循是一個(gè)實(shí)時(shí)的、可擴(kuò)充的操作系統(tǒng),它部分遵循POSIX相關(guān)標(biāo)準(zhǔn),由于相關(guān)標(biāo)準(zhǔn),由于QNX具有強(qiáng)大的圖形界面功能,因具有強(qiáng)大的圖形界面功能,因此很適合作為機(jī)頂盒、手持設(shè)備(手掌電腦、手機(jī))、此很適合作為機(jī)頂盒、手持設(shè)備(手掌電腦、手機(jī))、GPS設(shè)備的實(shí)時(shí)操作系統(tǒng)使用。設(shè)備的實(shí)時(shí)操作系統(tǒng)使用。22嵌入式嵌入式LinuxLinux

14、l嵌入式系統(tǒng)越來(lái)越追求數(shù)字化、網(wǎng)絡(luò)化和智能化。因此原來(lái)嵌入式系統(tǒng)越來(lái)越追求數(shù)字化、網(wǎng)絡(luò)化和智能化。因此原來(lái)在某些設(shè)備或領(lǐng)域中占主導(dǎo)地位的軟件系統(tǒng)越來(lái)越難以為繼在某些設(shè)備或領(lǐng)域中占主導(dǎo)地位的軟件系統(tǒng)越來(lái)越難以為繼,整個(gè)系統(tǒng)必須是開(kāi)放的、提供標(biāo)準(zhǔn)的,整個(gè)系統(tǒng)必須是開(kāi)放的、提供標(biāo)準(zhǔn)的API,并且能夠方便,并且能夠方便地與眾多第三方的軟硬件溝通。地與眾多第三方的軟硬件溝通。lLinux是開(kāi)放源碼的,不存在黑箱技術(shù),遍布全球的眾多是開(kāi)放源碼的,不存在黑箱技術(shù),遍布全球的眾多Linux愛(ài)好者又是愛(ài)好者又是Linux開(kāi)發(fā)的強(qiáng)大技術(shù)后盾。開(kāi)發(fā)的強(qiáng)大技術(shù)后盾。lLinux的內(nèi)核小、功能強(qiáng)大、運(yùn)行穩(wěn)定、系統(tǒng)健壯、

15、效率高的內(nèi)核小、功能強(qiáng)大、運(yùn)行穩(wěn)定、系統(tǒng)健壯、效率高,易于定制剪裁,在價(jià)格上極具競(jìng)爭(zhēng)力。,易于定制剪裁,在價(jià)格上極具競(jìng)爭(zhēng)力。lLinux不僅支持不僅支持x86 CPU,還可以支持其他數(shù)十種,還可以支持其他數(shù)十種CPU芯片。芯片。23 l嵌入式嵌入式Linux(Embedded Linux)是指對(duì)是指對(duì)Linux經(jīng)過(guò)小型經(jīng)過(guò)小型化裁剪后,能夠固化在容量只有幾百化裁剪后,能夠固化在容量只有幾百K字節(jié)或幾兆字字節(jié)或幾兆字節(jié)的存儲(chǔ)器芯片或單片機(jī)中,應(yīng)用于特定嵌入式場(chǎng)合節(jié)的存儲(chǔ)器芯片或單片機(jī)中,應(yīng)用于特定嵌入式場(chǎng)合的專(zhuān)用的專(zhuān)用Linux操作系統(tǒng)。嵌入式操作系統(tǒng)。嵌入式Linux的開(kāi)發(fā)和研究是的開(kāi)發(fā)和研究

16、是目前操作系統(tǒng)領(lǐng)域的一個(gè)熱點(diǎn)。主要有目前操作系統(tǒng)領(lǐng)域的一個(gè)熱點(diǎn)。主要有RTLinux和和 CLinuxlLinux在嵌入式領(lǐng)域異軍突起不過(guò)是近兩年的事情,在嵌入式領(lǐng)域異軍突起不過(guò)是近兩年的事情,過(guò)去的一年中有過(guò)去的一年中有13%的用戶(hù)已經(jīng)開(kāi)始使用嵌入式的用戶(hù)已經(jīng)開(kāi)始使用嵌入式Linux系統(tǒng)進(jìn)行開(kāi)發(fā)工作;有系統(tǒng)進(jìn)行開(kāi)發(fā)工作;有52%的用戶(hù)決定在未來(lái)的用戶(hù)決定在未來(lái)24個(gè)月內(nèi)開(kāi)始使用個(gè)月內(nèi)開(kāi)始使用Linux作為嵌入式操作系統(tǒng)的開(kāi)發(fā)作為嵌入式操作系統(tǒng)的開(kāi)發(fā)原型。原型。 嵌入式嵌入式Linux及應(yīng)用及應(yīng)用24RTEMSlRTEMS是前美國(guó)軍方研制的嵌入式系統(tǒng)是前美國(guó)軍方研制的嵌入式系統(tǒng), 最早用于美國(guó)

17、最早用于美國(guó)國(guó)防系統(tǒng),國(guó)防系統(tǒng),l早期的名稱(chēng)為實(shí)時(shí)導(dǎo)彈系統(tǒng)(早期的名稱(chēng)為實(shí)時(shí)導(dǎo)彈系統(tǒng)(Real Time Executive for Missile Systems)l后來(lái)改名為實(shí)時(shí)軍用系統(tǒng)(后來(lái)改名為實(shí)時(shí)軍用系統(tǒng)(Real Time Executive for Military Systems)l目前的全稱(chēng)是目前的全稱(chēng)是 (Real Time Executive for Multiprocessor Systems) ,他,他的特點(diǎn)是非常的穩(wěn)定,而且速度快。現(xiàn)在是一個(gè)開(kāi)源項(xiàng)的特點(diǎn)是非常的穩(wěn)定,而且速度快?,F(xiàn)在是一個(gè)開(kāi)源項(xiàng)目的目的RTOS。 25代碼的臨界段代碼的臨界段l代碼的臨界段也稱(chēng)為臨界

18、區(qū),指處理時(shí)不可分割的代碼。代碼的臨界段也稱(chēng)為臨界區(qū),指處理時(shí)不可分割的代碼。一旦這部分代碼開(kāi)始執(zhí)行,則不允許任何中斷打入。一旦這部分代碼開(kāi)始執(zhí)行,則不允許任何中斷打入。l在進(jìn)入臨界區(qū)之前要關(guān)中斷,而臨界區(qū)代碼執(zhí)行完以后要在進(jìn)入臨界區(qū)之前要關(guān)中斷,而臨界區(qū)代碼執(zhí)行完以后要立即開(kāi)中斷(在任務(wù)切換時(shí),地址、指令、數(shù)據(jù)等寄存器立即開(kāi)中斷(在任務(wù)切換時(shí),地址、指令、數(shù)據(jù)等寄存器堆棧保護(hù))。堆棧保護(hù))。3. 基本概念基本概念26前后臺(tái)系統(tǒng)(后臺(tái)循環(huán)、前臺(tái)中斷)前后臺(tái)系統(tǒng)(后臺(tái)循環(huán)、前臺(tái)中斷)ISRISR后臺(tái)后臺(tái) 前臺(tái)前臺(tái)ISR時(shí)間時(shí)間27l資源:任何為任務(wù)所占用的實(shí)體都可稱(chēng)為資源。資源可資源:任何為任務(wù)

19、所占用的實(shí)體都可稱(chēng)為資源。資源可以使輸入以使輸入/ /輸出設(shè)備,例如打印機(jī)、鍵盤(pán)及顯示器;也輸出設(shè)備,例如打印機(jī)、鍵盤(pán)及顯示器;也可以是一個(gè)變量、一個(gè)結(jié)構(gòu)或一個(gè)數(shù)組等??梢允且粋€(gè)變量、一個(gè)結(jié)構(gòu)或一個(gè)數(shù)組等。l共享資源:可以被一個(gè)以上任務(wù)使用的資源叫做共享資共享資源:可以被一個(gè)以上任務(wù)使用的資源叫做共享資源。為了防止數(shù)據(jù)被破壞,每個(gè)任務(wù)在與共享資源打交源。為了防止數(shù)據(jù)被破壞,每個(gè)任務(wù)在與共享資源打交道時(shí),必須獨(dú)占該資源,這叫做互斥(道時(shí),必須獨(dú)占該資源,這叫做互斥(mutual mutual exclusionexclusion)。)。資源,共享資源資源,共享資源28多任務(wù)多任務(wù)CPUCPU寄存

20、器寄存器任務(wù)任務(wù)控制控制塊塊1 1任務(wù)任務(wù)控制控制塊塊2 2任務(wù)任務(wù)控制控制塊塊n n休眠、就緒、運(yùn)行、掛起、被中斷休眠、就緒、運(yùn)行、掛起、被中斷任務(wù)任務(wù)1 1任務(wù)任務(wù)2 2任務(wù)任務(wù)n nCPUCPU寄存器寄存器29一個(gè)任務(wù),也稱(chēng)作一個(gè)線程,是一個(gè)簡(jiǎn)單的運(yùn)行一個(gè)任務(wù),也稱(chēng)作一個(gè)線程,是一個(gè)簡(jiǎn)單的運(yùn)行程序。每個(gè)任務(wù)都是整個(gè)應(yīng)用的某一部分,每個(gè)任務(wù)被程序。每個(gè)任務(wù)都是整個(gè)應(yīng)用的某一部分,每個(gè)任務(wù)被賦予一定的優(yōu)先級(jí),賦予一定的優(yōu)先級(jí), 有它自己的一套有它自己的一套CPU寄存器和自己寄存器和自己的??臻g。的棧空間。每個(gè)任務(wù)都是一個(gè)無(wú)限的循環(huán),都可能處在下面每個(gè)任務(wù)都是一個(gè)無(wú)限的循環(huán),都可能處在下面五個(gè)

21、狀態(tài)之一:五個(gè)狀態(tài)之一:l休眠態(tài)休眠態(tài)l就緒態(tài)就緒態(tài)l運(yùn)行態(tài)運(yùn)行態(tài)l掛起態(tài)掛起態(tài)l被中斷態(tài)被中斷態(tài)任務(wù)任務(wù)30l當(dāng)多任務(wù)內(nèi)核決定運(yùn)行另外的任務(wù)時(shí),它保存正在運(yùn)行當(dāng)多任務(wù)內(nèi)核決定運(yùn)行另外的任務(wù)時(shí),它保存正在運(yùn)行任務(wù)的當(dāng)前狀態(tài)(即任務(wù)的當(dāng)前狀態(tài)(即CPUCPU寄存器中的全部?jī)?nèi)容)到該任寄存器中的全部?jī)?nèi)容)到該任務(wù)自己的棧區(qū)中,入棧工作完成后,把下一個(gè)將運(yùn)行的務(wù)自己的棧區(qū)中,入棧工作完成后,把下一個(gè)將運(yùn)行的任務(wù)的當(dāng)前狀況從該任務(wù)的棧中重新裝入任務(wù)的當(dāng)前狀況從該任務(wù)的棧中重新裝入CPUCPU的寄存器的寄存器,并開(kāi)始下一個(gè)任務(wù)的運(yùn)行,這一過(guò)程叫做任務(wù)切換。,并開(kāi)始下一個(gè)任務(wù)的運(yùn)行,這一過(guò)程叫做任務(wù)切換。

22、任務(wù)切換任務(wù)切換31內(nèi)核(內(nèi)核(Kernel)與調(diào)度(與調(diào)度(Scheduler)l多任務(wù)系統(tǒng)中,內(nèi)核負(fù)責(zé)管理各個(gè)任務(wù),或者說(shuō)為每個(gè)任多任務(wù)系統(tǒng)中,內(nèi)核負(fù)責(zé)管理各個(gè)任務(wù),或者說(shuō)為每個(gè)任務(wù)分配務(wù)分配CPU時(shí)間,并且負(fù)責(zé)任務(wù)之間的通信。時(shí)間,并且負(fù)責(zé)任務(wù)之間的通信。l內(nèi)核提供的基本服務(wù)是任務(wù)切換。內(nèi)核本身也增加了應(yīng)用內(nèi)核提供的基本服務(wù)是任務(wù)切換。內(nèi)核本身也增加了應(yīng)用程序的額外負(fù)荷,代碼空間增加程序的額外負(fù)荷,代碼空間增加ROM用量,內(nèi)核本身的用量,內(nèi)核本身的數(shù)據(jù)結(jié)構(gòu)增加了數(shù)據(jù)結(jié)構(gòu)增加了RAM的用量。內(nèi)核本身對(duì)的用量。內(nèi)核本身對(duì)CPU的占用時(shí)的占用時(shí)間一般在間一般在2到到5個(gè)百分點(diǎn)之間。個(gè)百分點(diǎn)之間

23、。l調(diào)度(調(diào)度(Scheduler)是內(nèi)核的主要職責(zé)之一,就是要決定)是內(nèi)核的主要職責(zé)之一,就是要決定該輪到哪個(gè)任務(wù)運(yùn)行了。多數(shù)實(shí)時(shí)內(nèi)核是基于優(yōu)先級(jí)調(diào)度該輪到哪個(gè)任務(wù)運(yùn)行了。多數(shù)實(shí)時(shí)內(nèi)核是基于優(yōu)先級(jí)調(diào)度法的。每個(gè)任務(wù)根據(jù)其重要程度的不同被賦予一定的優(yōu)先法的。每個(gè)任務(wù)根據(jù)其重要程度的不同被賦予一定的優(yōu)先級(jí)?;趦?yōu)先級(jí)的調(diào)度法指,級(jí)?;趦?yōu)先級(jí)的調(diào)度法指,CPU總是讓處在就緒態(tài)的優(yōu)總是讓處在就緒態(tài)的優(yōu)先級(jí)最高的任務(wù)先運(yùn)行。先級(jí)最高的任務(wù)先運(yùn)行。32不可剝奪型內(nèi)核不可剝奪型內(nèi)核(Non-Preemptive kernel)l不可剝奪型(不可剝奪型(non-preemptive)內(nèi)核要求每個(gè)任務(wù)主動(dòng))

24、內(nèi)核要求每個(gè)任務(wù)主動(dòng)放棄放棄CPU的使用權(quán)。不可剝奪型調(diào)度法也稱(chēng)作合作型多任務(wù)(的使用權(quán)。不可剝奪型調(diào)度法也稱(chēng)作合作型多任務(wù)(cooperative multitasking),各個(gè)任務(wù)彼此合作共享一個(gè)),各個(gè)任務(wù)彼此合作共享一個(gè)CPU。中斷服務(wù)可以使一個(gè)高優(yōu)先級(jí)的任務(wù)由掛起狀態(tài)變?yōu)榫椭袛喾?wù)可以使一個(gè)高優(yōu)先級(jí)的任務(wù)由掛起狀態(tài)變?yōu)榫途w狀態(tài)。但中斷服務(wù)以后控制權(quán)還是回到原來(lái)被中斷了的那個(gè)緒狀態(tài)。但中斷服務(wù)以后控制權(quán)還是回到原來(lái)被中斷了的那個(gè)任務(wù),直到改任務(wù)主動(dòng)放棄任務(wù),直到改任務(wù)主動(dòng)放棄CPU的使用權(quán)時(shí),那個(gè)高優(yōu)先級(jí)的的使用權(quán)時(shí),那個(gè)高優(yōu)先級(jí)的任務(wù)才能獲得任務(wù)才能獲得CPU的使用權(quán)。的使用權(quán)。不

25、可剝奪型內(nèi)核的一個(gè)特點(diǎn)是幾乎不需要使用信號(hào)量保不可剝奪型內(nèi)核的一個(gè)特點(diǎn)是幾乎不需要使用信號(hào)量保護(hù)共享數(shù)據(jù)。運(yùn)行著的任務(wù)占有護(hù)共享數(shù)據(jù)。運(yùn)行著的任務(wù)占有CPU,而不必?fù)?dān)心被別的任務(wù),而不必?fù)?dān)心被別的任務(wù)搶占。搶占。不可剝奪型內(nèi)核的不可剝奪型內(nèi)核的最大缺陷最大缺陷在于其響應(yīng)高優(yōu)先級(jí)的任務(wù)在于其響應(yīng)高優(yōu)先級(jí)的任務(wù)慢,任務(wù)已經(jīng)進(jìn)入就緒態(tài),但還不能運(yùn)行,也許要等很長(zhǎng)時(shí)間慢,任務(wù)已經(jīng)進(jìn)入就緒態(tài),但還不能運(yùn)行,也許要等很長(zhǎng)時(shí)間,直到當(dāng)前運(yùn)行著的任務(wù)釋放,直到當(dāng)前運(yùn)行著的任務(wù)釋放CPU。內(nèi)核的任務(wù)級(jí)響應(yīng)時(shí)間是。內(nèi)核的任務(wù)級(jí)響應(yīng)時(shí)間是不確定的不確定的33不可剝奪型內(nèi)核不可剝奪型內(nèi)核(Non-Preemptive

26、 kernel)低優(yōu)先級(jí)任務(wù)低優(yōu)先級(jí)任務(wù)ISR高優(yōu)先級(jí)任務(wù)高優(yōu)先級(jí)任務(wù)(1)(2)(3)(4)(5)(6)(7)中斷服務(wù)程序使中斷服務(wù)程序使高優(yōu)先級(jí)任務(wù)就緒高優(yōu)先級(jí)任務(wù)就緒低優(yōu)先級(jí)任務(wù)釋放低優(yōu)先級(jí)任務(wù)釋放CPU使用權(quán)使用權(quán)TIME34當(dāng)系統(tǒng)響應(yīng)時(shí)間很重要時(shí),要使用可剝奪型(當(dāng)系統(tǒng)響應(yīng)時(shí)間很重要時(shí),要使用可剝奪型(preemptive)內(nèi)核。最高優(yōu)先級(jí)的任務(wù)一旦就緒,總)內(nèi)核。最高優(yōu)先級(jí)的任務(wù)一旦就緒,總能得到能得到CPU的控制權(quán)。的控制權(quán)。當(dāng)一個(gè)運(yùn)行著的任務(wù)使一個(gè)比它優(yōu)先級(jí)高的任務(wù)當(dāng)一個(gè)運(yùn)行著的任務(wù)使一個(gè)比它優(yōu)先級(jí)高的任務(wù)進(jìn)入了就緒態(tài),當(dāng)前任務(wù)的進(jìn)入了就緒態(tài),當(dāng)前任務(wù)的CPU使用權(quán)就被剝奪了,

27、使用權(quán)就被剝奪了,或者說(shuō)被掛起了,那個(gè)高優(yōu)先級(jí)的任務(wù)立刻得到了或者說(shuō)被掛起了,那個(gè)高優(yōu)先級(jí)的任務(wù)立刻得到了CPU的控制權(quán)。的控制權(quán)。使用占先式內(nèi)核時(shí),應(yīng)用程序不應(yīng)直接使用不可使用占先式內(nèi)核時(shí),應(yīng)用程序不應(yīng)直接使用不可重入型函數(shù)。如果調(diào)入不可重入型函數(shù)時(shí),低優(yōu)先級(jí)重入型函數(shù)。如果調(diào)入不可重入型函數(shù)時(shí),低優(yōu)先級(jí)的任務(wù)的任務(wù)CPU的使用權(quán)被高優(yōu)先級(jí)任務(wù)剝奪,的使用權(quán)被高優(yōu)先級(jí)任務(wù)剝奪,不可重入不可重入型函數(shù)中的數(shù)據(jù)有可能被破壞。型函數(shù)中的數(shù)據(jù)有可能被破壞??蓜儕Z型內(nèi)核(可剝奪型內(nèi)核(preemptive kernel)35不可剝奪型內(nèi)核(不可剝奪型內(nèi)核(preemptive kernel)低優(yōu)先級(jí)任

28、務(wù)低優(yōu)先級(jí)任務(wù)ISR高優(yōu)先級(jí)任務(wù)高優(yōu)先級(jí)任務(wù)(1)(2)(3)(4)(5)(6)中斷服務(wù)程序使中斷服務(wù)程序使高優(yōu)先級(jí)任務(wù)就緒高優(yōu)先級(jí)任務(wù)就緒高優(yōu)先級(jí)任務(wù)得到高優(yōu)先級(jí)任務(wù)得到CPU使用權(quán)使用權(quán)TIME36可以被一個(gè)以上的任務(wù)調(diào)用,而不必?fù)?dān)心數(shù)據(jù)的破壞??梢员灰粋€(gè)以上的任務(wù)調(diào)用,而不必?fù)?dān)心數(shù)據(jù)的破壞??芍厝胄秃瘮?shù)任何時(shí)候都可以被中斷,一段時(shí)間以后又可以可重入型函數(shù)任何時(shí)候都可以被中斷,一段時(shí)間以后又可以運(yùn)行,而相應(yīng)數(shù)據(jù)不會(huì)丟失??芍厝胄秃瘮?shù)或者只使用局部運(yùn)行,而相應(yīng)數(shù)據(jù)不會(huì)丟失。可重入型函數(shù)或者只使用局部變量,即變量保存在變量,即變量保存在CPU寄存器中或堆棧中。寄存器中或堆棧中??芍厝胄秃瘮?shù)可重

29、入型函數(shù)一個(gè)不可重入型函數(shù)的例子一個(gè)不可重入型函數(shù)的例子int Temp;Void swap (int *x,int*y)Temp=*x;*X=*Y;*y=Temp;一個(gè)可重入型函數(shù)的例子一個(gè)可重入型函數(shù)的例子Void swap (int *x,int*y)int Temp;Temp=*x;*X=*Y;*y=Temp;37任務(wù)優(yōu)先級(jí)任務(wù)優(yōu)先級(jí)l靜態(tài)優(yōu)先級(jí)靜態(tài)優(yōu)先級(jí) 應(yīng)用程序執(zhí)行過(guò)程中諸任務(wù)優(yōu)先級(jí)不變,則稱(chēng)之為靜應(yīng)用程序執(zhí)行過(guò)程中諸任務(wù)優(yōu)先級(jí)不變,則稱(chēng)之為靜態(tài)優(yōu)先級(jí)。在靜態(tài)優(yōu)先級(jí)系統(tǒng)中,諸任務(wù)以及它們的時(shí)態(tài)優(yōu)先級(jí)。在靜態(tài)優(yōu)先級(jí)系統(tǒng)中,諸任務(wù)以及它們的時(shí)間約束在程序編譯時(shí)是已知的間約束在程序編譯時(shí)

30、是已知的 l動(dòng)態(tài)優(yōu)先級(jí)動(dòng)態(tài)優(yōu)先級(jí) 應(yīng)用程序執(zhí)行過(guò)程中,任務(wù)的優(yōu)先級(jí)是可變的,則稱(chēng)應(yīng)用程序執(zhí)行過(guò)程中,任務(wù)的優(yōu)先級(jí)是可變的,則稱(chēng)之為動(dòng)態(tài)優(yōu)先級(jí)。實(shí)時(shí)內(nèi)核應(yīng)當(dāng)避免出現(xiàn)優(yōu)先級(jí)反轉(zhuǎn)問(wèn)之為動(dòng)態(tài)優(yōu)先級(jí)。實(shí)時(shí)內(nèi)核應(yīng)當(dāng)避免出現(xiàn)優(yōu)先級(jí)反轉(zhuǎn)問(wèn)題。題。 38優(yōu)先級(jí)反轉(zhuǎn)優(yōu)先級(jí)反轉(zhuǎn)Task 1 (H)Task 2 (M)Task 3 (L)Priority InversionTask 3 Get SemaphoreTask 1 Preempts Task 3Task 1 Tries to get SemaphoreTask 2 Preempts Task 3Task 3 ResumesTask 3 Releases t

31、he Semaphore( (1 1) )( (2 2) )( (3 3) )( (4 4) )( (5 5) )( (6 6) )( (7 7) )( (8 8) )( (9 9) )( (1 10 0) )( (1 11 1) )( (1 12 2) )39互斥條件互斥條件l實(shí)現(xiàn)任務(wù)間通信最簡(jiǎn)便的方法是使用共享數(shù)據(jù)結(jié)構(gòu),但實(shí)現(xiàn)任務(wù)間通信最簡(jiǎn)便的方法是使用共享數(shù)據(jù)結(jié)構(gòu),但必須保證每個(gè)任務(wù)在處理共享數(shù)據(jù)時(shí)的排他性,以避免必須保證每個(gè)任務(wù)在處理共享數(shù)據(jù)時(shí)的排他性,以避免競(jìng)爭(zhēng)和數(shù)據(jù)的破壞。競(jìng)爭(zhēng)和數(shù)據(jù)的破壞。l與共享資源打交道時(shí),使之滿(mǎn)足互斥條件最一般的方法與共享資源打交道時(shí),使之滿(mǎn)足互斥條件最一般

32、的方法有:有:l關(guān)中斷關(guān)中斷l(xiāng)使用測(cè)試并置位指令使用測(cè)試并置位指令l禁止做任務(wù)切換禁止做任務(wù)切換l利用信號(hào)量利用信號(hào)量40信號(hào)量信號(hào)量(Semaphore)l信號(hào)量是信號(hào)量是60年代中期年代中期Edgser Dijkstra 發(fā)明的。信號(hào)量實(shí)發(fā)明的。信號(hào)量實(shí)際上是一種約定機(jī)制,在多任務(wù)內(nèi)核中普遍使用際上是一種約定機(jī)制,在多任務(wù)內(nèi)核中普遍使用.信號(hào)信號(hào)量用于量用于:u控制共享資源的使用權(quán)控制共享資源的使用權(quán)(滿(mǎn)足互斥條件滿(mǎn)足互斥條件)u標(biāo)志某事件的發(fā)生標(biāo)志某事件的發(fā)生u使兩個(gè)任務(wù)的行為同步使兩個(gè)任務(wù)的行為同步l信號(hào)與信號(hào)量在英文中都叫做信號(hào)與信號(hào)量在英文中都叫做Semaphore,并不加以區(qū),并

33、不加以區(qū)分,而說(shuō)它有兩種類(lèi)型,二進(jìn)制型分,而說(shuō)它有兩種類(lèi)型,二進(jìn)制型(binary)和計(jì)數(shù)器型和計(jì)數(shù)器型(counting) 41二進(jìn)制信號(hào)量二進(jìn)制信號(hào)量42計(jì)數(shù)式信號(hào)量計(jì)數(shù)式信號(hào)量43死鎖死鎖(或抱死或抱死) Deadlock 死鎖也稱(chēng)作抱死,指兩個(gè)任務(wù)無(wú)限期地互相等待對(duì)方控制死鎖也稱(chēng)作抱死,指兩個(gè)任務(wù)無(wú)限期地互相等待對(duì)方控制著的資源。設(shè)任務(wù)著的資源。設(shè)任務(wù)T1正獨(dú)享資源正獨(dú)享資源R1,任務(wù),任務(wù)T2在獨(dú)享資源在獨(dú)享資源R2,而此時(shí),而此時(shí)T1又要獨(dú)享又要獨(dú)享R2,T2也要獨(dú)享也要獨(dú)享R1,于是哪個(gè)任,于是哪個(gè)任務(wù)都沒(méi)法繼續(xù)執(zhí)行了,發(fā)生了死鎖。最簡(jiǎn)單的防止發(fā)生死務(wù)都沒(méi)法繼續(xù)執(zhí)行了,發(fā)生了死鎖

34、。最簡(jiǎn)單的防止發(fā)生死鎖的方法是讓每個(gè)任務(wù)都:鎖的方法是讓每個(gè)任務(wù)都:l先得到全部需要的資源再做下一步的工作先得到全部需要的資源再做下一步的工作l用同樣的順序去申請(qǐng)多個(gè)資源用同樣的順序去申請(qǐng)多個(gè)資源l釋放資源時(shí)使用相反的順序釋放資源時(shí)使用相反的順序 44任務(wù)同步任務(wù)同步45l全程變量或共享內(nèi)存全程變量或共享內(nèi)存l郵箱或消息隊(duì)列郵箱或消息隊(duì)列 任務(wù)間的通信任務(wù)間的通信(Intertask Communication)46全程變量全程變量l用全程變量時(shí),必須保證每個(gè)任務(wù)或中斷服務(wù)程序獨(dú)享用全程變量時(shí),必須保證每個(gè)任務(wù)或中斷服務(wù)程序獨(dú)享該變量。該變量。l中斷服務(wù)中保證獨(dú)享的唯一辦法是關(guān)中斷。中斷服務(wù)中

35、保證獨(dú)享的唯一辦法是關(guān)中斷。l如果兩個(gè)任務(wù)共享某變量,各任務(wù)實(shí)現(xiàn)獨(dú)享該變量的辦如果兩個(gè)任務(wù)共享某變量,各任務(wù)實(shí)現(xiàn)獨(dú)享該變量的辦法可以是關(guān)中斷再開(kāi)中斷,或使用信號(hào)量法可以是關(guān)中斷再開(kāi)中斷,或使用信號(hào)量 47消息郵箱消息郵箱通過(guò)內(nèi)核服務(wù)可以給任務(wù)發(fā)送消息。典型的消息郵箱也稱(chēng)作交換消息,即用一個(gè)指針型變量,一個(gè)任務(wù)或一個(gè)中斷子程序通過(guò)內(nèi)核服務(wù),可以把一則消息(一個(gè)指針)放到郵箱里去。同樣,一個(gè)或多個(gè)任務(wù)通過(guò)內(nèi)核服務(wù),可以接收這則消息。發(fā)送消息的任務(wù)和接收消息的任務(wù)約定,該指針指向的內(nèi)容就是那則消息。48消息隊(duì)列消息隊(duì)列T TA AS SK KI IS SR RP PO OS ST TP PE EN

36、ND DQ Qu ue eu ue eI In nt te er rr ru up pt t010消息隊(duì)列用于給任務(wù)發(fā)消息。消息隊(duì)列實(shí)際上是郵箱陣列。通過(guò)內(nèi)核提供的服務(wù),任務(wù)或中斷服務(wù)子程序可以將一則消息放入消息隊(duì)列,一個(gè)或多個(gè)任務(wù)可以通過(guò)內(nèi)核服務(wù)從消息隊(duì)列中得到消息。49嵌入式系統(tǒng)的軟/硬件框架機(jī)械裝置機(jī)械裝置嵌入式嵌入式微處理器微處理器SDRAMSDRAMROMROMI/OI/OA/DA/DD/AD/A人機(jī)交互接口人機(jī)交互接口通用接口通用接口實(shí)時(shí)操作系統(tǒng)(實(shí)時(shí)操作系統(tǒng)(RTOS)RTOS)圖形用戶(hù)圖形用戶(hù)接口接口BSP/HAL 硬件抽象層/板極支持包BSP/HAL 硬件抽象層/板極支持包任務(wù)管理任務(wù)管理文件系統(tǒng)文件系統(tǒng)應(yīng)用程序應(yīng)用程序嵌入式計(jì)算機(jī)系統(tǒng)嵌入式計(jì)算機(jī)系統(tǒng)傳感器1傳感器1傳感器2傳感器2傳感器N傳感器N.驅(qū)動(dòng)器1驅(qū)動(dòng)器1驅(qū)動(dòng)器2驅(qū)動(dòng)器2驅(qū)動(dòng)器N驅(qū)動(dòng)器N.硬件層硬件層軟件層軟件層中間層中間層功能層功能層被控對(duì)象被控對(duì)象50嵌入式系統(tǒng)設(shè)計(jì)步驟l系統(tǒng)需求分析:確定設(shè)計(jì)任務(wù)和設(shè)計(jì)目標(biāo),并提煉出設(shè)計(jì)規(guī)系統(tǒng)需求分析:確定設(shè)計(jì)任務(wù)和設(shè)計(jì)目標(biāo),并提煉出設(shè)計(jì)規(guī)格說(shuō)明書(shū),作為正式設(shè)計(jì)指導(dǎo)和驗(yàn)收的標(biāo)準(zhǔn)。系統(tǒng)的需求一格說(shuō)明書(shū),作為正式設(shè)計(jì)指導(dǎo)和驗(yàn)收的標(biāo)準(zhǔn)。系統(tǒng)的需求一般分功能性需求和非功能性需求兩方面。功能性需求是系統(tǒng)般分功能性需求和非功能性需求兩方面。功能性

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論