資料介紹
嵌入式Internet是隨著嵌入式系統的廣泛應用和計算機網絡技術的發展而產生的一種新概念和技術。嵌入式系統以應用為中心,以計算機技術為基礎,且軟硬件可裁剪,現已贏得了巨大的市場。隨著 Internet的發展,各種設備都產生了連接性的需求,從冰箱到電表,似乎所有電器都需要連入互聯網。通過為現有嵌入式系統增加因特網接入能力來擴展其功能,以Internet為介質實現信息交互,從而產生了嵌入式Internet 技術。要實現嵌入式設備的網絡化,需要實現TCP/IP網絡協議棧,但由于Internet上各種通信協議對計算機存儲器、運算速度等的要求比較高,使得嵌入式系統協議棧的開發實現并不順利。
目前有兩個關鍵因素影響網絡協議棧的開發,一是性能和效率,二是開發調試方便。傳統的操作系統一般只能顧及其中的一個方面。例如在Linux、FreeBSD中,網絡協議棧作為系統內核的一部分實現,通常具有較高的通信效率,但是不方便用戶添加實現新的用戶協議及根據特殊需要對協議的實現細節調整,同時對協議代碼的維護、調試和開發也不方便。這個缺點在嵌入式領域表現得尤為突出。
由于嵌入式設備的多樣性和通信需求的多樣性,嵌入式領域的網絡協議棧的復用率非常低。本文將構件技術引入網絡協議棧的開發,并在國產和欣操作系統上實現了一個構件化的網絡協議棧,很好地解決了開發與效率的問題。
1 和欣嵌入式操作系統和CAR構件技術
1.1 和欣嵌入式操作系統
和欣操作系統基于微內核,服務動態加載。內核包括硬件驅動(串口、USB、以太網卡、無線通信模塊)、內存管理等系統基本服務,如圖1所示。TCP/IP協議棧完全由構件實現,是運行在構件平臺之上的一個服務構件。底層網卡、串口等設備得到數據之后將數據交上層服務構件處理。
和欣嵌入式操作系統是基于構件化軟件模型,構件化軟件設計思想貫穿了整個系統的設計與實現,系統實現本身就是構件模式。除內核中最底層控制部分外,所有系統功能都以構件接口形式提供。另外,操作系統對構件化軟件模型提供了必要的運行環境,來源不同的構件可以在該環境上實現互操作。系統提供了構件自動尋址/自動加載機制,用戶不必知道調用的構件程序是本地的還是來自于網上,即構件運行環境對用戶透明。構件化系統的實現,使得操作系統本身具有高度的靈活性和擴展性。和欣采用了CAR構件技術。
1.2 CAR構件技術
CAR構件技術是在總結面向對象編程、面向構件編程技術的發展歷史和經驗的基礎上,為更好地支持面向以Web服務為代表的下一代網絡應用軟件開發而發明的。CAR(Component Assembly Runtime)構件技術定義了一套網絡編程時代的構件編程模型和編程規范,它規定了一組構件間相互調用的標準,使二進制構件可自描述并能夠在運行時動態鏈接。
CAR構件技術通過二進制的封裝及動態鏈接技術解決軟件的動態升級和軟件的動態替換問題。面向構件技術對一組類的組合進行封裝,并代表完成一個或多個功能的特定服務,同時為用戶提供多個接口。整個構件隱藏了具體的實現,只用接口提供服務。這樣,在不同層次上,構件均可以將底層多個邏輯組合成高層次上粒度更大的新構件。構件之間通過約定的接口進行數據交換和信息傳遞,構件的位置相互透明,可以在同一個或不同的用戶進程空間、不同的機器甚至不同的構件上用不同的語言編寫,只要其符合事先約定的構件規范。
2 和欣操作系統上的TCP/IP協議棧的特點與實現
2.1 和欣嵌入式操作系統上TCP/IP協議棧的特點
由于嵌入式系統在硬件資源的占有量以及處理器的處理能力等方面的限制,使得TCP/IP協議的嵌入式實現與其在通用操作系統中的實現有很大不同。首先,由于嵌入式處理器的時鐘頻率低,地址、數據總線窄,導致嵌入式系統對一個通用IP 包的處理要花費更多的處理機時間,從而影響其他任務的執行。因此需要對龐大復雜的TCP/IP協議棧進行裁剪,使之具有簡單、高效的特點。同時在設計嵌入式TCP/IP協議棧時要合理控制中斷處理程序的大小,使得中斷處理程序的運行時間盡可能短;同時把那些無實時性要求和費時的工作移到主程序中執行,從而保證協議的正確執行。具體來說,就是把TCP/IP協議的處理工作放到主程序中,對網絡接口的控制芯片采用循環查詢方式,在其他中斷任務的執行間隙處理TCP/IP協議,以犧牲系統的響應時間換取系統的可靠性。再者由于嵌入式系統的存儲空間有限,一般情況下只能開辟幾KB字節的緩存區接收數據包,并且其存儲空間固定,不是動態分配的。因此,在遇到大數據包時就會出現緩沖區溢出的錯誤。通常,嵌入式系統接收的數據包類型僅為系統狀態配置包、控制動作命令包、通信控制包等,這些包容量較小。由實時數據或網頁向網絡發送的數據包比較長,但可以通過設計格式加以控制。
目前有兩個關鍵因素影響網絡協議棧的開發,一是性能和效率,二是開發調試方便。傳統的操作系統一般只能顧及其中的一個方面。例如在Linux、FreeBSD中,網絡協議棧作為系統內核的一部分實現,通常具有較高的通信效率,但是不方便用戶添加實現新的用戶協議及根據特殊需要對協議的實現細節調整,同時對協議代碼的維護、調試和開發也不方便。這個缺點在嵌入式領域表現得尤為突出。
由于嵌入式設備的多樣性和通信需求的多樣性,嵌入式領域的網絡協議棧的復用率非常低。本文將構件技術引入網絡協議棧的開發,并在國產和欣操作系統上實現了一個構件化的網絡協議棧,很好地解決了開發與效率的問題。
1 和欣嵌入式操作系統和CAR構件技術
1.1 和欣嵌入式操作系統
和欣操作系統基于微內核,服務動態加載。內核包括硬件驅動(串口、USB、以太網卡、無線通信模塊)、內存管理等系統基本服務,如圖1所示。TCP/IP協議棧完全由構件實現,是運行在構件平臺之上的一個服務構件。底層網卡、串口等設備得到數據之后將數據交上層服務構件處理。
和欣嵌入式操作系統是基于構件化軟件模型,構件化軟件設計思想貫穿了整個系統的設計與實現,系統實現本身就是構件模式。除內核中最底層控制部分外,所有系統功能都以構件接口形式提供。另外,操作系統對構件化軟件模型提供了必要的運行環境,來源不同的構件可以在該環境上實現互操作。系統提供了構件自動尋址/自動加載機制,用戶不必知道調用的構件程序是本地的還是來自于網上,即構件運行環境對用戶透明。構件化系統的實現,使得操作系統本身具有高度的靈活性和擴展性。和欣采用了CAR構件技術。
1.2 CAR構件技術
CAR構件技術是在總結面向對象編程、面向構件編程技術的發展歷史和經驗的基礎上,為更好地支持面向以Web服務為代表的下一代網絡應用軟件開發而發明的。CAR(Component Assembly Runtime)構件技術定義了一套網絡編程時代的構件編程模型和編程規范,它規定了一組構件間相互調用的標準,使二進制構件可自描述并能夠在運行時動態鏈接。
CAR構件技術通過二進制的封裝及動態鏈接技術解決軟件的動態升級和軟件的動態替換問題。面向構件技術對一組類的組合進行封裝,并代表完成一個或多個功能的特定服務,同時為用戶提供多個接口。整個構件隱藏了具體的實現,只用接口提供服務。這樣,在不同層次上,構件均可以將底層多個邏輯組合成高層次上粒度更大的新構件。構件之間通過約定的接口進行數據交換和信息傳遞,構件的位置相互透明,可以在同一個或不同的用戶進程空間、不同的機器甚至不同的構件上用不同的語言編寫,只要其符合事先約定的構件規范。
2 和欣操作系統上的TCP/IP協議棧的特點與實現
2.1 和欣嵌入式操作系統上TCP/IP協議棧的特點
由于嵌入式系統在硬件資源的占有量以及處理器的處理能力等方面的限制,使得TCP/IP協議的嵌入式實現與其在通用操作系統中的實現有很大不同。首先,由于嵌入式處理器的時鐘頻率低,地址、數據總線窄,導致嵌入式系統對一個通用IP 包的處理要花費更多的處理機時間,從而影響其他任務的執行。因此需要對龐大復雜的TCP/IP協議棧進行裁剪,使之具有簡單、高效的特點。同時在設計嵌入式TCP/IP協議棧時要合理控制中斷處理程序的大小,使得中斷處理程序的運行時間盡可能短;同時把那些無實時性要求和費時的工作移到主程序中執行,從而保證協議的正確執行。具體來說,就是把TCP/IP協議的處理工作放到主程序中,對網絡接口的控制芯片采用循環查詢方式,在其他中斷任務的執行間隙處理TCP/IP協議,以犧牲系統的響應時間換取系統的可靠性。再者由于嵌入式系統的存儲空間有限,一般情況下只能開辟幾KB字節的緩存區接收數據包,并且其存儲空間固定,不是動態分配的。因此,在遇到大數據包時就會出現緩沖區溢出的錯誤。通常,嵌入式系統接收的數據包類型僅為系統狀態配置包、控制動作命令包、通信控制包等,這些包容量較小。由實時數據或網頁向網絡發送的數據包比較長,但可以通過設計格式加以控制。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 嵌入式操作系統
- 嵌入式操作系統
- 什么是嵌入式操作系統 常見的嵌入式系統有哪些
- 嵌入式操作系統FreeRTOS的原理實現
- 嵌入式操作系統FREERTOS的移植.
- 安全關鍵的嵌入式實時操作系統內核 5次下載
- 嵌入式操作系統的介紹和嵌入式操作系統的發展狀況和應用前景說明
- 嵌入式系統原理、設計與應用 2次下載
- 嵌入式操作系統-李春杰 0次下載
- 實時操作系統用于嵌入式應用系統的設計 42次下載
- 嵌入式操作系統Windows CE的研究
- 嵌入式操作系統的內核研究
- 一種提高構件化嵌入式操作系統性能的方案
- 嵌入式實時操作系統教程
- 嵌入式VxWorks網絡協議棧的Mutiplexer接口及其使用方法
- 基于嵌入式操作系統和TCP/IP協議棧實現網絡監控系統的設計 2067次閱讀
- 米爾科技嵌入式實時操作系統介紹 2179次閱讀
- 基于μC/OS嵌入式操作系統的嵌入式數據管理設計 1178次閱讀
- 基于ARM的嵌入式操作系統該如何設計 1480次閱讀
- 該如何正確選擇嵌入式操作系統 2707次閱讀
- 基于嵌入式實時系統的提高構件化嵌入式操作系統性能的方案設計 780次閱讀
- 基于和欣嵌入式操作系統實現的一個構件化的網絡協議棧設計淺析 1206次閱讀
- 什么是嵌入式操作系統 常見的嵌入式系統有哪些 4w次閱讀
- 嵌入式操作系統是什么_嵌入式操作系統有哪些 2w次閱讀
- 如何設計一個小型嵌入式操作系統 9350次閱讀
- CSMA協議原理 Contiki協議棧的設計 2722次閱讀
- 基于FreeRTOS的嵌入式實時操作系統的原理和實現 6562次閱讀
- 在FPGA中實現嵌入式TCP/IP通信協議棧 7729次閱讀
- 概述及匯總ARM的嵌入式操作系統 2951次閱讀
- 基于Linux的嵌入式實時操作系統的研究 2298次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多