在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

微型嵌入式操作系統(tǒng)γOS和系統(tǒng)編程語言AntC的應(yīng)用開發(fā)

電子設(shè)計 ? 來源:計算機應(yīng)用 ? 作者:王鸚鵡,鄭扣根, ? 2021-06-18 15:16 ? 次閱讀

作者:王鸚鵡,鄭扣根,瞿心杭

一 引言

網(wǎng)絡(luò)傳感器是集傳感器技術(shù)、嵌入式計算技術(shù)、現(xiàn)代網(wǎng)絡(luò)及通信技術(shù)、分布式信息處理技術(shù)于一身的資源受限的嵌入式設(shè)備,是“普適計算”在微型嵌入式領(lǐng)域的一種重要應(yīng)用模式。

網(wǎng)絡(luò)傳感器的研究過去一直受限于硬件平臺而發(fā)展緩慢。隨著半導(dǎo)體技術(shù)、通信技術(shù)、微電子技術(shù)和微機械技術(shù)的不斷進步,低功耗、低價格、多功能的傳感器網(wǎng)絡(luò)系統(tǒng)得到了快速發(fā)展,使得制作微小、有彈性、低功耗的傳感器節(jié)點成為現(xiàn)實。

二 背景

1 應(yīng)用特點

網(wǎng)絡(luò)傳感器應(yīng)用有其自身的特點,主要有以下幾個方面:小尺寸和低功耗、并發(fā)密集操作、有限的物理并行性和控制層次、多樣化的設(shè)計和使用。一方面,傳感器資源極其有限,給底層嵌入式程序設(shè)計帶來較大的限制;另一方面,傳感器上運行的應(yīng)用程序和系統(tǒng)內(nèi)核通常是緊密結(jié)合在一起的,且運行時需要的任務(wù)數(shù)量、執(zhí)行時間、執(zhí)行結(jié)果以及內(nèi)存消耗等是可以較好預(yù)計的。

此外,傳感器種類繁多,針對不同應(yīng)用場合需要不同種類的傳感器;在軍事應(yīng)用、空間探索等特定應(yīng)用場合下,更是需要大量的不同種類的傳感器協(xié)同合作來完成特定應(yīng)用事件。因而傳感器上運行的軟件系統(tǒng)如果能夠具備相對較好的靈活性、可配置性和可重用性,將能更好地滿足應(yīng)用需求。

1.1 現(xiàn)有嵌入式OS比較

當(dāng)前存在眾多的嵌入式操作系統(tǒng),其中具有代表性的如Vxwork、WindowsCE,pSOS和Neculeus等,它們的優(yōu)點是:功能強大;具有豐富的API和嵌入式應(yīng)用軟件;具備良好的實時性能,尤以Vxwork為代表;具備良好的穩(wěn)定性。缺點是:價格昂貴;源代碼不公開,以及由此導(dǎo)致的諸如對設(shè)備的支持、應(yīng)用軟件的移植等一系列的問題;另外對于傳感器器件來說,這些嵌入式OS都顯得過于“龐大”了一些。 uc/os和嵌入式Linux當(dāng)前正獲得越來越廣泛的應(yīng)用。

它們的優(yōu)點是:執(zhí)行效率高、占用空間小、可擴展性能好,同時是免費且源代碼公開的。uc/os具備良好的實時性能,嵌入式Linux的實時性能有待進一步提高。缺點是:它們都是相對通用的嵌入式操作系統(tǒng),不能完全適應(yīng)傳感器應(yīng)用領(lǐng)域的需求,如嵌入式Linux最小仍然需要上百K的ROMRAM空間才能工作,而uc/os的內(nèi)核盡管可縮減至幾K,但是對于某些傳感器應(yīng)用來說,仍然顯得不夠精簡。

UC Berkeley設(shè)計開發(fā)了無線傳感器網(wǎng)絡(luò)應(yīng)用的嵌入式操作系統(tǒng)TinyOS以及系統(tǒng)編程語言nesC。我們在剖析現(xiàn)有嵌入式OS特別是TinyOS的基礎(chǔ)之上,設(shè)計實現(xiàn)了支持網(wǎng)絡(luò)傳感器的微型嵌入式操作系統(tǒng)γOS,并開發(fā)了系統(tǒng)編程語言AntC。

1.2 γOS設(shè)計

