浓毛老太交欧美老妇热爱乱,蜜臀性色av免费,妺妺窝人体色www看美女,久久久久久久久久久大尺度免费视频,麻豆人妻无码性色av专区

位置:51電子網(wǎng) » 技術(shù)資料 » 其它綜合

嵌入式實時操作系統(tǒng)ECOS在S3C2510上的移植實現(xiàn)

發(fā)布時間:2007/8/30 0:00:00 訪問次數(shù):642

摘 要: 本文介紹了實時操作系統(tǒng)ECOS的特點及基本結(jié)構(gòu),并具體研究了ECOS在三星公司以ARM940T為內(nèi)核的S3C2510嵌入式芯片上的移植方法。文章著重討論了移植過程中的重點與難點部分:ECOS的硬件抽象層(HAL)移植。該移植方案已經(jīng)過實際測試,系統(tǒng)穩(wěn)定可靠,可運行多任務(wù)式應(yīng)用程序。
關(guān)鍵詞:實時操作系統(tǒng);ECOS;硬件抽象層;移植;ARM
引言
ECOS(Embedded Configurable Operating System,嵌入式可配置操作系統(tǒng))是一種針對16位、32位和64位處理器的可移植嵌入式實時操作系統(tǒng)。由于其源代碼是公開的,因而有越來越多的設(shè)計人員開始關(guān)注ECOS操作系統(tǒng)。ECOS最大的特點是模塊化,內(nèi)核可配置。最小版本的ECOS只有幾百字節(jié),非常適合小型嵌入式系統(tǒng)的開發(fā)。相對于嵌入式Linux來說,ECOS有配置靈活和節(jié)省資源的優(yōu)勢。它的另一個優(yōu)點是使用多任務(wù)搶占機(jī)制,具有最小的中斷延遲,支持嵌入式系統(tǒng)所需的所有同步原語,并擁有靈活的調(diào)度策略和中斷處理機(jī)制,因而具有良好的實時性。與?Clinux和?COS等操作系統(tǒng)相比,ECOS更適合于處理實時信號的設(shè)備,如移動通信、WLAN等通信設(shè)備的開發(fā)。
S3C2510是一款低功耗、高效能、面向以太網(wǎng)系統(tǒng)的微處理器。它的系統(tǒng)時鐘可達(dá)133MHz,并包含了16/32位寬的ARM940T核、4KB的I-CACHE和4KB的D-CACHE。S3C2510帶有兩個獨立的10/100Mbps的以太網(wǎng)控制器,這兩個接口能夠以硬件完成IEEE802.3的MAC層處理,因此更適合用作SOHO路由器、internet網(wǎng)關(guān),甚至寬帶無線接入設(shè)備的開發(fā)。ECOS操作系統(tǒng)也非常適合這些網(wǎng)絡(luò)設(shè)備的開發(fā),本文將介紹S3C2510的移植方案,給各種以ARM為內(nèi)核處理器的ECOS底層移植開發(fā)提供一個系統(tǒng)的范例。




