嵌入式可配置實(shí)時(shí)操作系統(tǒng)軟件開發(fā)_第1頁
嵌入式可配置實(shí)時(shí)操作系統(tǒng)軟件開發(fā)_第2頁
嵌入式可配置實(shí)時(shí)操作系統(tǒng)軟件開發(fā)_第3頁
嵌入式可配置實(shí)時(shí)操作系統(tǒng)軟件開發(fā)_第4頁
嵌入式可配置實(shí)時(shí)操作系統(tǒng)軟件開發(fā)_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

嵌入式可配置實(shí)時(shí)操作系統(tǒng)軟件開發(fā)第1頁,課件共45頁,創(chuàng)作于2023年2月

Use

embeddedOS,why?2第2頁,課件共45頁,創(chuàng)作于2023年2月Use

embeddedOS,why?前后臺(tái)系統(tǒng)or超循環(huán)系統(tǒng)3第3頁,課件共45頁,創(chuàng)作于2023年2月Use

embeddedOS,why?多任務(wù)調(diào)度系統(tǒng)4第4頁,課件共45頁,創(chuàng)作于2023年2月常見的嵌入式OS系統(tǒng)

Linux、uClinux、

WinCE、PalmOS,

Symbian、VxWorks、pSOS、

eCos、uCOS-II、Nucleus、

ThreadX、Rtems、QNX、

INTEGRITY、OSE、

CExecutive...5第5頁,課件共45頁,創(chuàng)作于2023年2月eCosbasedproductsshowcase6第6頁,課件共45頁,創(chuàng)作于2023年2月ProcessorArchitecturesupportedbyeCosARM

(ARM720T

,ARM7EJ-S

,ARM7TDMI

,ARM7TDMI-S

,...

/help/topic/com.arm.doc.faqs/ki7SKtKijypFF1.html,ARM926EJ-S

,ARM940T

,......)SamsungCalmRISC16/32

