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

        ?

        基于NTP的Android時間同步系統(tǒng)設計與實現(xiàn)

        2015-10-15 06:19:04李華明康寶生
        時間頻率學報 2015年2期
        關鍵詞:應用程序終端測試

        李華明,康寶生

        (西北大學 信息科學與技術學院,西安710127)

        基于NTP的Android時間同步系統(tǒng)設計與實現(xiàn)

        李華明,康寶生

        (西北大學 信息科學與技術學院,西安710127)

        針對移動設備保持精確系統(tǒng)時間的需求,在對適用的時間同步協(xié)議分析的基礎上,設計并實現(xiàn)了一種基于NTP協(xié)議的Android系統(tǒng)時間同步系統(tǒng)。闡述了系統(tǒng)功能模塊和完整的時間同步工作流程,設計中采用了跨編譯的開發(fā)模式,形成了多層模塊化、可復用的系統(tǒng)架構。經(jīng)過適配性測試、性能測試和實驗結果分析,表明系統(tǒng)可為移動設備提供毫秒級精度的授時功能,并具備較好的設備適配性和運行時系統(tǒng)資源占用率低的特點。

        NTP協(xié)議; Android系統(tǒng); 時間同步; 跨編譯; 設備適配性

        0 引言

        隨著智能設備和網(wǎng)絡帶寬的技術發(fā)展,移動終端不再局限于通訊功能,高速的計算能力和智能操作系統(tǒng)使移動終端具備了巨大的發(fā)展空間,移動終端自身也發(fā)展出多種形式的產(chǎn)品,例如手機、平板電腦、電子書、手持游戲設備甚至工業(yè)控制設備等,越來越多的網(wǎng)絡服務和應用被移植到移動終端上。

        精確的系統(tǒng)時間作為分布式網(wǎng)絡應用系統(tǒng)的基礎支撐指標之一[1],其精確性對于移動設備而言越來越重要。例如手機商務辦公系統(tǒng)和事務提醒軟件,準確的系統(tǒng)時間是保證效率的關鍵因素之一;針對手機開發(fā)的訂票系統(tǒng)、電子商務軟件以及學習考試系統(tǒng),也不能缺少準確的時間控制;運動監(jiān)測系統(tǒng)、醫(yī)療輔助軟件則需要在準確的時間內(nèi)進行身體狀態(tài)分析或醫(yī)療措施的記錄等。從移動設備的安全性出發(fā),時間同樣是一個不可缺少的基礎參數(shù),智能操作系統(tǒng)用日志的方式記錄下每個時刻系統(tǒng)中運行的應用程序,以及這些程序進行的操作,準確的系統(tǒng)時間在安全評估中將起到重要的作用。不論是用戶應用的實際需要還是系統(tǒng)安全的保障需求,都對于移動設備保持時間的精度提出了更高的要求。

        1 時間同步方法概述

        利用已被廣泛應用的成熟可靠的授時體系,通過時間同步技術可以達到使移動設備保持準確時間的目的。可以應用于移動終端的時間同步方法主要有4種。第1種是采用NITZ(Network Identity and Time Zone)協(xié)議[2]的網(wǎng)絡對時方法,NITZ需要電信運營商和網(wǎng)絡設備支持,通過基于短波跳頻通信的時間信息同步法進行時間同步。目前移動設備使用最廣泛的Android操作系統(tǒng)和IOS操作系統(tǒng)中,內(nèi)置的時間同步功能都是基于NITZ協(xié)議實現(xiàn)的。由于NITZ自身的限制,其時間精度只能保持在分鐘級,而且在很多地區(qū)實際上是無效的。第2種方式是通過NTP協(xié)議[3]在網(wǎng)絡上獲得高精度的時間。NTP協(xié)議是基于TCP/IP的同步時間協(xié)議,利用協(xié)議包含的一個64 bit時間戳進行時間同步,其獲取國際標準時間UTC的來源是網(wǎng)絡中眾多的NTP時間服務器,通??色@得毫秒級的精度[4]。由于其穩(wěn)定性和高精度的特點,使用NTP協(xié)議進行時間同步,成為目前互聯(lián)網(wǎng)應用中使用最為廣泛的方法。第3種是通過衛(wèi)星信號實現(xiàn)時間同步的方法。隨著硬件技術的發(fā)展,大部分移動終端都包含了GPS模塊,部分移動終端也包含了“北斗”授時定位模塊,其中以GPS信號授時最為常見。GPS授時有多種途徑,例如通過1 PPS秒脈沖信號、串口通信、IRIG-B輸出等[5],在工業(yè)應用中可以保持毫秒級的時間精度。但手機等移動設備因為硬件限制不能采用這些時間同步方式。通過直接應用NMEA-0183協(xié)議[6]解析GPS信號,獲取$GPGGA或$GPRMC數(shù)據(jù)信息中的UTC時間,是第3種可行的移動設備時間同步方法,但這種方法依賴于衛(wèi)星信號的接收強度,對終端使用的環(huán)境和位置有明顯的限制條件。第4種方法是基于IEEE1588協(xié)議[7]進行時間同步,該協(xié)議又稱為精確時鐘同步協(xié)議PTP(precision time protocol),在設備之間建立主從關系,實現(xiàn)時間和頻率的同步,在1588v2版本推出后,其時間精度可以達到微秒級。Hsu[8]等將PTPd守護進程成功地部署在Android手機上,實現(xiàn)了移動設備之間的PTP時間同步。但由于該協(xié)議需要多個設備共同參與計算,因此對于普通用戶而言,不具備實用性。

        從上述的4種同步方法可以看出,對于移動設備的程序開發(fā)而言,NTP協(xié)議是硬件依賴性最小的時間同步協(xié)議,其應用的環(huán)境和位置也不受特殊限制,毫秒級的同步精確度能夠滿足各種移動應用系統(tǒng)需求。因此,本文選擇使用NTP協(xié)議作為時間同步系統(tǒng)實現(xiàn)的基礎協(xié)議。

        2 整體功能及流程描述

        在開源智能操作系統(tǒng)Android平臺基礎上,本文基于NTP協(xié)議設計了一個時間同步系統(tǒng),系統(tǒng)通過互聯(lián)網(wǎng)訪問NTP授時服務器獲得UTC時間,根據(jù)獲得的標準時間同步設備本機時間,以滿足移動設備用戶對時間的精確性的需求。整個系統(tǒng)的功能包括5個部分:①時間獲取及同步功能;②系統(tǒng)Root檢驗功能;③儒略日計算功能;④農(nóng)歷計算功能;⑤系統(tǒng)參數(shù)設置。

        時間獲取及同步功能,實現(xiàn)的是從授時服務器上獲取的標準時間和本機時間同步的功能,系統(tǒng)功能中的Root檢驗、儒略日計算和農(nóng)歷計算3個功能都是貫穿在整個時間獲取及同步工作流程中的。完整的工作流程如圖1所示。

        圖1 時間獲取及同步工作流程

        時間獲取及同步工作流程中,需要進行3次狀態(tài)檢驗,第1次為網(wǎng)絡連接狀態(tài)的判斷,通過Android系統(tǒng)提供的網(wǎng)絡連接管理器接口,可以獲取當前系統(tǒng)的連接狀態(tài),無論是采用2G、3G還是Wi-Fi連接方式,只要移動設備中存在有效的連接,即可進行下一步操作;第2次檢驗是針對是否獲得UTC標準時間,通過預先設定的超時閾值,在限定的時間內(nèi)由線程獲取授時服務器的標準時間,如果超時則標示服務器無應答;第3次判斷是針對應用程序是否具備修改時間的權限,出于安全性的目的,Android系統(tǒng)禁止在沒有Root權限的情況下,由程序修改系統(tǒng)時間,因此要執(zhí)行時間同步操作,必須先進行權限的檢查。應用程序級的Root權限檢測,可在靜默狀態(tài)下通過調(diào)用Shell環(huán)境下的su命令,向系統(tǒng)提出臨時切換用戶權限至Root高權限狀態(tài),通過判斷系統(tǒng)返回的信息,確定是否可以獲得高級別權限。

        儒略日和農(nóng)歷計算是將獲得的標準時間轉(zhuǎn)化成簡化儒略日和陰歷的時間信息。計算的陰歷的時間信息,包括陰歷日期、時辰、天干、節(jié)氣和屬相這些具有中國傳統(tǒng)特色的時間信息。系統(tǒng)參數(shù)設置功能是用來設置訪問的NTP授時服務器地址信息、訪問超時閾值、以及是否進行儒略日和農(nóng)歷計算。

        3 系統(tǒng)架構設計及實現(xiàn)

        移動應用App開發(fā)目前處于一個技術快速發(fā)展的時期,新的開發(fā)技術和架構不斷出現(xiàn),跨平臺的App開發(fā)是必然的發(fā)展趨勢[9]。本文中設計并開發(fā)的Android時間同步系統(tǒng)名為SmartTime,開發(fā)中選擇Microsoft Visual Studio 2010作為開發(fā)平臺,使用C#作為開發(fā)語言,通過Xamarin.Android框架實現(xiàn)了跨編譯環(huán)境的開發(fā)模式。應用程序在編譯時,被編譯為.NET框架中間語言IL代碼,運行時將由Xamarin框架自動轉(zhuǎn)換為機器碼。這種開發(fā)模式不同于傳統(tǒng)App開發(fā),它實現(xiàn)了統(tǒng)一編碼語言實現(xiàn)的業(yè)務邏輯代碼,可以在Android、IOS、Windows Phone甚至PC上的Windows多種操作系統(tǒng)上重用[10]。平臺間共享代碼模式,簡化了多平臺應用開發(fā)的復雜性,當針對某一具體平臺進行開發(fā)時,僅需要對其表示層根據(jù)操作系統(tǒng)特點進行定制開發(fā)。同樣,系統(tǒng)的開發(fā)必須采用分層架構設計,對表示層和業(yè)務層進行分離。

        SmartTime系統(tǒng)采用多層模塊化的架構設計,不但實現(xiàn)了表示層、業(yè)務層、數(shù)據(jù)層的分離,而且實現(xiàn)了面向?qū)ο蟮哪K化高內(nèi)聚、結構清晰的特點,提高了代碼的重用性。整個系統(tǒng)架構設計如圖2所示。

        圖2 SmartTime系統(tǒng)架構設計

        在表示層的實現(xiàn)過程中,SmartTime采用了多頁顯示的標簽界面模式,內(nèi)嵌了3個屏幕界面,不同界面切換采用Tab標簽的方式進行。當執(zhí)行時間獲取操作時,系統(tǒng)啟動TimeThread線程,獲取時間信息并進行相關計算,計算的結果反饋給主UI線程,繪制在設備屏幕上。多線程的異步任務模式,使SmartTime具備了良好的用戶體驗效果。圖3為時間同步系統(tǒng)實際運行界面圖。

        圖3 時間同步系統(tǒng)實際運行界面圖

        4 實驗測試與分析

        移動應用程序的部署和測試,與傳統(tǒng)開發(fā)過程不同,不能只局限于算法正確性和魯棒性(robustness)的測試,還必須進行軟件與移動設備的兼容適配性測試。大量終端廠商采用各式各樣的硬件配置、定制化非標準的Android系統(tǒng),使得應用程序與終端的適配性問題越來越嚴重,無法安裝、意外崩潰和閃退、屏幕比例失調(diào)、UI錯位、無響應等問題十分普遍。對SmartTime的兼容性測試采用了百度移動云測試中心的Native App云測試方法,針對HTC、三星、華為、中興等15個品牌的134臺移動設備進行了兼容測試,基本覆蓋了目前主流的硬件解決方案、屏幕分辨率和Android版本以及測試結果如表1所示。

        表1 終端兼容性測試

        在測試未通過的8臺設備中,3臺設備存在無法安裝的錯誤,4臺設備出現(xiàn)了閃退現(xiàn)象,1臺設備運行正常但存在程序無法卸載的情況。同時,使用monkey測試工具對系統(tǒng)進行了性能測試,在性能測試中,使用魅族MX3和三星Galaxy Note II兩臺手機作為測試設備,測試后的性能指標數(shù)據(jù)見表2。

        表2 性能測試數(shù)據(jù)

        在實驗中采用30 s的時間間隔,由SmartTime向NTP授時服務器(pool.ntp.org)發(fā)出時間請求,并對時間偏差數(shù)據(jù)進行記錄,累計300次后對數(shù)據(jù)進行分析,圖4為時間偏差結果圖。圖中X軸為次數(shù),Y軸為偏差秒數(shù)。分析計算后得出時間偏差的均值為0.203 ms,標準差為5.445 ms(分析結果的有效位數(shù)取小數(shù)點后3位)。

        圖4 測試時間偏差結果圖

        從上述實驗結果可以看出,SmartTime能夠為移動設備提供毫秒級精度的時間同步功能。根據(jù)表1的終端適配率可以看出,采用此架構設計開發(fā)出的應用程序具備了良好的設備兼容性,表2中的數(shù)據(jù)證明了不同的硬件配置對于應用程序的加載、電池耗量以及顯示幀率影響較大,但整體系統(tǒng)在運行過程中占有的系統(tǒng)資源小,能夠提供良好的用戶體驗。

        5 結語

        本文針對移動智能設備的精確定時需求,對適用的時間同步方法和協(xié)議進行了探討,選擇了使用NTP協(xié)議作為底層時間同步協(xié)議,設計并實現(xiàn)了一個應用于Android系統(tǒng)環(huán)境下的時間同步系統(tǒng)。系統(tǒng)整體架構采用了多層模塊化設計,實現(xiàn)了表現(xiàn)層與業(yè)務層的分離,開發(fā)過程中應用了跨編譯環(huán)境的開發(fā)模式。架構中業(yè)務代碼重用性高的優(yōu)勢,也使其可以通過定制表現(xiàn)層,快速構建出應用于其他智能系統(tǒng)環(huán)境下的時間同步系統(tǒng)。經(jīng)過實驗測試,該系統(tǒng)具有設備兼容率高、運行資源占用率低的特點,并能夠為移動設備提供毫秒級精度的時間同步功能。

        [1]趙英, 王旖旎, 馬嚴, 等.基于NTP的時鐘調(diào)整策略分析[J].小型微型計算機系統(tǒng), 2008, 29(10): 1811-1815.

        [2]BARI F, BONNER T W.Network identity and time zone(nitz) functionality for non-3gpp devices: United States, 20080 032736A1[P].2008-02-07.

        [3]MILLS D L.Network Time Protocol Version 4 Reference and Implementation Guide[R].Electrical and Computer Engineering Technical Report.State of Delaware: University of Delaware, 2006.

        [4]劉立月, 王更生, 魏永軍, 等.分布式系統(tǒng)時鐘同步設計與實現(xiàn)[J].計算機工程, 2006, 32(2): 279-281.

        [5]DANA P H.Global positioning system(GPS) time dissemination for real-time applications[J].Real-Time Systems, 1997, 12(1): 9-40.

        [6]KLAUS B.The NMEA 0183 Protocol(2001)[EB/OL].(2013-04-02)[2014-05-26].http://www.tronico.fi/OH6NT/docs/NME A0183.pdf.

        [7]IEEE Std.1588-2008, IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems[S].2008.

        [8]HSU Wang-hsin, LIU You-shun, LIN Wen-yen, et al.A measurement of time synchronization on mobile devices[C]// IEEE International Instrumentation and Measurement Technology Conference, 2012(5): 2692-2694.

        [9]GAVALAS D, ECONOMOU D.Development platforms for mobile applications: status and trends[J].IEEE Software, 2011, 28(1): 77-86.

        [10]PUDER A, ANTEBO I.Cross-compiling Android applications to iOS and windows phone 7[J].Mobile Networks and Applications, 2013, 18(1): 3-21.

        Design and implementation of an NTP-based time synchronization system for Android

        LI Hua-ming,KANG Bao-sheng
        (College of Information Science and Technology,Northwest University,Xi′an 710127,China)

        Aiming at keeping accurate system time for mobile devices to maintain,and according to an analysis of applicable protocols,we designed and implemented an Android time synchronization system based on NTP protocol.The system modules and whole synchronization workflow were described,a cross-compiler development model was used in the design,a multi-layered modular and reusable architecture was formed.The equipment suitability testing,the performance testing and the analysis of the experimental results demonstrated that the system can provide a timing precision of millisecond for mobile devices,and it has characteristics of good suitability and low resources occupancy at runtime.

        NTP; Android; time synchronization; cross-compiler; equipment suitability

        P127.1

        A

        1674-0637(2015)02-0082-06

        10.13875/j.issn.1674-0637.2015-02-0082-06

        2014-09-12

        李華明,男,博士研究生,高級工程師,主要從事虛擬現(xiàn)實,分布式計算,高性能計算研究。

        猜你喜歡
        應用程序終端測試
        幽默大測試
        幽默大師(2020年11期)2020-11-26 06:12:12
        X美術館首屆三年展:“終端〉_How Do We Begin?”
        通信控制服務器(CCS)維護終端的設計與實現(xiàn)
        刪除Win10中自帶的應用程序
        電腦報(2019年12期)2019-09-10 05:08:20
        “攝問”測試
        “攝問”測試
        “攝問”測試
        多功能北斗船載終端的開發(fā)應用
        電子制作(2016年15期)2017-01-15 13:39:14
        ABB Elastimold 10kV電纜終端及中間接頭
        自動化博覽(2014年4期)2014-02-28 22:31:14
        關閉應用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        中文字幕福利视频| 我和丰满妇女激情视频| 国产精品无码一区二区三区| 老妇肥熟凸凹丰满刺激| 在线观看精品国产福利片87| 中文字幕人妻av四季| 夜夜躁日日躁狠狠久久av| 国产伦精品一区二区三区免费| 在线精品无码一区二区三区| 精品av一区二区在线| 国产午夜激无码av毛片不卡| 国产一女三男3p免费视频| 国产日本在线视频| 人妻少妇偷人精品视频| 俺去啦最新地址| 国产在线精品一区二区不卡| 无码流畅无码福利午夜| 国产真实一区二区三区| 欧美私人情侣网站| 欧美自拍丝袜亚洲| av免费在线观看在线观看| 亚洲youwu永久无码精品| 97夜夜澡人人爽人人喊中国片 | 午夜射精日本三级| 无码少妇一级AV便在线观看| 国产白浆精品一区二区三区| 午夜免费观看日韩一级视频| 97在线观看| 白丝美女被狂躁免费视频网站| 久久人妻少妇嫩草av蜜桃| 成人午夜福利视频| 就去吻亚洲精品欧美日韩在线| 人妻少妇无乱码中文字幕| 最近免费中文字幕中文高清6| 国产成人av性色在线影院色戒| 日本不卡一区二区高清中文| 日本一区二区高清精品| 中文字幕久久熟女蜜桃| 精品国产一区二区三区AV小说| 男生自撸视频在线观看 | 国产亚洲欧洲AⅤ综合一区|