圖 1 ECOS操作系統(tǒng)結(jié)構(gòu)圖
ECOS底層移植的基礎(chǔ)知識
ECOS系統(tǒng)的主要組成部分如圖1所示。操作系統(tǒng)的主要功能 及特點是由其內(nèi)核所決定的,底層移植一般不會涉及到系統(tǒng)內(nèi)核的內(nèi)容。由圖1可見,硬件抽象層是嵌入式操作系統(tǒng)和硬件直接接觸的基本層,其將系統(tǒng)內(nèi)核和具體的硬件平臺徹底隔離開, 實現(xiàn)了系統(tǒng)內(nèi)核與硬件的無關(guān)性,這就是操作系統(tǒng)具有良好可移植性的體現(xiàn)。因此,對于開發(fā)人員來說,移植操作系統(tǒng)真正的意義和工作在于移植操作系統(tǒng)的硬件抽象層。
硬件抽象層HAL對處理器結(jié)構(gòu)和系統(tǒng)硬件平臺進(jìn)行抽象,當(dāng)要在一個新的目標(biāo)平臺上運行ECOS時,只需要對底層的硬件抽象層進(jìn)行修改,便可迅速地將整個ECOS系統(tǒng)移植到新的平臺上。硬件抽象層主要包括三大模塊——體系結(jié)構(gòu)抽象層(Architecture HAL)、變體抽象層(Variant HAL)和平臺抽象層(Platform HAL)。體系結(jié)構(gòu)抽象層主要是指ECOS所支持的具有不同體系結(jié)構(gòu)的處理器系列,如ARM系列、PowerPC系列、MIPS系列等等。變體抽象層指的是處理器系列中某款處理器在Cache、MMU和FPU等方面所具有的特殊性。如S3C2510屬于ARM系列中的ARM940T,在變體抽象層中就會具體地針對ARM940T的Cache等方面作出定義。平臺抽象層則是對當(dāng)前系統(tǒng)硬件平臺的抽象,包括了平臺的啟動、芯片選擇與配置、定時設(shè)備、I/O寄存器訪問以及中斷寄存器等等。平臺抽象層代碼的編寫是ECOS移植工作的重點。
HAL移植的主要步驟
建立適當(dāng)?shù)奈募夸?BR>ECOS本身有一個完整的文件目錄,只有把新建的底層文件放在適當(dāng)?shù)奈募夸浵旅妫拍艽_保配置和編譯工作的成功,也有助于利用ECOS本身已有的源代碼,如結(jié)構(gòu)體系層和變體層中的許多成熟可用的代碼。由于本系統(tǒng)中S3C2510處理器的內(nèi)核是ARM940T,因而可以把S3C2510的目錄建立在ECOS庫路徑packages/hal/arm/arm9/下。
建立S3C2510的cdl文件
cdl文件使用cdl腳本語言描述該硬件設(shè)備(包或平臺)的特性和常用指標(biāo)。cdl文件實現(xiàn)系統(tǒng)在源碼級的功能和指標(biāo)配置,猶如一個項目管理高層對其倉庫中組件特性的登記,只有登記后的包、組件和選項才能被操作系統(tǒng)配置工具識別和配置。
以下是S3C2510的cdl文件中的幾段重要描述。
* cdl_package CYGPKG_ HAL_ARM_ ARM9_S3C2510
這是S3C2510在ecos.db中所登記的包的名字,它下面包含了該板的一些基本設(shè)置和組件,如母體體系結(jié)構(gòu)(parent)、包含的頭文件、編譯的C文件等。
* cdl_component CYG_HAL _STARTUP
系統(tǒng)啟動方式,有3種選擇:ram啟動、rom啟動、romram啟動。
* cdl_component CYGNUM_ HAL_CPUCLOCK
平臺的系統(tǒng)時鐘設(shè)置,以便于ECOS其他組件以此時鐘為標(biāo)準(zhǔn)。該平臺系統(tǒng)時鐘的默認(rèn)值設(shè)為133MHz。
* cdl_option CYGNUM_HAL_ RTC_PERIOD
ECOS內(nèi)核的運行時鐘單位。ECOS內(nèi)核以一個tick為時鐘單位,而一個tick的長度就等于該選項的設(shè)定值。
在ecos.db中登記
S3C2510的硬件包
ecos.db是關(guān)于ECOS系統(tǒng)的一個數(shù)據(jù)庫文件(在packages目錄下),它包含了硬件包管理工具和一些在組件配置庫中的包。與cdl文件相比,ecos.db登記了倉庫中的物品,而cdl文件則登記每種物品的特性。只有在ecos.db中登記了的包,才能被ECOS的庫編譯工具(configtoo

摘 要: 本文介紹了實時操作系統(tǒng)ECOS的特點及基本結(jié)構(gòu),并具體研究了ECOS在三星公司以ARM940T為內(nèi)核的S3C2510嵌入式芯片上的移植方法。文章著重討論了移植過程中的重點與難點部分:ECOS的硬件抽象層(HAL)移植。該移植方案已經(jīng)過實際測試,系統(tǒng)穩(wěn)定可靠,可運行多任務(wù)式應(yīng)用程序。
關(guān)鍵詞:實時操作系統(tǒng);ECOS;硬件抽象層;移植;ARM
引言
ECOS(Embedded Configurable Operating System,嵌入式可配置操作系統(tǒng))是一種針對16位、32位和64位處理器的可移植嵌入式實時操作系統(tǒng)。由于其源代碼是公開的,因而有越來越多的設(shè)計人員開始關(guān)注ECOS操作系統(tǒng)。ECOS最大的特點是模塊化,內(nèi)核可配置。最小版本的ECOS只有幾百字節(jié),非常適合小型嵌入式系統(tǒng)的開發(fā)。相對于嵌入式Linux來說,ECOS有配置靈活和節(jié)省資源的優(yōu)勢。它的另一個優(yōu)點是使用多任務(wù)搶占機(jī)制,具有最小的中斷延遲,支持嵌入式系統(tǒng)所需的所有同步原語,并擁有靈活的調(diào)度策略和中斷處理機(jī)制,因而具有良好的實時性。與?Clinux和?COS等操作系統(tǒng)相比,ECOS更適合于處理實時信號的設(shè)備,如移動通信、WLAN等通信設(shè)備的開發(fā)。
S3C2510是一款低功耗、高效能、面向以太網(wǎng)系統(tǒng)的微處理器。它的系統(tǒng)時鐘可達(dá)133MHz,并包含了16/32位寬的ARM940T核、4KB的I-CACHE和4KB的D-CACHE。S3C2510帶有兩個獨立的10/100Mbps的以太網(wǎng)控制器,這兩個接口能夠以硬件完成IEEE802.3的MAC層處理,因此更適合用作SOHO路由器、internet網(wǎng)關(guān),甚至寬帶無線接入設(shè)備的開發(fā)。ECOS操作系統(tǒng)也非常適合這些網(wǎng)絡(luò)設(shè)備的開發(fā),本文將介紹S3C2510的移植方案,給各種以ARM為內(nèi)核處理器的ECOS底層移植開發(fā)提供一個系統(tǒng)的范例。




圖 1 ECOS操作系統(tǒng)結(jié)構(gòu)圖
ECOS底層移植的基礎(chǔ)知識
ECOS系統(tǒng)的主要組成部分如圖1所示。操作系統(tǒng)的主要功能 及特點是由其內(nèi)核所決定的,底層移植一般不會涉及到系統(tǒng)內(nèi)核的內(nèi)容。由圖1可見,硬件抽象層是嵌入式操作系統(tǒng)和硬件直接接觸的基本層,其將系統(tǒng)內(nèi)核和具體的硬件平臺徹底隔離開, 實現(xiàn)了系統(tǒng)內(nèi)核與硬件的無關(guān)性,這就是操作系統(tǒng)具有良好可移植性的體現(xiàn)。因此,對于開發(fā)人員來說,移植操作系統(tǒng)真正的意義和工作在于移植操作系統(tǒng)的硬件抽象層。
硬件抽象層HAL對處理器結(jié)構(gòu)和系統(tǒng)硬件平臺進(jìn)行抽象,當(dāng)要在一個新的目標(biāo)平臺上運行ECOS時,只需要對底層的硬件抽象層進(jìn)行修改,便可迅速地將整個ECOS系統(tǒng)移植到新的平臺上。硬件抽象層主要包括三大模塊——體系結(jié)構(gòu)抽象層(Architecture HAL)、變體抽象層(Variant HAL)和平臺抽象層(Platform HAL)。體系結(jié)構(gòu)抽象層主要是指ECOS所支持的具有不同體系結(jié)構(gòu)的處理器系列,如ARM系列、PowerPC系列、MIPS系列等等。變體抽象層指的是處理器系列中某款處理器在Cache、MMU和FPU等方面所具有的特殊性。如S3C2510屬于ARM系列中的ARM940T,在變體抽象層中就會具體地針對ARM940T的Cache等方面作出定義。平臺抽象層則是對當(dāng)前系統(tǒng)硬件平臺的抽象,包括了平臺的啟動、芯片選擇與配置、定時設(shè)備、I/O寄存器訪問以及中斷寄存器等等。平臺抽象層代碼的編寫是ECOS移植工作的重點。
HAL移植的主要步驟
建立適當(dāng)?shù)奈募夸?BR>ECOS本身有一個完整的文件目錄,只有把新建的底層文件放在適當(dāng)?shù)奈募夸浵旅,才能確保配置和編譯工作的成功,也有助于利用ECOS本身已有的源代碼,如結(jié)構(gòu)體系層和變體層中的許多成熟可用的代碼。由于本系統(tǒng)中S3C2510處理器的內(nèi)核是ARM940T,因而可以把S3C2510的目錄建立在ECOS庫路徑packages/hal/arm/arm9/下。
建立S3C2510的cdl文件
cdl文件使用cdl腳本語言描述該硬件設(shè)備(包或平臺)的特性和常用指標(biāo)。cdl文件實現(xiàn)系統(tǒng)在源碼級的功能和指標(biāo)配置,猶如一個項目管理高層對其倉庫中組件特性的登記,只有登記后的包、組件和選項才能被操作系統(tǒng)配置工具識別和配置。
以下是S3C2510的cdl文件中的幾段重要描述。
* cdl_package CYGPKG_ HAL_ARM_ ARM9_S3C2510
這是S3C2510在ecos.db中所登記的包的名字,它下面包含了該板的一些基本設(shè)置和組件,如母體體系結(jié)構(gòu)(parent)、包含的頭文件、編譯的C文件等。
* cdl_component CYG_HAL _STARTUP
系統(tǒng)啟動方式,有3種選擇:ram啟動、rom啟動、romram啟動。
* cdl_component CYGNUM_ HAL_CPUCLOCK
平臺的系統(tǒng)時鐘設(shè)置,以便于ECOS其他組件以此時鐘為標(biāo)準(zhǔn)。該平臺系統(tǒng)時鐘的默認(rèn)值設(shè)為133MHz。
* cdl_option CYGNUM_HAL_ RTC_PERIOD
ECOS內(nèi)核的運行時鐘單位。ECOS內(nèi)核以一個tick為時鐘單位,而一個tick的長度就等于該選項的設(shè)定值。
在ecos.db中登記
S3C2510的硬件包
ecos.db是關(guān)于ECOS系統(tǒng)的一個數(shù)據(jù)庫文件(在packages目錄下),它包含了硬件包管理工具和一些在組件配置庫中的包。與cdl文件相比,ecos.db登記了倉庫中的物品,而cdl文件則登記每種物品的特性。只有在ecos.db中登記了的包,才能被ECOS的庫編譯工具(configtoo

相關(guān)IC型號

熱門點擊

 

推薦技術(shù)資料

羅盤誤差及補(bǔ)償
    造成羅盤誤差的主要因素有傳感器誤差、其他磁材料干擾等。... [詳細(xì)]
版權(quán)所有:51dzw.COM
深圳服務(wù)熱線:13692101218  13751165337
粵ICP備09112631號-6(miitbeian.gov.cn)
公網(wǎng)安備44030402000607
深圳市碧威特網(wǎng)絡(luò)技術(shù)有限公司
付款方式


 復(fù)制成功!