FujitsuFR-VHitachiH8intelIA32(X86)M68KMIPS(MIPS32?M4K?,MIPS32?4KS?,MIPS32?4KE?,...NECV8xxPowerPCSPARCSuperHMatsushitaAM3x7第7頁,課件共45頁,創(chuàng)作于2023年2月eCossystemdevelopment8第8頁,課件共45頁,創(chuàng)作于2023年2月eCos

概況1.發(fā)展歷程2.優(yōu)勢:完全開源,完全免費(fèi)由免費(fèi)軟件基金會(huì)做版權(quán)維護(hù)(FSF:FreeSoftwareFoundation)3.特點(diǎn):可配置性,可裁剪性,可移植性,實(shí)時(shí)性兼容性(posix,uitron…),代碼量小,符合標(biāo)準(zhǔn)協(xié)議9第9頁,課件共45頁,創(chuàng)作于2023年2月eCos

功能10第10頁,課件共45頁,創(chuàng)作于2023年2月eCos

HAL概念

HAL硬件抽象層:處理器結(jié)構(gòu)和系統(tǒng)硬件平臺(tái)

進(jìn)行抽象體系結(jié)構(gòu)抽象層(ArchitectureHAL)主要是指eCos所支持的具有不同體系結(jié)構(gòu)的處理器系列,如SPARC系列、arm系列等等。變體抽象層(VariantHAL)指的是處理器系列中某款處理器在Cache、MMU和FPU等方面所具有的特殊性。平臺(tái)抽象層(PlatformHAL)是對當(dāng)前系統(tǒng)硬件平臺(tái)的抽象,包括了平臺(tái)的啟動(dòng)、芯片選擇與配置、定時(shí)設(shè)備、I/O寄存器訪問以及中斷寄存器等等。11第11頁,課件共45頁,創(chuàng)作于2023年2月eCos系統(tǒng)中嵌入式軟件包的層次結(jié)構(gòu)12第12頁,課件共45頁,創(chuàng)作于2023年2月eCos

源碼庫的文件組織結(jié)構(gòu)13第13頁,課件共45頁,創(chuàng)作于2023年2月

eCoskernel14第14頁,課件共45頁,創(chuàng)作于2023年2月15eCos內(nèi)核提供了一個(gè)RTOS所期望的標(biāo)準(zhǔn)功能:線程管理,線程調(diào)度,中斷和異常處理,同步等eCos內(nèi)核的標(biāo)準(zhǔn)功能組件是可以配置的eCos內(nèi)核的支持標(biāo)準(zhǔn)的uITRON和POSIX兼容層接口eCos內(nèi)核提供C語言的API接口eCos

kernel特性

第15頁,課件共45頁,創(chuàng)作于2023年2月

調(diào)度器

內(nèi)存分配

中斷

通信同步機(jī)制

時(shí)鐘eCos

kernel

component16第16頁,課件共45頁,創(chuàng)作于2023年2月eCos

kernel---scheduler(0)位圖調(diào)度17第17頁,課件共45頁,創(chuàng)作于2023年2月eCos

kernel---scheduler(1)多級隊(duì)列調(diào)度18第18頁,課件共45頁,創(chuàng)作于2023年2月eCos

kernel---內(nèi)存分配高地址低地址.text.data.bss_h(yuǎn)eap_top

內(nèi)存池用戶區(qū)_Heap

(target.ld配置)19第19頁,課件共45頁,創(chuàng)作于2023年2月eCos

kernel---中斷20第20頁,課件共45頁,創(chuàng)作于2023年2月eCos

kernel---同步機(jī)制同步機(jī)制有:互斥量(mutex)信號量(semaphore)條件變量(condition)標(biāo)志量

(flag)消息郵箱(mbox)同步機(jī)制是內(nèi)核為線程提供通信,以及對共享資源進(jìn)行同步的機(jī)制21第21頁,課件共45頁,創(chuàng)作于2023年2月eCos

kernel---同步機(jī)制voidcyg_user_start(){ cyg_semaphore_init(&g_sem,0); cyg_thread_creat(12,thread_A,...); cyg_thread_creat(6,thread_B,...); cyg_thread_resume(thread_a); cyg_thread_resume(thread_b);}voidthread_A(){ while(1){ cyg_thread_delay(100); diag_printf("ThreadA:postsignal"); cyg_semaphore_post(&g_sem); }}voidthread_B(){ while(1){ cyg_semaphore_wait(&g_sem); diag_printf("ThreadB:getsignal"); }}信號量例子22第22頁,課件共45頁,創(chuàng)作于2023年2月eCos

kernel---時(shí)鐘eCos內(nèi)核使用時(shí)鐘特性來提供超時(shí)、延遲、線程調(diào)度、計(jì)數(shù)器、報(bào)警器、定時(shí)器等服務(wù).

通常1tick=10ms.23第23頁,課件共45頁,創(chuàng)作于2023年2月

eCos驅(qū)動(dòng)開發(fā)24第24頁,課件共45頁,創(chuàng)作于2023年2月eCos

驅(qū)動(dòng)---架構(gòu)主要設(shè)備類型:字符設(shè)備,塊設(shè)備,網(wǎng)絡(luò)設(shè)備25第25頁,課件共45頁,創(chuàng)作于2023年2月eCos

驅(qū)動(dòng)---3種中斷模型26第26頁,課件共45頁,創(chuàng)作于2023年2月eCos

驅(qū)動(dòng)---字符設(shè)備驅(qū)動(dòng)接口開發(fā)27第27頁,課件共45頁,創(chuàng)作于2023年2月eCos

驅(qū)動(dòng)---應(yīng)用層調(diào)用IO接口28第28頁,課件共45頁,創(chuàng)作于2023年2月eCosfilesystem29第29頁,課件共45頁,創(chuàng)作于2023年2月30

文件系統(tǒng)屏蔽底層細(xì)節(jié),用戶可以在ROM、RAM、網(wǎng)絡(luò)、硬盤、SD卡、CF卡、USB等很多種介質(zhì)上實(shí)現(xiàn)“按名存取”。文件系統(tǒng)的本質(zhì)是“按名存取”,把文件名字和數(shù)據(jù)對應(yīng)起來eCos

filesystem

eCos文件系統(tǒng)符合POSIX標(biāo)準(zhǔn)第30頁,課件共45頁,創(chuàng)作于2023年2月31第31頁,課件共45頁,創(chuàng)作于2023年2月eCosnetworking32第32頁,課件共45頁,創(chuàng)作于2023年2月33隨著網(wǎng)絡(luò)應(yīng)用的普及,嵌入式系統(tǒng)對網(wǎng)絡(luò)的要求也越來越迫切.eCos為滿足這種需求,在網(wǎng)絡(luò)方面提供了強(qiáng)有力支持.它包含公共的網(wǎng)絡(luò)協(xié)議包(CommonNetworkingPackage)支持完整的TCP/IP網(wǎng)絡(luò)協(xié)議棧,提供了基于OpenBSD和FreeBSD的兩種實(shí)現(xiàn).目前支持的網(wǎng)絡(luò)服務(wù)包括FTP,TFTP,SNMP,DNS,HTTP等等.eCos

networking第33頁,課件共45頁,創(chuàng)作于2023年2月eCos

NetFramework34第34頁,課件共45頁,創(chuàng)作于2023年2月eCos宿主機(jī)開發(fā)平臺(tái)35第35頁,課件共45頁,創(chuàng)作于2023年2月eCos

開發(fā)環(huán)境的建立

3.安裝ecos開發(fā)包和配置工具Configtool

1.cygwin(GNUCygnusWindows)/download.html2.與平臺(tái)相關(guān)的交叉開發(fā)工具4.安裝WinCVS

36第36頁,課件共45頁,創(chuàng)作于2023年2月eCos

組件管理的一些重要概念配置選項(xiàng):1.最基本的可配置單元2.每個(gè)配置選項(xiàng)對應(yīng)一個(gè)單一的選擇,可以選中還是禁止,或者設(shè)成某個(gè)值3.每個(gè)配置選項(xiàng)都有一個(gè)宏與其對應(yīng),該宏用于系統(tǒng)源碼級控制4.對于特定的ecos應(yīng)用,可以通過調(diào)整配置選擇來滿足應(yīng)用的特定需求37第37頁,課件共45頁,創(chuàng)作于2023年2月eCos

組件管理的一些重要概念組件:1,組件可以包含更多的配置選項(xiàng)2,組件也是一個(gè)配置選項(xiàng),用戶可以對組件的所有功能的使

能和禁止進(jìn)行選擇3,組件可以是一組相關(guān)配置選項(xiàng)稱呼,此時(shí)沒有宏名與此對應(yīng)38第38頁,課件共45頁,創(chuàng)作于2023年2月eCos

組件管理的一些重要概念包:是一種特殊類型的組件,它是組件的發(fā)布單位。對于一個(gè)包含了所有源代碼、頭文件、說明文檔和其他一些相關(guān)文件的包,可以形成一個(gè)發(fā)布文件。39第39頁,課件共45頁,創(chuàng)作于2023年2月eCos

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論