γOS是以網(wǎng)絡(luò)傳感器應(yīng)用為目標(biāo)的微型嵌入式操作系統(tǒng),針對網(wǎng)絡(luò)傳感器的前述應(yīng)用特點,γOS的設(shè)計具備幾個特性:支持足夠微小的硬件系統(tǒng),便于傳感器設(shè)備在檢測環(huán)境中的任意撒布;支持足夠低的系統(tǒng)功耗,保證傳感器設(shè)備具備足夠長的生命期;支持集成可與物理世界交互的傳感設(shè)備,實現(xiàn)數(shù)據(jù)的采集和傳輸;同時兼顧適度靈活的可重用性、可配置性。

γOS還必須解決傳感器網(wǎng)絡(luò)的兩個突出問題:

1)由于網(wǎng)絡(luò)傳感器操作的并發(fā)密集性,因而必須保證眾多不同數(shù)據(jù)流的并發(fā)即時傳輸;

2)系統(tǒng)必須提供高效的模塊化管理策略,具體硬件設(shè)備和具體應(yīng)用組件必須緊密地結(jié)合在一起,減小處理和存儲開銷。為此,γOS的設(shè)計重點主要集中在以下幾個方面:低能耗的微型內(nèi)核;微線程的系統(tǒng)架構(gòu);組件化的功能設(shè)計;支持傳感通信的接口

1.3 支持低能耗的微型內(nèi)核

為了降低能耗,γOS設(shè)計了一種相對簡單的內(nèi)核機制,它由兩部分組成:系統(tǒng)初始化代碼以及一個微小的核心調(diào)度組件。系統(tǒng)初始化代碼具有平臺相關(guān)性;核心調(diào)度組件實現(xiàn)基于優(yōu)先級的兩級調(diào)度機制,它分別由兩個調(diào)度隊列組成:事件隊列和任務(wù)隊列。事件隊列優(yōu)先級高于任務(wù)隊列的優(yōu)先級,每個隊列內(nèi)部基于FIFO調(diào)度機制。

圖1γOS的內(nèi)核調(diào)度示意圖

此外,為了降低能耗,在借鑒TinyOS的能耗管理算法的基礎(chǔ)之上,設(shè)計實現(xiàn)了能耗控制組件:動態(tài)電源管理DPM組件和動態(tài)電壓調(diào)整DVS組件。

1.4 微線程的系統(tǒng)架構(gòu)

圖2微線程的系統(tǒng)架構(gòu)

如圖2所示,γOS的通過組件來實現(xiàn)基于事件驅(qū)動模式的微線程系統(tǒng)架構(gòu),采用事件觸發(fā)去喚醒相應(yīng)的功能組件工作。每個功能組件可以由以下幾個部分組成:事件處理函數(shù)用以實現(xiàn)對底層硬件中斷的處理,如MCU外部中斷、定時器中斷等,它可以向核心調(diào)度組件提交任務(wù),但并不等待任務(wù)的執(zhí)行。事件優(yōu)先級高,可搶占任務(wù)執(zhí)行,可以傳遞。

它提供了一個簡明的方法用于抽象軟硬件之間的邊界,使得支持硬件中斷變得非常簡單。

命令: 用以執(zhí)行對底層組件的操作,是非阻塞的,且必須向調(diào)用者返回命令執(zhí)行的結(jié)果(成功或失敗)。

任務(wù):用于表示組件中計算相對集中的一組操作。任務(wù)不具有搶占性,任務(wù)與任務(wù)之間是原子化的,以先進先出的方式執(zhí)行,即一個任務(wù)必須執(zhí)行完之后才能執(zhí)行下一個任務(wù)。但任務(wù)可以被事件處理函數(shù)搶占。

組件狀態(tài)用以表示組件當(dāng)前的工作狀態(tài),可以被自己的功能函數(shù)或其他組件所參考。

利用微線程的系統(tǒng)架構(gòu),γOS可有效降低上下文切換代價;同時,通過引入原子語句來處理任務(wù)和事件,甚至事件和事件之間的并發(fā)操作,實現(xiàn)微線程異步通訊機制,有效地避免阻塞、輪詢和數(shù)據(jù)資源競爭。

1.5 組件化的功能設(shè)計

在特定應(yīng)用場合下,需要大量的不同種類的傳感器協(xié)同合作來完成特定應(yīng)用事件,因而傳感器上運行的軟件系統(tǒng)具備相對較好的靈活性和可配置性。

為此,γOS提供了對組件化的功能設(shè)計方式的支持。γOS可分解為一個核心調(diào)度組件和若干功能組件。現(xiàn)有的功能組件主要包括:能耗控制組件如動態(tài)電源管理DPM組件和動態(tài)電壓調(diào)整DVS組件,AntIP協(xié)議(支持微型嵌入式TCP/IP協(xié)議)組件,USB驅(qū)動組件,網(wǎng)卡驅(qū)動組件和XML分析器組件等。

