亚洲免费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.

        91精品国产91久久久无码95| 在线亚洲国产一区二区三区| 国产大全一区二区三区| 亚洲精品偷拍自综合网| 国产超碰人人做人人爽av大片| 国产在线无码一区二区三区| 国产成年无码久久久免费| 亚洲免费福利视频网站| 精品国产自在现线看久久| 小辣椒福利视频导航| 亚洲熟妇色xxxxx欧美老妇y| 日韩人妻无码精品二专区| 中文字幕一区二区三区亚洲| 日本中文一区二区在线观看| 色老板精品视频在线观看| 亚洲日韩欧美一区二区三区| 婷婷精品国产亚洲av| 亚洲一二三四五中文字幕| 脱了老师内裤猛烈进入| 日日碰狠狠躁久久躁9| 日本a在线天堂| 日本一区二区三区高清视| 国产精品欧美久久久久久日本一道| 国产精品igao视频网| 国产精品综合久久久久久久免费| 国产不卡av一区二区三区| 一区二区精品国产亚洲| 骚片av蜜桃精品一区| 91人妻无码成人精品一区91| 亚洲伊人av综合福利| 野花香社区在线视频观看播放| 人妻影音先锋啪啪av资源| 亚洲日本国产乱码va在线观看| 99久久国产免费观看精品| 影音先锋中文字幕无码资源站| 吃奶还摸下面动态图gif| 久九九久视频精品网站| 国产激情自拍在线视频| 亚洲精品久久久久久久蜜桃| 无码精品日韩中文字幕| 国产精品一区2区三区|