|
關(guān)于eCos
本帖最后由 一朝成名 于 2009-6-14 12:28 編輯
這個(gè)大家應該比較熟悉呵呵,估計大家都熟了。我就啰嗦下再貼一次,希望沒(méi)有誤導人:)
eCos 中字面上C(configurable) 表示的“高可配置性”。eCos可以讓開(kāi)發(fā)者像在玩積木般地自由選擇其執行期的元件,應用程序開(kāi)發(fā)者可以針對自己的應用程序來(lái)設遲一個(gè)對其最小的RTOS環(huán)境,這跟以往應用程序就是跑在一個(gè)完整的RTOS上本質(zhì)上不同,在嵌入式系統資源與內存寸土寸金的環(huán)境上,這樣的開(kāi)發(fā)方式是很重要的。在以往的嵌入式開(kāi)發(fā)方式都是自己手工的將RTOS作縮減,對經(jīng)驗不足或對該RTOS不夠熟悉的人將會(huì )花去許多時(shí)間,或是根本很難將RTOS拆開(kāi),但在eCos上,由于設計之初就是朝向可設遲的原則,各種元件都遵守著(zhù)模塊化的開(kāi)發(fā)方式,而應用程序開(kāi)發(fā)者只要使用eCos 中的配置,即可輕松簡(jiǎn)單的對eCos元件作量身打造,也不需對其內部實(shí)作有所了解即時(shí)RTOS的核心并提供標準系統API。
eCos 的核心支持一般OS常見(jiàn)的項目如驅動(dòng)程序(Device Driver)、內存管理(Memory managemant)、異常處理(exceptionhandling)、中斷處理(exception handling)、線(xiàn)程的支持(threadsupport)、計時(shí)器(Timer)、計數器(Counter),對于即時(shí)RTOS的支持如完全優(yōu)先(fullpreemptability)、最小中斷延遲(minimal interrupt latencies)、線(xiàn)程同步(synchronization primitive)、可自定的調度原則(schedulepolicies)。此外也支持POSIX 等操作系統的標準API 及ANSI C 與常用的數學(xué)函數。支持常用的周邊及通訊協(xié)議(networking stacks)支持以太網(wǎng)絡(luò )卡,串口,USBslave等常用周邊。并支持一般常用的通訊協(xié)議如IP、IPV6、ICMP、UDP、TCP、SNMP、HTTP、TFTP、FTP等。網(wǎng)絡(luò )設遲部分,可支持靜態(tài)IP 與DHCP 。GDB支持可支持主控端使用GDB 遠端透過(guò)串口或是以太網(wǎng)絡(luò )對應用程序除錯。
此外,eCos另一個(gè)優(yōu)點(diǎn)是他支持非常多的平臺和CPU,尤其是比較新的CPU比如ARM的各個(gè)系列,DSP(BlackFin)等。并且也支持很多硬件平臺。目前支持的CPU包括: ARM, CalmRISC, FR-V, H8, IA32, M68K, Matsushita AM3x, MIPS,NEC V8xx, PowerPC, SPARC, SuperH 支持的硬件平臺設備包括: Flash, Ethernet, 串口, USB,時(shí)鐘等。其已直接支持了時(shí)下絕大部分的硬件,可在eCos 官方網(wǎng)站上找到支持列表。官方網(wǎng)站http://ecos.sourceware.org/ |
|