許葵元 信陽職業技術學院數學與計算機學院
從油田設備數據管理角度出發,詳細分析了油田集成設備數據采集中Camera模塊的整體架構及Camera模塊各層的結構,QSD8×50上Camera模塊的驅動程序及其向上層提供的用戶空間接口和功能,S5PC110上Camera的驅動實現方式及其接口;研究Camera的硬件抽象層中定義的統一接口及其功能。
油田集成設備數據采集的最高一層就是應用程序層,系統的應用程序都在這層中,應用程序基本上都是用油路數據來編寫的,直接調用下一層提供的API來編寫本層的應用程序[1]。
應用程序框架層是油田集成設備數據采集的第二層,該層向應用層提供API。普通的開發者可以使用本層的接口來編寫上層的應用程序,該層提供的API有一部分并未在本層實現,這部分的API在本地框架層數據庫實現。在本層中主要有Activity Manager、WindowManager和 LocationManager等基本框架。其中ActivityManager是用于活動的管理,它提供的接口用于管理應用程序層的生命周期和控制應用的導航,扮演著控制者的角色;Window Manager提供的接口用于管理所有啟動的窗口;ContentProviders是內容提供者,它向應用程序提供服務,通過這種服務應用程序可以實現數據的相互訪問和共享;ViewSystem包含豐富的、可擴展的視圖集合,主要用于構建應用程序的用戶界面;NotificationManager用于消息通知管理,它能夠在不影響用戶正常操作和使用設備的時候在狀態欄提供消息的提示;PackageManager用于包管理,能夠管理所有安裝在系統內的應用程序;Telephony Manager用于電話管理,用于管理與電話相關的功能;ResourceManager用于管理非代碼的資源,它常用來管理系統中的圖片、用戶界面和字體等非代碼資源;LocationManager用于位置管理,用于管理地圖服務的功能。
油田集成設備數據采集包含一個數據庫的集合,它提供給油田集成設備數據采集的各個組件來使用。上層應用程序開發者可以通過調用油田集成設備數據采集的應用程序框架提供的接口來使用本地庫的這些庫。
JNI(油路數據NativeInterface)技術是油路數據平臺的一部分,它允許油路數據代碼和其他語言的代碼進行交互,使得在油路數據虛擬機內部運行的油路數據代碼與其他編程語言和庫進行交互操作。
油田集成設備數據采集的CPP代碼調用油路數據代碼的原理是:CPP代碼找到油路數據代碼class里面要訪問對象的入口地址,然后在CPP中調用油路數據代碼[2]。具體的調用步驟如下:①使用JNI_Create油路數據VM()來加載虛擬機;②使用FindClass()函數找到該油路數據類的實例對象的引用;③使用GetFieldID()函數獲取要訪問的域ID;④如果要訪問的是油路數據代碼中的一個方法,使用GetMethodID()函數獲取到要訪問的方法的ID;⑤使用CallBooleanMethod()的函數調用該油路數據對象的那個成員函數。
將新數據采集庫中的當前位置的數據點的值來和這些數據采集模型進行匹配。如果匹配到某個數據采集模型,則用該數據點更新該數據采集模型及其權值和優先級;如果沒有匹配的模型,則新建一個數據采集模型,用這個新建的模型代替原有模型中優先級最低的模型,最后選擇幾個優先級較高的模型作為背景模型。
油田集成設備數據采集中油路數據代碼調用CPP代碼時,主要使用JNINativeMethod這個結構體[3]。在這個結構體中有三個指針:第一個指針指向油路數據代碼中調用CPP函數的入口;第二個指針指向CPP函數的返回值;第三個指針指向CPP函數名。CPP代碼調用油路數據代碼的步驟如下:①通過JNINativeMethod結構體來描述油路數據代碼調用函數和CPP函數的對應關系;②使用油田集成設備數據采集Runtime::registerNativeMethods()將CPP函數注冊到油路數據中的某個class中,這樣油路數據代碼就可以直接調用CPP函數。
油田設備數據采集過程中,通過建立進程數據庫,對數據信息進行調用。通過對不同的數據層進行優化,確保信息能夠注冊到不同的環節中,提高二次調用數據的能力。開發了適合油田設備數據管理的一套Binder,基于寬松的Apache協議發布。相對于Socket、管道等傳統的IPC機制,Binder有著更加系統化的結構,它可以實現遠程函數調用(RPC),確保不同的數據信息能夠得到控制和優化。
[1]李冠宇,劉軍,張俊.分布式異構數據集成系統的研究與實現[J].計算機應用研究,2004(3):17-18.
[2]葉范波,唐任仲,賈東澆.面向中小企業過程集成的數據集成平臺研究[J].浙江大學學報:工學版,2006(11):20-21.
[3]王軍,呂震中,王培紅,等.電力企業監控信息系統與管理信息系統集成方案探討[J].中國電力,2001(2):28-29.