根據(jù)不同應(yīng)用配置不同的功能組件,以實現(xiàn)特定的目標(biāo)。γOS支持靜態(tài)配置和動態(tài)加載兩種方式。靜態(tài)配置組件最少可只包括一個核心調(diào)度組件,而其他的功能組件

可根據(jù)相應(yīng)的應(yīng)用需求選擇預(yù)先靜態(tài)配置方式或者動態(tài)加載方式。

圖3γOS組件示意圖

1.6 支持傳感通信的接口

γOS通過AntIP組件實現(xiàn)對傳感器通信的接口支持,主要有支持傳感器節(jié)點間的對等(Peer-To-Peer)通信和組播通信模式,支持傳感器節(jié)點與PC間的對等通信模式和支持基于事件的異步通信處理模式。

AntIP是一個適用于8/16位機的微型嵌入式TCP/IP協(xié)議棧,它盡管去掉了許多全功能協(xié)議棧中不常用的功能,但仍然保留了網(wǎng)絡(luò)通信所必要的協(xié)議機制,支持ARP,IP,ICMP,TCP,UDP等協(xié)議,并且提供了簡易的應(yīng)用層接口和設(shè)備驅(qū)動層接口。AntIP的設(shè)計借鑒了uip的設(shè)計思想。

2 典型應(yīng)用

圖4硬件平臺示意圖

γOS是以網(wǎng)絡(luò)傳感器應(yīng)用為目標(biāo)的,它可以運行在多種目標(biāo)傳感器上。我們采用γOS機制,針對圖像數(shù)據(jù)采集方面的應(yīng)用,設(shè)計了一套較典型的網(wǎng)絡(luò)圖像傳感器系統(tǒng)。該系統(tǒng)主要由主控模塊、存儲模塊、USBhost模塊、以太網(wǎng)模塊、攝像頭模塊和串口模塊(預(yù)留接口)組成,采用的芯片分別為Philips公司的p89c60x2(80C51芯片)、USB控制芯片SL811HS、RAM芯片62256和NIC芯片RTL8019AS。

平臺部分初始化代碼(AntC語言)如下:

useSL811HS

useCamera

useRTL8019

classPlatform

{

publicstaticintInit()

{

RTL8019.Init();

if(SL811HS.UsbInit()==FALSE)

return-1;

if(Camera.CameraInit()==FALSE)

return-1;

if(Camera.CameraStart()==FALSE)

return-1;

AntIP.Init();

return1;

}

publicstaticvoidStart()

{

postAntIP.Run;

}

publicstaticvoidmain()

{

Init();

Start();

}

}

該部分代碼做了網(wǎng)卡模塊、USB模塊以及攝像頭模塊的初始化工作。

三 結(jié)語

采用γOS的網(wǎng)絡(luò)圖像傳感器的各模塊的代碼量及所需數(shù)據(jù)空間大小如表1所示。從該表中可看出γOS的核心代碼量基本接近TinyOS的核心代碼量。

表1模塊代碼量與所需數(shù)據(jù)空間

在這篇文章中,我們簡要闡述了網(wǎng)絡(luò)傳感器在普適計算環(huán)境下的應(yīng)用特點,介紹了一個以網(wǎng)絡(luò)傳感器為應(yīng)用目標(biāo)的嵌入式操作系統(tǒng)γOS的設(shè)計和幾個特點,并建立了一個典型應(yīng)用平臺,最后簡要給出了γOS在該平臺上的性能。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2557

    文章

    51751

    瀏覽量

    758918
  • 嵌入式
    +關(guān)注

    關(guān)注

    5105

    文章

    19288

    瀏覽量

    310201
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6942

    瀏覽量

    124175
