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

        ?

        Mobile—C移動代理函數(shù)庫的封裝機制

        2015-08-28 04:10:14余志永包艷青
        卷宗 2015年8期

        余志永 包艷青

        摘 要:本文簡述了Mobile-C與Ch的優(yōu)勢,詳細介紹了Mobile-C移動代理函數(shù)庫的原理機制與封裝調用。通過Mobile-C移動代理來實現(xiàn)控制時,可以在運行中動態(tài)地切換成新的算法,函數(shù)庫的使用使得代理傳送的代碼量大大減少,減少網(wǎng)絡延時,同時使程序的結構簡單明了,為復雜控制的實現(xiàn)做好基礎。

        關鍵詞:Mobile-C;Ch;移動代理;函數(shù)庫封裝

        Mobile-C是一個基于FIPA標準的多代理平臺,是專為實現(xiàn)硬件的實時連接和資源受限制的應用而設計的。它支持智能機電系統(tǒng)和嵌入式系統(tǒng)中的C/C++的移動代理。移動代理是一種可以在不同的執(zhí)行環(huán)境之間移動的軟件組件,可以在運行時動態(tài)地創(chuàng)建,發(fā)送到遠程系統(tǒng)執(zhí)行任務。一個移動代理在遠程系統(tǒng)運行時,可以動態(tài)地改變運行著的程序的算法,而無須中斷、重新編譯和啟動遠程系統(tǒng),特別適用于動態(tài)變化的環(huán)境。

        Mobile-C作為普通的移動代理平臺,能夠應用到許多領域,適用于網(wǎng)絡智能機電一體化和嵌入式系統(tǒng)。例如,柔性自動化系統(tǒng)[2]。還可用于移動機器人的實時控制[3],實現(xiàn)算法間的切換和參數(shù)的修改。Mobile-C庫使Mobile-C代理機構可以嵌入到支持C/C++移動代理的程序中去。另外,通過Mobile-C API函數(shù),用戶可以完全控制嵌入到程序中的Mobile-C代理機構。因此,Mobile-C庫不僅為分布式應用提供了有效的代碼移動性,而且還促進了多代理系統(tǒng)的開發(fā),使其可以容易地與多種硬件設備交互。

        Ch是一個支持跨平臺的,具有強大擴展功能的C/C++程序的解釋器,即無需編譯即可執(zhí)行,無需修改程序即可跨平臺執(zhí)行。Ch作為Mobile-C的執(zhí)行引擎,使得Mobile-C具有Ch的所有優(yōu)點。Ch支持ISO 1990C標準的所有功能和ISO C99的大部分特性,還支持C++中基于對象的編程。如用C語言作為移動代理的代碼語言,可以容易的實現(xiàn)與底層硬件的交互,特別適用于機電一體化和嵌入式系統(tǒng)。而其它移動代理平臺,如:Mole、Aglets、Concordia、JADE,只支持Java開發(fā),Java語言又是不支持底層硬件開發(fā)。因此,Mobile-C在機電系統(tǒng)和嵌入式系統(tǒng)中很有優(yōu)勢。

        1 Mobile-C移動代理函數(shù)庫的原理機制

        首先,介紹Ch的函數(shù)庫調用的原理機制,它和Mobile-C下的相同。其次說明各個文件的作用。

        Ch SDK的開發(fā)可以通過完全新建源代碼來實現(xiàn),也可以通過對現(xiàn)有的二進制靜態(tài)庫、動態(tài)庫或共享庫進行二次封裝來實現(xiàn),從而加快開發(fā)的進度。本文中的控制代碼是源代碼,沒有現(xiàn)成的庫可以利用,因此選用第一種方式實現(xiàn)。下面先介紹Mobile-C移動代理函數(shù)庫的原理機制。如下圖1中以主程序的main

        函數(shù)中調用func1

        函數(shù)為例,來說明Ch中對C函數(shù)調用的過程。如圖所示,Ch空間指調用func1

        函數(shù)的程序空間由主程序和chf文件組成;C空間指func1

        函數(shù)和接口函數(shù)所封裝得到的函數(shù)庫的空間,由func1.c文件和func1_chdl.c文件封裝而成。

        函數(shù)時,首先調用fun1.chf文件,建立句柄打開動態(tài)庫,然后打開相應的函數(shù),把Ch空間的參數(shù)傳遞到C空間并運行庫函數(shù),最后傳回返回值并關閉句柄。動態(tài)庫是由func1.c文件和func1_chdl.c文件封裝成的動態(tài)函數(shù)庫libfun1.dl;也可以先將fun1c.c文件封裝成動態(tài)庫func1.dll,然后將封裝func1.dll時生成的靜態(tài)庫文件func1.lib和func1_chdl.c封裝成動態(tài)函數(shù)庫libfunc1.dl。

        需要封裝多個函數(shù)時,可以將各個函數(shù)文件funcn.c和funcn_chdl.c文件封裝成一個動態(tài)庫libfunc.dl;也可以用一個func.c文件包含各個函數(shù),一個func_chdl.c文件包含各個函數(shù)接口封裝成一個動態(tài)庫。前者每個函數(shù)有一個同名的chf文件,后者需要一個包含各個函數(shù)所需chf文件內容的chf文件,但是文件名需要和第一個函數(shù)的名相同,而且必須先調用第一個函數(shù)后才能調用其它的函數(shù)。當封裝的函數(shù)較多時前者的Makefile文件復雜,后者的Makefile文件則不因封裝函數(shù)的多少而變復雜。因此,選用后者來實現(xiàn)移動代理函數(shù)的封裝,同時減少了chf文件的個數(shù),優(yōu)化了程序結構。

        下面的圖2更形象的描繪出Ch SDK中各個文件的作用。

        2 總結

        使用Mobile-C,可以實現(xiàn)對終端代理的實時控制,動態(tài)地切換算法,控制方式靈活方便快捷,程序算法調試簡便,封裝成函數(shù)庫以后程序結構優(yōu)化有利于開發(fā)。移動代理技術的發(fā)展方向是分布式復雜系統(tǒng)的開發(fā),它能增強分布式系統(tǒng)的設計和分析。

        參考文獻

        [1] Mobile-C. A Multi-Agent Platform for Mobile C/C++ Agents[EB/OL].(2001-08-09)[2010-12-10] http://www.mobilec.org.

        [2] NESTINGER S S, CHEN B, CHENG H H. A Mobile Agent-Based Framework for Flexible Automation Systems[J]. IEEE/ASME TRANSACTIONS ON MECHATRONICS, 2010, 15(6): 942-951.

        [3] CHOU Y C, KO D, CHENG H H. An embeddable mobile agent platform supporting runtime code mobility, interaction and coordination of mobile agents and host systems[J]. Information and Software Technology, 2010, 52: 185-196.

        [4] CHENG H H. Scientific computing in the Ch programming language[J]. Scientific Programming, 1993, 2(3): 49-75.

        [5] CHENG H H. Ch: A C/C++ interpreter for script computing[J]. C/C++ Users Journal, 2006, 24(1): 6-12.

        [6] CHENG H H. Ch – an Embeddable C/C++ Interpreter[EB/OL]. [2009-04-15] http://www.softintegration.com.

        [7] CHOU Y C, KO D, CHENG H H. Mobile agent-based computational steering for distributed applications[J]. Concurrency and Computation: Practice and Experience, 2009, 21(18): 2377-2399.

        免费国产黄线在线播放| 五月丁香综合激情六月久久| 黑人巨茎大战欧美白妇| 国产人在线成免费视频麻豆| 一区二区三区四区四色av| 免费看黄色亚洲一区久久| 无码成人一区二区| 中文字幕在线码一区| 国产精品久久久精品三级18| 久久精品国产色蜜蜜麻豆国语版| 日本怡春院一区二区三区| 国产三级精品三级国产| 国产av区亚洲av毛片| 久久精品亚洲熟女av蜜謦| 中文字幕被公侵犯的漂亮人妻| 另类一区二区三区| 久久天堂精品一区专区av| 午夜视频在线观看一区二区小| 久久丫精品国产亚洲av不卡| 国产亚洲sss在线观看| 国产白浆一区二区三区佳柔| 久久精品国产亚洲av麻豆长发| 中日av乱码一区二区三区乱码| AV无码人妻一区二区三区牛牛| 91成人黄色蘑菇视频| 亚洲中文字幕成人无码| 久久精品国产99精品九九| 91精品国产色综合久久不| 精品国产午夜肉伦伦影院| 女厕厕露p撒尿八个少妇| 九九在线精品视频xxx| 亚洲视频一区二区免费看| 国产午夜福利在线观看红一片| 最新69国产成人精品视频免费| 精品人妻一区二区蜜臀av| 亚洲乱码中文在线观看| 黄色视频免费在线观看| 精品日韩欧美一区二区三区在线播放| 国产av一卡二卡日韩av| 久久不见久久见中文字幕免费| 粉嫩极品国产在线观看|