a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > IPv6的嵌入式設計與實現

IPv6的嵌入式設計與實現

作者: 時間:2009-11-05 來源:網絡 收藏

(2) 消息隊列
消息隊列用于給任務發消息。通過內核提供的服務、任務或中斷服務子程序可以將一條消息(該消息的指針)放入消息隊列。同樣,一個或多個任務可以通過內核服務從消息隊列中得到消息。發送和接收消息的任務約定,傳遞的消息實際上是傳遞的指針指向的內容。通常,先進入消息隊列的消息先傳給任務[5],也就是說,任務先得到的是最先進入消息隊列的消息,即先進先出原則(FIFO)。然而,uC/OS-II也允許使用后進先出方式(LIFO)。當一個以上的任務要從消息隊列接收消息時,每個消息隊列有一張等待消息任務的等待列表。如果消息隊列中沒有消息,即消息隊列是空,等待消息的任務就被掛起并放入等待消息任務列表中,直到有消息到來。通常,內核允許等待消息的任務定義等待超時的時間。如果限定時間內,任務沒有收到消息,該任務就進入就緒態并開始運行,同時返回出錯代碼,指出出現等待超時錯誤。一旦一則消息放入消息隊列,該消息將傳給等待消息的任務中優先級最高的那個任務,或是最先進入等待消息任務列表的任務。
2.3 庫函數的
協議棧中用到了6 個外部函數,這些函數通常與用戶使用的系統或編譯器有關。返回字符串長度、字符串比較、內存數據塊之間的互相拷貝和內存中指定長度的數據塊清零,4 個函數已由ADS1.2 中的運行時庫提供,不需要再編寫。因為網絡數據采用的是大端數據存儲[6] , 而LPC2210 是工作在小端,所以,在存取網絡數據時要進行字節的交換。下面兩個簡單的函數需要: uintl6 swapw( uintl6 n); //16位數據高低字節交換
{ return(((n<<8)0xff00)}((n>>8)0x00ff)); } uint32 swapl(uint32 n);//32 位數據大小頭對調{ return(((n << 24 0xff000000L) ) ((n +8) 0x00ff0000L) ( ( n >> 8 ) 0x0000ff00L) ( ( n >> 2 4 )0x000000ffL)); }
3 結束語
該文詳細描述了在系統中如何 協議棧,使得在資源有限的系統中實現 協議棧具有可能, 隨著IPv6 技術及技術的不斷發展,可以用微型網關、微型路由器實現嵌入式網與互聯網的通信,并最終使IPv6 技術應用于工業控制、家庭網絡等各個領域.
本文作者創新點: 。通過分析IEEE 802.15.4 和IPv6 協議,在保證實現網絡基本功能的前提下,著重研究了如何對復雜的TCP/IPv6 協議棧進行精簡,并提出了一套可行的方案,此方案能夠適應嵌入式系統的需要,然后用軟件實現嵌入式系統中的精簡的TCP/IPv6 協議棧,模塊之間能夠互相通信。

本文引用地址:http://www.j9360.com/article/152302.htm

linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

上一頁 1 2 3 下一頁

評論


相關推薦

技術專區

關閉