亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于云計算的MCU應(yīng)用開發(fā)平臺

        2011-07-24 03:20:40何漢青
        關(guān)鍵詞:嵌入式用戶信息

        何漢青,李 寧

        (1.武漢理工大學(xué)網(wǎng)絡(luò)信息中心,湖北武漢430070;2.武漢理工大學(xué)計算機科學(xué)與技術(shù)學(xué)院,湖北武漢430070)

        云計算是一種新型的基于Internet的超級計算模式。云計算將共享的軟硬件資源和信息按需提供給用戶,允許用戶在不了解提供服務(wù)的技術(shù)、沒有相關(guān)知識以及設(shè)備操作能力的情況下,通過Internet獲取服務(wù)[1-2]。

        傳統(tǒng)的MCU開發(fā)一直使用專業(yè)的集成環(huán)境,通常與Internet沒有太多的聯(lián)系。近年來IC廠商推出新MCU的速度非常迅猛,開發(fā)者對新MCU進行開發(fā)時,需從Internet中獲得相關(guān)信息。若能將云計算引入到MCU開發(fā)工具中,將用戶所需要的知識自動地推到用戶面前[3-6],將大大加快MCU應(yīng)用開發(fā)的進度。在分析傳統(tǒng)MCU開發(fā)工具缺陷的基礎(chǔ)上,介紹了筆者開發(fā)的基于云計算的MCU應(yīng)用開發(fā)平臺Coocox Tools。

        1 傳統(tǒng)MCU應(yīng)用開發(fā)工具的缺陷

        1.1 大量時間用于資料的整理和甄別

        在MCU應(yīng)用開發(fā)之前,工程師通常需要進行選型工作,包括MCU、外圍IC、開發(fā)工具和技術(shù)支持等。開發(fā)過程中也需要大量相關(guān)的資料,如各種數(shù)據(jù)手冊、電路圖、例程和應(yīng)用筆記等。這些資料通常從IC廠商的網(wǎng)站和一些專業(yè)網(wǎng)站中獲得,有些可信,有些則需要進行甄別。另外,工程師還需從大量資料中找到自己所關(guān)注的部分。資料的收集、整理和甄別通常要花費大量的時間,傳統(tǒng)的MCU開發(fā)工具不能為工程師提供相關(guān)的幫助。

        1.2 孤立的工程師

        完成MCU應(yīng)用開發(fā)都不會是一個大的團隊,多數(shù)情況下只有幾個工程師,甚至只有一個工程師。在遇到問題的時候,通常是通過論壇、郵件組來與使用同樣MCU的工程師進行交流,但這種交流往往是不及時的。

        1.3 無法徹底關(guān)注業(yè)務(wù)層開發(fā)

        MCU應(yīng)用開發(fā)通常包含硬件設(shè)計和軟件設(shè)計兩部分,其中軟件設(shè)計包含底層驅(qū)動設(shè)計、操作系統(tǒng)移植、算法移植與優(yōu)化和應(yīng)用層設(shè)計。對于MCU應(yīng)用而言,最能體現(xiàn)產(chǎn)品特質(zhì)和性能的是應(yīng)用層設(shè)計,但工程師大量的工作都集中在底層驅(qū)動設(shè)計、操作系統(tǒng)及算法的移植上,無法專注于應(yīng)用業(yè)務(wù)層的軟件開發(fā)和優(yōu)化。

        由于目前市場要求MCU應(yīng)用產(chǎn)品的開發(fā)周期越來越短,以上這些問題的存在使得工程師使用傳統(tǒng)工具很難在有限開發(fā)時間內(nèi)保證產(chǎn)品的質(zhì)量,產(chǎn)品特質(zhì)亦不容易體現(xiàn),甚至難于完成開發(fā)任務(wù)。

        2 云計算帶來的信息整理方式變化

        如何從Internet的海量信息中抽取出對用戶有價值的信息,并整理為其所需要的格式成為網(wǎng)絡(luò)及數(shù)據(jù)挖掘領(lǐng)域研究的重要問題。Internet上信息整理方式大致有以下幾類。

        (1)分類目錄搜索。網(wǎng)站通過人工審核編輯信息,將其放入數(shù)據(jù)庫中。使用者根據(jù)分類在網(wǎng)站上查找所需信息,典型的是Yahoo。這種方式,分類清晰,但有時很難找到某些專門知識。

        (2)全文搜索。通過搜索軟件在Internet上所有網(wǎng)站搜索信息,然后按照一定規(guī)律建立一個很大的在線數(shù)據(jù)庫供用戶查詢。用戶只要輸入關(guān)鍵詞,就可以在已建立的索引數(shù)據(jù)庫中查詢[7-8],典型的是Google。

        (3)Wiki。每個人都可以通過編輯頁面對自己關(guān)注的詞條進行創(chuàng)建、編輯、修改和討論,就像公共白板。Wiki依靠集體的力量,開創(chuàng)了一種借助互聯(lián)網(wǎng)創(chuàng)建、積累、完善和分享知識的全新模式。具有共同興趣的人可以很快將相關(guān)領(lǐng)域的知識整理得非常完善,甚至可以創(chuàng)造出許多新的知識。Wiki上的信息通常專業(yè)而且準(zhǔn)確。

        (4)開放互動式知識問答分享平臺,眾多用戶自行提問與提供解答,借助眾人的經(jīng)驗與專長,在問與答的討論之間,幫使用者找到滿意的答案。典型的有Yahoo Answers。這種方式采取有針對性的提問,可以獲得非常及時而且專業(yè)的幫助。

        從以上信息整理方式來看,如何整理知識將是Internet發(fā)展過程中一直努力的方向。云計算時代的到來,提出了軟件即服務(wù)的概念,云軟件打破以往大廠壟斷的局面,所有人都可以在上面自由揮灑創(chuàng)意,提供各式各樣的軟件服務(wù)。云計算將充分利用上述各種信息整理方式,利用集體智慧產(chǎn)生更多的有效信息[9-10]。如果在嵌入式開發(fā)工具中引入云計算,會給嵌入式開發(fā)帶來完全不同的新體驗。

        3 基于云計算的MCU開發(fā)

        基于云計算的MCU開發(fā)工具是一個云軟件,它可以像用水、用電一樣隨時使用網(wǎng)絡(luò)中的有效信息。當(dāng)用戶對某款MCU進行應(yīng)用開發(fā)時,相關(guān)知識(數(shù)據(jù)手冊、例程、算法和電路圖等)應(yīng)被推到開發(fā)者面前。同時,用戶也可以將自己的相關(guān)知識與其他使用同樣MCU的開發(fā)者分享。理想的基于云計算的MCU開發(fā)工具,對于用戶而言只需要一個瀏覽器,如圖1所示。編輯、編譯、存儲、項目管理和資料管理等均在云端完成,用戶只要使用任意一個帶有瀏覽器并可訪問Internet的設(shè)備,就可以隨時隨地進行開發(fā)。ARM公司推出的快速原型驗證工具mbed就是一個這樣的平臺,如圖2所示,用戶只要有一個簡易的驗證平臺,訪問embed.org網(wǎng)站就可以在瀏覽器上完成編輯、編譯和項目管理,并可與其他用戶交流。不過,mbed只是一個快速原型的驗證平臺,不具備完整的嵌入式開發(fā)工具鏈的功能。筆者所在團隊開發(fā)了一套完整的基于云計算的MCU開發(fā)工具鏈Coocox Tools。

        圖1 基于瀏覽器的嵌入式系統(tǒng)開發(fā)

        圖2 快速原型開發(fā)平臺mbed

        4 Coocox Tools

        4.1 Coocox Tools的總體結(jié)構(gòu)

        Coocox Tools的總體架構(gòu)如圖3所示,對于MCU開發(fā)者而言,Coocox Tools包含 CoIDE、CoFlash、CoAssistant、CoLinkEx、CoOS 和 CoCenter。Coocox Tools可以在 www.coocox.org網(wǎng)站免費下載,Coocox Tools的總體結(jié)構(gòu)如圖3所示。

        圖3 Coocox Tools的總體結(jié)構(gòu)

        4.2 CoIDE

        CoIDE是 Coocox Tools的核心,與傳統(tǒng) IDE不同之處在于:其編程方式是基于組件的,而其中的組件、例程和幫助均可通過網(wǎng)絡(luò)自動更新和交互。CoIDE的編輯界面如圖4所示,它有4個與其他IDE不同的窗口:組件窗口、組件樹窗口、例程窗口和幫助窗口。

        圖4 CoIDE編輯界面

        (1)組件窗口。組件是一組相對獨立的代碼、外設(shè)的驅(qū)動程序和一些算法,操作系統(tǒng)也可以是組件。用戶選擇某款MCU后,該MCU可用的組件將列在組件窗口中,用戶只需勾選,即可將相應(yīng)的代碼自動加入工程中。如果有足夠多的組件,則只需勾選組件即可完成除應(yīng)用層之外的所有軟件開發(fā)工作。組件窗口是一個瀏覽器窗口,任何用戶都可按照Coocox組件標(biāo)準(zhǔn)上傳自己的組件,與其他用戶分享。開發(fā)者在使用其他用戶提供的組件時,可以對組件進行評價、打分,組件窗口可按分值對組件排名。

        (2)組件樹窗口。用戶在組件窗口勾選組件之后,被勾選的組件以樹的形式組織在組件樹窗口中,組件樹和工程樹是完全對應(yīng)的。在組件樹中選中某個組件時,工程樹中對應(yīng)的文件會高亮,且在例程窗口中也會自動顯示該組件的例子。

        (3)例程窗口。在組件樹窗口中選中某組件時,相關(guān)例子將羅列在例程窗口中,用戶可以參考,也可將該例子代碼添加到工程中。與組件窗口一樣,例程窗口也是一個瀏覽器,任何用戶都可上傳自己的例子與其他用戶分享,也可評價其他用戶提供的例子。

        (4)幫助窗口。幫助窗口根據(jù)用戶焦點的變化提供各種相關(guān)信息。選擇處理器時,可以提供處理器基本信息、數(shù)據(jù)手冊;勾選組件時,可以提供組件的API信息;查看例程時,提供例程的原理圖及所對應(yīng)評估板的信息。

        在未來,CoIDE將會是一個基于Web的IDE,用戶只需用瀏覽器訪問Coocox網(wǎng)站即可使用。如圖5所示,CoIDE將不僅是一個IDE,還是一個MCU開發(fā)者交流開發(fā)信息及知識的網(wǎng)絡(luò)平臺。

        4.3 CoFlash

        圖5 基于云計算的IDE

        CoFlash是一個免費的Flash編程工具,提供圖形和命令兩種編程方式。與其他Flash燒寫工具的不同之處是:CoFlash允許用戶自定義燒寫算法,并將自己新增的燒寫算法上傳與其他用戶分享,也可對其他用戶提供的算法做評價。

        4.4 CoAssistant

        CoAssistant是一個在線編程輔助工具,只要訪問 http://www.coocox.com:8080/coassistant_en/rap即可。選擇某款MCU后,其寄存器的細節(jié)信息將直觀地呈現(xiàn)在用戶面前,如圖6所示。無需查閱處理器技術(shù)手冊,即可輕松實現(xiàn)對相關(guān)外設(shè)的配置。用戶還可以通過加評論,將自己使用某個外設(shè)或某個寄存器的心得與其他用戶分享。

        圖6 CoAssistant查看界面

        4.5 CoLinkEx

        CoLinkEx是一個免費、開源的ICE方案,支持JTAG和SWD調(diào)試接口,適用于各種Cortex-M0和Cortex-M3處理器。除了可用于Coocox Tools之外,還支持傳統(tǒng)工具MDK和IAR。

        4.6 CoOS

        CoOS是一個免費和開源的 RTOS,特別為Cortex-M處理器設(shè)計,支持時間片輪詢和優(yōu)先級搶占兩種任務(wù)切換方式;支持信號量、郵箱、隊列、事件標(biāo)志、互斥體等多種進程同步機制;具有高度可裁剪性,最小內(nèi)核僅974字節(jié);任務(wù)切換時允許中斷;支持堆棧溢出檢測;支持多種編譯器,如 ICCARM、ARMCC、GCC。在 CoIDE 中,CoOS也是一個組件,通過勾選即可將CoOS源碼加入到自己的工程中,用戶修改OS_Config.h文件中的任務(wù)數(shù)、堆棧和系統(tǒng)時鐘頻率等相關(guān)配置后即可實現(xiàn)移植。

        4.7 CoCenter

        CoCenter是一個Coocox用戶的中心,提供用戶注冊、軟件下載及更新等功能。在未來,Coocox還將提供一個專用的即時通信工具,使用同一處理器的開發(fā)者將自動被分配到同一個組中,這些用戶可在線進行實時交流。

        5 結(jié)論

        Coocox Tools的目的是建立一個嵌入式開發(fā)者社會網(wǎng)絡(luò)平臺,這種基于云計算的嵌入式開發(fā)平臺與傳統(tǒng)嵌入式開發(fā)工具的不同在于:

        (1)根據(jù)開發(fā)者的需求,將開發(fā)所需的各種信息和知識整理好;用戶選擇所使用處理器后,這些相關(guān)信息就會被推給用戶,節(jié)省了大量的開發(fā)時間。

        (2)開發(fā)者不再是孤獨的,及時的在線交流可以縮短開發(fā)者解決問題的時間。

        (3)利用集體的智慧來整理信息,可以較快提取出有效的知識進行共享。

        在未來,云計算的嵌入式開發(fā)平臺不僅是開發(fā)者之間的信息交流平臺,還應(yīng)該是開發(fā)者之間的交易平臺,用戶可以相互交易代碼和服務(wù),也可以成為廠商與開發(fā)者的信息交流平臺。

        [1]DANIELSON K.Distinguishing cloud computing from

        utility computing[EB/OL].[2011 - 02 - 23].http://www.ebizq.net/blogs/saasweek/2008/03/distinguishing_cloud_computing/.

        [2]SIMSK.IBM introduces ready-to-use cloud computing:collaboration services get clients started with cloud computing[EB/OL].[2011 - 02 - 23].http://www-03.ibm.com/press/us/en/pressrelease/22613.

        [3]ERICK,GALEN G.What cloud computing reallymeans[EB/OL].[2011 -02 - 23].http://www.infoworld.com/d/cloud-computing/what-cloud-computingreally-means-031.

        [4]BOSSG,MALLADIP,QUAN D,et al.Cloud computing[EB/OL].[2011 - 02 - 23].http://download.boulder.ibm.com/ibmdl/pub/software/dw/wes/hipods/Cloud_computing_wp_final_8Oct.pdf.

        [5]陳康,鄭緯民.云計算:系統(tǒng)實例與研究現(xiàn)狀[J].軟件學(xué)報,2009,20(5):1337 -1348.

        [6]李寧,宋薇,周薇.嵌入式開發(fā)工具發(fā)展趨勢[J].單片機與嵌入式系統(tǒng)應(yīng)用,2008(5):5-8.

        [7]BARROSO L A,DEAN J,HOLZLE U.Web search for a planet:the Google cluster architecture[J].IEEE Micro,2003,23(2):22 -28.

        [8]GHEMAWAT S,GOBIOFF H,LEUNG ST.The Google file system[C]//Proceedings of the 19th ACM Sympposium on Operating Systems Principles.New York:ACM Press,2003:29 -43.

        [9]CHANG F,DEAN J,GHEMAWAT S,et al.Bigtable:a distributed storage system for structured data[C]//Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation.Seattle:WA,2006:205-218.

        [10]DEAN J,GHEMAWAT S.Distributed programming with mapreduce[M].Sebastopol:O 'Reilly Media Inc,2007:371 -384.

        猜你喜歡
        嵌入式用戶信息
        搭建基于Qt的嵌入式開發(fā)平臺
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        如何獲取一億海外用戶
        展會信息
        中外會展(2014年4期)2014-11-27 07:46:46
        Altera加入嵌入式視覺聯(lián)盟
        倍福 CX8091嵌入式控制器
        自動化博覽(2014年4期)2014-02-28 22:31:15
        亚洲一区视频在线| 日本三级吃奶头添泬| 99久久婷婷国产综合精品青草免费 | 九一精品少妇一区二区三区 | 中文字幕精品一区二区日本| 日本免费看片一区二区三区| 日本大乳高潮视频在线观看| 真人二十三式性视频(动) | 在线亚洲人成电影网站色www| 男女好痛好深好爽视频一区| 综合久久一区二区三区| 男人吃奶摸下挵进去啪啪软件 | 男人天堂亚洲天堂av| 日本最新免费二区| 在线中文字幕有码中文| 日韩精品首页在线观看| 国产一区二区三区视频地址| 最新国产福利在线观看精品| 亚洲欧美日韩国产一区| 女同av免费在线播放| 极品一区二区在线视频观看| 国产精品51麻豆cm传媒| 亚洲AV无码国产成人久久强迫| 日韩中文字幕一区二十| www夜插内射视频网站| 欧洲成人午夜精品无码区久久| 精品国产一区二区三区久久女人| 日本高清在线播放一区二区| 成人免费无码大片a毛片| 成人免费网站视频www| 欧美巨大xxxx做受中文字幕| 亚洲精品国产av日韩专区| 国产精品理论片| 四虎欧美国产精品| 一区二区三区av资源网| 亚洲av无码专区国产不卡顿| 久久精品国内一区二区三区| 成美女黄网站18禁免费| 日韩av一区二区观看| 免费人成再在线观看视频| 福利视频一二区|