收藏 人收藏

    評論

    相關(guān)推薦

    C語言嵌入式系統(tǒng)編程技巧

    C語言嵌入式系統(tǒng)編程技巧不同于一般形式的軟件編程嵌入式系統(tǒng)編程建立在特定的硬件平臺上,勢必要求
    發(fā)表于 12-23 10:40

    C語言嵌入式系統(tǒng)編程修煉之道

    不同于一般形式的軟件編程嵌入式系統(tǒng)編程建立在特定的硬件平臺上,勢必要求其編程語言具備較強的硬件直接操作
    發(fā)表于 08-01 22:45

    C語言嵌入式系統(tǒng)編程修煉

    C語言嵌入式系統(tǒng)編程修煉
    發(fā)表于 08-06 15:24

    C語言嵌入式系統(tǒng)編程修煉之道

    C語言嵌入式系統(tǒng)編程修煉之道
    發(fā)表于 08-15 12:43

    C語言嵌入式系統(tǒng)編程

    C語言嵌入式系統(tǒng)編程
    發(fā)表于 08-18 07:48

    如何學(xué)習(xí)C語言嵌入式系統(tǒng)編程

    不同于一般形式的軟件編程嵌入式系統(tǒng)編程建立在特定的硬件平臺上,勢必要求其編程語 言具備較強的硬件直接操作能力。無疑,匯編
    發(fā)表于 11-11 19:55

    嵌入式操作系統(tǒng)的發(fā)展

    一.嵌入式操作系統(tǒng)1.嵌入式操作系統(tǒng)的發(fā)展(1)Tiny OS操作系統(tǒng)1)開源深度輕量級
    發(fā)表于 10-27 07:26

    C語言嵌入式系統(tǒng)編程教程

    C語言嵌入式系統(tǒng)編程教程 不同于一般形式的軟件編程嵌入式系統(tǒng)編程建立在特定的硬件平臺上,勢必
    發(fā)表于 02-10 10:33 ?200次下載

    cc++嵌入式系統(tǒng)編程.rar

    cc++嵌入式系統(tǒng)編程 操作系統(tǒng)恐懼癥(osophobia)[名] 嵌入式系統(tǒng)開發(fā)人員普遍存在的恐懼癥
    發(fā)表于 03-04 16:40 ?63次下載

    C語言嵌入式系統(tǒng)編程修煉之道

    不同于一般形式的軟件編程嵌入式系統(tǒng)編程建立在特定的硬件平臺上,勢必要求其編程語言具備較強的硬件直接操作
    發(fā)表于 11-03 16:35 ?234次下載

    C語言嵌入式系統(tǒng)編程修煉

    不同于一般形式的軟件編程嵌入式系統(tǒng)編程建立在特定的硬件平臺上,勢必要求 其編程語言具備較強的硬件直接
    發(fā)表于 01-08 17:25 ?17次下載

    C語言嵌入式系統(tǒng)編程教程

    C語言嵌入式系統(tǒng)編程教程
    發(fā)表于 01-16 13:54 ?36次下載

    C嵌入式系統(tǒng)編程

    C嵌入式系統(tǒng)編程
    發(fā)表于 10-23 16:27 ?14次下載

    C語言嵌入式系統(tǒng)編程修煉之道

    C語言嵌入式系統(tǒng)編程修煉之道
    發(fā)表于 10-24 08:36 ?29次下載
    C<b class='flag-5'>語言</b>的<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)編程</b>修煉之道

    課堂筆記之嵌入式Linux操作系統(tǒng)

    嵌入式操作系統(tǒng)開發(fā)工具、系統(tǒng)應(yīng)用開發(fā)(&GUI)、系統(tǒng)移植、驅(qū)動、內(nèi)核。4、所具備的知識體系
    發(fā)表于 11-02 09:51 ?15次下載
    課堂筆記之<b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>操作系統(tǒng)</b>
    主站蜘蛛池模板: 人人澡人人澡人人看青草 | 涩狠狠狠狠色 | 日本欧美一区二区免费视 | 福利视频入口 | 五月婷婷激情综合 | 蜜月mv国产精品 | 免费看国产片 | 四虎www成人影院观看 | 在线激情网| 国产女人视频 | 天天干天天爱天天操 | 久久天天躁夜夜躁狠狠躁2015 | 51国产午夜精品免费视频 | 钻石午夜影院 | 欧美日韩精品一区二区另类 | 婷婷综合激六月情网 | 日韩毛片高清免费 | 天堂tv亚洲tv日本tv欧美人tv | 操她视频网站 | 精品国产免费久久久久久婷婷 | 经典三级一区二区三区视频 | 中文字幕在线看精品乱码 | 日本三级2018亚洲视频 | sihu国产午夜精品一区二区三区 | 黄色一级毛片看一级毛片 | 午夜免费观看_视频在线观看 | 天天射天天色天天干 | 婷婷亚洲综合五月天在线 | 777kkk亚洲综合欧美色老头 | 日本特级淫片免费 | 激情天堂| 色播影院性播免费看 | 亚洲精品黄色 | 天堂视频在线视频观看2018 | 欧美12一13高清视频 | www.毛片在线观看 | 日韩一级特黄毛片在线看 | 天堂bt在线网bt | 国产成+人+综合+亚洲欧美丁香花 | 四虎影院在线观看网站 | 色综合天天射 |