李 國,李成通,蒿培培
(中國民航大學(xué)計算機科學(xué)與技術(shù)學(xué)院,天津 300300)
機場為城市提供了快速而便捷的交通,促進(jìn)了經(jīng)濟的繁榮和社會的發(fā)展,但飛機的頻繁起降產(chǎn)生了極其嚴(yán)重的噪聲污染。機場噪聲的綜合治理需要民航局、研究單位和機場等相關(guān)單位通力合作、合理分工和協(xié)調(diào)推進(jìn)。其中首要的工作就是測量機場周邊區(qū)域機場噪聲的實際強度值,“用數(shù)據(jù)說話”,需要在機場周邊區(qū)域安裝和運行噪聲實時監(jiān)測系統(tǒng),用于取得實際的飛機噪聲的污染強度。目前,國內(nèi)還沒有自主研發(fā)的功能完善的機場噪聲監(jiān)測系統(tǒng),只能從國外引進(jìn),首都國際機場引進(jìn)了丹麥B & K公司研制的機場噪聲檢測系統(tǒng)。但國外的這些系統(tǒng)價格極其昂貴,一套系統(tǒng)約2 500萬人民幣,若國內(nèi)噪聲污染非常嚴(yán)重的14個大型機場都引進(jìn)該系統(tǒng),則費用巨大。此外,部分噪聲參數(shù)計算也不符合中國國家標(biāo)準(zhǔn),因此,國內(nèi)急需自主研制并完全滿足中國機場噪聲標(biāo)準(zhǔn)的機場噪聲實時監(jiān)測系統(tǒng),從而對機場周邊的區(qū)域噪聲強度進(jìn)行實時監(jiān)測。
機場噪聲監(jiān)測終端是機場噪聲監(jiān)測系統(tǒng)的重要組成部分,其作為噪聲監(jiān)測點廣泛布設(shè)在機場周邊區(qū)域。這些監(jiān)測點需要全天時全天候長時間不間斷地對所在區(qū)域的噪聲進(jìn)行收集和存儲,并進(jìn)一步傳送到匯聚層以作進(jìn)一步的分析和處理,從而為以后相關(guān)的噪聲預(yù)測、等值線繪制及噪聲評價提供數(shù)據(jù)上的支持。
從終端設(shè)備來看,可分為簡單的傳感器設(shè)備、工控機和基于智能系統(tǒng)的終端設(shè)備。其中傳感器設(shè)備占大多數(shù),而基于智能系統(tǒng)的終端設(shè)備非常少,這也是由于物聯(lián)網(wǎng)剛剛起步,其基礎(chǔ)設(shè)施還有待更大范圍的構(gòu)建。現(xiàn)在普通的機場噪聲監(jiān)測終端類似工控機,設(shè)備大而笨重,其成本也很高,動輒幾萬塊錢。由于這些設(shè)備的性價比不是很高,近年來流行的智能系統(tǒng)就可發(fā)揮其優(yōu)勢了。因為智能系統(tǒng)能最大化地利用硬件設(shè)備,在硬件設(shè)備配置非常低的情況下,依然能很好地完成任務(wù)。而且基于智能系統(tǒng)的噪聲監(jiān)測等應(yīng)用軟件的開發(fā)變得相對簡單,這得益于智能系統(tǒng)其良好的系統(tǒng)架構(gòu)和其豐富的函數(shù)庫和軟件資源。所以對基于智能系統(tǒng)的終端設(shè)備的研究就顯得很有價值。
目前來看,機場噪聲監(jiān)測的實現(xiàn)主要是通過特定的噪聲監(jiān)測儀器。噪聲監(jiān)測儀器以單片機模塊連接工控機進(jìn)行噪聲數(shù)據(jù)的采集和處理是當(dāng)前廠家實施的運行模型。其單片機模塊包含了必須的處理器、處理音頻的芯片以及接口設(shè)備。這些儀器完全可以整合到終端設(shè)備上,而不是以單獨的模塊存在。本文涉及到的終端設(shè)備實現(xiàn)了機場噪聲數(shù)據(jù)的采集和處理,為進(jìn)一步把獨立的噪聲采集和處理的儀器整合到終端設(shè)備上奠定了理論和技術(shù)基礎(chǔ)?;谥悄芟到y(tǒng)的終端設(shè)備一方面可以降低硬件標(biāo)準(zhǔn)減少設(shè)備資金的投入,另一方面可以縮短噪聲監(jiān)測等應(yīng)用軟件的開發(fā)周期以降低人員成本的投入。從長遠(yuǎn)來看,終端設(shè)備的微型化和智能化已成為必然的趨勢,所以基于智能系統(tǒng)的終端設(shè)備研究的重要性就不言而喻了。
MagicArm270開發(fā)板是致遠(yuǎn)電子有限公司提供的開發(fā)平臺。該平臺是一款可以運行Linux和WinCE嵌入式操作系統(tǒng)、支持圖形系統(tǒng)QT和MiniGUI、且具備其它多種功能的XScale開發(fā)平臺[1]。采用Intel公司的Xscale內(nèi)核的PXA270微處理器,擴展有充足的存儲資源和眾多典型的嵌入式系統(tǒng)接口,是一款性價比很高的系統(tǒng)平臺。MagicArm270的軟硬件架構(gòu)圖如圖1所示。
圖1 監(jiān)測終端的軟硬件架構(gòu)圖Fig.1 Monitoring terminal chart including hardware and software
機場噪聲監(jiān)測終端要實現(xiàn)噪聲信息采集程序的運行,必須具備穩(wěn)定而可靠的平臺支撐。對噪聲監(jiān)測終端的平臺搭建主要包括Linux內(nèi)核移植和平臺相關(guān)驅(qū)動程序的移植,以及Yaffs2文件系統(tǒng)的制作。本文從這3個方面展開對噪聲監(jiān)測終端的平臺搭建過程。
在實際做Linux內(nèi)核移植時,需改動的主要是與硬件相關(guān)部分的代碼。具體移植步驟如圖2所示。
圖2 Linux內(nèi)核移植步驟Fig.2 Transplant steps of Linux kernel
本文將從以下幾個方面來做Linux內(nèi)核移植:
1)Linux內(nèi)核配置
在Linux內(nèi)核配置過程中,選擇命令“make menuconfig”進(jìn)入文本菜單的配置界面,然后根據(jù)提示進(jìn)行操作。以選擇處理器類型為例,來說明如何配置Linux內(nèi)核。依次進(jìn)入“System Type->ARM system type(PXA2xx/PXA3xx-based)-> PXA2xx/PXA3xx-based”選擇處理器具體類型。
2)交叉編譯環(huán)境的建立
這里是通過互聯(lián)網(wǎng)下載已經(jīng)做好的工具鏈:armnone-linux-gnueabi-gcc,并把其放在了/usr/local/arm/目錄下[2]。
3)Linux內(nèi)核編譯器的設(shè)置
在內(nèi)核源碼根目錄下Makefile文件中設(shè)置處理器體系和編譯器的具體路徑。
4)平臺相關(guān)代碼的移植
首先,修改Linux內(nèi)核代碼里對Bootloader、Kernel和文件系統(tǒng)的各個分區(qū)的設(shè)置,使其在MagicArm270開發(fā)板上能正常運行。其次,修改Linux內(nèi)核代碼里對IDE設(shè)備的設(shè)置,使其在MagicArm270開發(fā)板上能進(jìn)行正常的設(shè)備操作。最后,修改Linux內(nèi)核代碼對Nand設(shè)備的設(shè)置,修改文件drivers/mtd/nand/Kconfig。
5)Linux內(nèi)核編譯
在保存以上配置后,就可以用命令“make zImage”編譯內(nèi)核了。編譯結(jié)束后將在內(nèi)核源碼目錄的arch/arm/boot中得到Linux內(nèi)核映像:zImage。
6)Linux內(nèi)核的運行
需先將Linux內(nèi)核通過FTP傳輸至MagicARM270 RAM的RAM中,傳輸完畢后,在ZLG/BOOT命令行使用cpf命令將其固化到NOR Flash中。內(nèi)核啟動時的效果如圖3所示。
圖3 Linux內(nèi)核啟動時的效果圖Fig.3 Rendering of Linux kernel startup
因為驅(qū)動程序是硬件工作的前提,所以必須把相關(guān)硬件所對應(yīng)的驅(qū)動程序進(jìn)行一定的修改,例如:DM9000網(wǎng)卡驅(qū)動移植、LCD驅(qū)動移植、觸摸屏驅(qū)動移植和聲卡驅(qū)動移植等。
2.2.1 DM9000網(wǎng)卡驅(qū)動移植
移植DM9000網(wǎng)卡驅(qū)動程序,要做的就是找出并修改最小相異性。這里的最小相異性是:基地址、位寬和中斷引腳等信息。下面將從7個方面來闡述網(wǎng)卡驅(qū)動的移植過程。
1)配置相應(yīng)內(nèi)核選項
在編譯Linux內(nèi)核時,利用make menuconfig的配置選項 ,選中Device Drivers->Network device support->Ethernet(10/100Mbit)->DM9000 support。
2)網(wǎng)卡所需的IO地址、中斷等資源的設(shè)置
在文件arch/arm/mach-pxa/mainstone.c中添加對IO地址和IRQ中斷的設(shè)置。
3)添加設(shè)備文件
在文件arch/arm/mach-pxa/mainstone.c中添加DM9000對應(yīng)的設(shè)備文件。
4)設(shè)置網(wǎng)卡硬件地址
在文件driver/net/dm9000.c中設(shè)置網(wǎng)卡DM9000相應(yīng)硬件地址。
5)注冊網(wǎng)卡驅(qū)動程序driver/net/dm9000.c
DM9000網(wǎng)卡正常工作時的信息打印效果如圖4所示。
圖4 內(nèi)核啟動時網(wǎng)卡被成功識別Fig.4 Card being successfully identified when kernel boots
2.2.2 LCD驅(qū)動移植
LCD設(shè)備是一類平臺總線設(shè)備。因為在嵌入式系統(tǒng)中會經(jīng)常使用LCD進(jìn)行交互,這里通過修改平臺代碼使內(nèi)核支持LCD,進(jìn)而完成相應(yīng)功能。下面將從5個方面來闡述LCD驅(qū)動的移植過程。
1)配置Linux相應(yīng)內(nèi)核選項
在編譯Linux內(nèi)核時,利用make menuconfig的配置選項,選中 Device Drivers->Graphics support->Support for frame buffer devices->LCD framebuffer support。
2)添加相應(yīng)LCD相關(guān)平臺信息,確定LCD類型
首先,在文件arch/arm/mach-pxa/mainstone.c中進(jìn)行LCD類型修改,其次是修改關(guān)于toshiba_ltm04c380 k_mode的定義,以適應(yīng)開發(fā)板的LCD硬件要求。
3)LCD設(shè)備所需的IO地址、中斷等資源的設(shè)置
在文件arch/arm/mach-pxa/devices.c中添加對IO地址和IRQ中斷的設(shè)置。
4)添加設(shè)備文件
在文件arch/arm/mach-pxa/devices.c中添加LCD對應(yīng)的設(shè)備文件。
5)注冊LCD設(shè)備
在文件driver/char/led.c中調(diào)用函數(shù)misc_register(),注冊LCD設(shè)備。
2.2.3 觸摸屏驅(qū)動移植
觸摸屏作為一種輸入設(shè)備,在Linux2.6內(nèi)核中通常作為input子系統(tǒng)的一部分。在input子系統(tǒng)中已提供了觸摸屏的驅(qū)動上層抽象層,因此只需對新的觸摸屏驅(qū)動器提供驅(qū)動程序。下面將從3個方面來闡述聲卡驅(qū)動的移植過程。
1)配置Linux相應(yīng)內(nèi)核選項
在編譯Linux內(nèi)核時,利用make menuconfig的配置選項,選中Device Drivers->Input device support->Touchscreens->Philips UCB1400 touchscreen。
2)定義和添加觸摸屏設(shè)備文件
在文件arch/arm/mach-pxa/mainstone.c中添加觸摸屏設(shè)備文件的定義。
3)編寫觸摸屏驅(qū)動程序中的探測函數(shù),用來識別觸摸屏硬件設(shè)備
內(nèi)核啟動時觸摸屏設(shè)備被成功識別的效果如圖5所示。
圖5 內(nèi)核啟動時觸摸屏設(shè)備被成功識別Fig.5 Touch screen devices being successfully identified when kernel starts
2.2.4 聲卡驅(qū)動移植
由于本文主題是噪聲智能終端,所以必須有聲音方面的采集和處理,同時也進(jìn)行了相關(guān)聲卡驅(qū)動和音頻驅(qū)動方面的移植。這里著重敘述聲卡驅(qū)動的移植過程。聲卡設(shè)備是字符設(shè)備,所有整體的移植過程相對簡單[3],下面將從5個方面來闡述聲卡驅(qū)動的移植過程。
1)配置Linux相應(yīng)內(nèi)核選項
在編譯Linux內(nèi)核時,利用make menuconfig的配置選項,選中 Device Drivers->Sound->Sound card support->Advanced Linux Sound Architecture->ALSA ARM devices->AC97 driver for the Intel PXA2xx chip。
2)添加設(shè)備文件
在文件arch/arm/mach-pxa/mainstone.c中添加DM9000對應(yīng)的設(shè)備文件。
3)聲卡驅(qū)動程序初始化和聲卡設(shè)備文件的創(chuàng)建。
4)設(shè)置IRQ值
在文件/include/asm-arm/arch-pxa/irqs.h中修改IRQ值:
#define IRQ_AC97 PXA_IRQ(14)/*AC97 Interrupt*/
啟動MagicArm270開發(fā)板后,首先將帶有歌曲的U盤插入到開發(fā)板的USB接口,開發(fā)板成功掛載U盤后,運行命令:
cat test.mp3>/dev/dsp
當(dāng)聽到耳機輸出聲音,就可以證明聲卡驅(qū)動移植成功。
2.2.5 SPI總線和I2C總線驅(qū)動移植
系統(tǒng)移植中,總線的移植也至關(guān)重要。下面從SSP和I2C這2個總線來闡述總線移植的過程。
1)SPI總線移植
首先在文件arch/arm/mach-pxa/mainstone.c中添加SPI總線所對應(yīng)的平臺設(shè)備文件,其次是設(shè)置SPI控制器,最后是設(shè)置IRQ值。
2)I2C總線的移植
I2C總線移植的主要工作包括了其IRQ值的修改。因為文件irqs.h在新舊內(nèi)核上變化很大,如求IRQ值的宏P(guān)XA_IRQ(x)的實現(xiàn)就發(fā)生了很大的變化,導(dǎo)致同樣的x值,會得到不同的IRQ值。具體IRQ值的修改是操作文件/include/asm-arm/arch-pxa/irqs.h。
Linux內(nèi)核啟動后,其根據(jù)參數(shù)linux_cmd_line的指示而跳轉(zhuǎn)到根文件系統(tǒng)掛載的地址,從而完成文件系統(tǒng)的初始化和掛載任務(wù)。下面介紹基本的根文件系統(tǒng)的創(chuàng)建:
1)Android源代碼下載
首先安裝git與curl工具,然后安裝并初始化Repo,其次執(zhí)行“repoinit”的操作來獲取最新的源代碼列表,最后執(zhí)行“repo sync”同步下載Android1.6源碼。
2)Android源碼編譯
在Android源碼目錄下,直接鍵入“make”命令,會在此目錄中生成新目錄out。然后把out/target/generic/目錄下的文件組合成一個目錄為android_fs。并且在此android_fs/dev/目錄下用以下命令增添兩個文件:
mknod-m 660 console c 5 1
mknod-m 660 null c 1 3
3)以NFS掛載方式啟動Yaffs2文件系統(tǒng)
首先確定Linux內(nèi)核中的.config文件里CONFIG_CMDLINE包含語句“rootfstype=nfs”。然后就可以在開發(fā)板上的Linux內(nèi)核啟動后通過網(wǎng)線掛載PC機上的文件系統(tǒng),便于調(diào)試文件系統(tǒng),提高文件系統(tǒng)的制作效率。
開發(fā)板啟動時成功掛載文件系統(tǒng)的效果圖如圖6所示。
圖6 Yaffs2文件系統(tǒng)的移植Fig.6 Transplant of Yaffs2 file system
本節(jié)以Monkey自動化測試方法來測試視頻監(jiān)控系統(tǒng)的穩(wěn)定性,并提供噪聲監(jiān)測系統(tǒng)運行效果圖。具體測試將分別從郵件、瀏覽器、聯(lián)系方式以及系統(tǒng)設(shè)置等多個方面展開。
作為一個命令行工具,Monkey可以同時運行在實際設(shè)備或模擬器中。Monkey工具具備很高的擴展性,它不僅面向一款手機終端,而且可以存儲配置信息文件并供讀取。Monkey通常會向系統(tǒng)發(fā)送一些偽隨機的用戶事件流,以實現(xiàn)對正在開發(fā)和調(diào)試的應(yīng)用程序或者系統(tǒng)進(jìn)行一些壓力測試[4]。
下面將從6個方面來測試系統(tǒng)的各個子系統(tǒng),包括基本設(shè)置settings、音樂music、聯(lián)系contacts、瀏覽器browser、郵件email和短信mms等6個系統(tǒng)。
開發(fā)板正常運行時,執(zhí)行如下命令以測試基本設(shè)置子系統(tǒng):
$adb shell monkey-pcom.android.settings500000
圖7是執(zhí)行該命令后,開發(fā)板所測試的基本設(shè)置子系統(tǒng)的效果圖。
圖7 系統(tǒng)基本設(shè)置在測試時的效果圖Fig.7 Testing effect diagram of basic system settings
本文用同樣的方式測試了其它5個子系統(tǒng),系統(tǒng)運行比較穩(wěn)定,可以經(jīng)得起上萬次連續(xù)測試。系統(tǒng)同時也把camera等子系統(tǒng)屏蔽掉,所以在測試時會顯示系統(tǒng)錯誤信息。
噪聲監(jiān)測終端的平臺搭建好后,就可以編寫噪聲信息采集程序,以實現(xiàn)噪聲信息的采集。本文將從環(huán)境搭建、應(yīng)用程序編寫和軟件升級3個部分來闡述噪聲信息采集的過程。
應(yīng)用軟件的開發(fā)需要相關(guān)工具的支持,下面將從3個方面來介紹應(yīng)用開發(fā)環(huán)境的搭建:
1)配置JAVA JDK環(huán)境,配置JAVA環(huán)境變量;
2)安裝 Eclipse和 ADT;
3)配置Linux版本的Android SDK。
Android系統(tǒng)的一個主要功能是多媒體功能,可以使用Android來播放各種音頻和視頻。在Android的SDK中同樣提供了各種多媒體開發(fā)接口,可以提供許多API函數(shù)來開發(fā)出各種音視頻軟件[5]。下面2個函數(shù)是噪聲數(shù)據(jù)采集時所需要的關(guān)鍵函數(shù):AudioRecord()和 AudioRecord.getMinBufferSize()。這 2個函數(shù)分別實現(xiàn)了錄音API函數(shù)的調(diào)用和最小緩沖區(qū)的設(shè)置,最終把周圍的聲音數(shù)據(jù)錄制下來。
ar.startRecording();//開始錄音
ar.read(buffer,0,bs);//把錄音數(shù)據(jù)讀取到 buffer里
程序再利用循環(huán)求出buffer值的平方和并除以數(shù)據(jù)的總長度,最終得到音量大小。由音量大小就可以獲取白噪聲值,然后對實際采樣進(jìn)行標(biāo)準(zhǔn)化。
double dB=10*Math.log10(v/(double)r);
經(jīng)傅里葉變化后得到的復(fù)數(shù)數(shù)組是二維數(shù)組,實部和虛部的平方和取對數(shù)后乘10就大致等于表示音量的分貝值。具體噪聲信息采集程序的數(shù)據(jù)流向示意圖如圖8所示。
圖8 噪聲信息采集程序的數(shù)據(jù)流向示意圖Fig.8 Data flow diagram of noise program information collection
為了在終端上運行噪聲采集程序,首先應(yīng)該把編譯好的apk文件從Ubuntu系統(tǒng)中拷貝出來,然后再安裝到終端上的Android系統(tǒng)中。Ubuntu系統(tǒng)中已經(jīng)編譯好的apk文件的具體路徑是:workspace/mynoise/bin/mynoise.apk,此處的workspace是Eclipse軟件所運行的工程默認(rèn)保存的工作區(qū),而mynoise是自編的噪聲采集程序所命名的工程。
在噪聲監(jiān)測終端上安裝噪聲采集程序,程序可以穩(wěn)定運行。圖9是在安靜的實驗室運行時的效果圖。
圖9 安靜實驗室里Android 1.6版本噪聲終端運行效果圖Fig.9 Terminal effect of noise figure in quiet laboratoy on Android 1.6 version
噪聲采集程序運行時會顯示一個圖形界面,直接顯示所測的分貝值,同時也會通過指針指向?qū)嶋H測到的噪聲值。圖9所測到的噪聲值為43 dB,屬于實驗室比較安靜時的噪聲值。對比標(biāo)準(zhǔn)噪聲采集設(shè)備所采集的噪聲值,其誤差控制在1 dB之內(nèi)。因本文設(shè)計的噪聲監(jiān)測終端的應(yīng)用是基于飛機噪聲,實驗環(huán)節(jié)中也對實驗環(huán)境做了改變:在終端周圍播放帶有飛機起飛錄音的聲音,終端運行的效果圖如圖10所示。
圖10 播放飛機起飛錄音時噪聲終端運行效果圖Fig.10 Terminal effect of taking off recording noise figure on Android 1.6 version
通過實驗可以獲得飛機起飛時的噪聲值圍繞97 dB變化。參考相關(guān)文獻(xiàn),民航機起飛時的噪聲值一般為95 dB左右,進(jìn)場噪聲值為101.1 dB,側(cè)向噪聲值為100.6 dB,而戰(zhàn)斗機則可以達(dá)到120 dB以上。同時也可了解到,飛機的引擎聲音大約為130 dB,噴射飛機起飛時100m處的噪音可達(dá)到130 dB。
通過和標(biāo)準(zhǔn)噪聲采集設(shè)備所采集的噪聲值相比較,噪聲監(jiān)測終端采集的噪聲值誤差很小,可以控制誤差為1 dB之內(nèi)。噪聲監(jiān)測終端達(dá)到了監(jiān)測周圍飛機噪聲的效果。在實驗階段,噪聲監(jiān)測終端作為移動終端,實時實地在機場周圍進(jìn)行噪聲采集,每當(dāng)飛機起飛和降落時,其噪聲采集值都會有大的變化,其采集到的噪聲值也非常接近文獻(xiàn)中噪聲值,實現(xiàn)了噪聲監(jiān)測終端作為移動終端實時實地監(jiān)測機場周圍飛機噪聲[6]。
噪聲監(jiān)測系統(tǒng)經(jīng)過手動和自動化兩個方面的測試,驗證了其系統(tǒng)穩(wěn)定性和可靠性比較高,并且能很好地完成噪聲信息的采集。下面將從噪聲監(jiān)測終端自身來闡述本文中的噪聲監(jiān)測終端的優(yōu)越性。
傳統(tǒng)噪聲監(jiān)測終端與本文中設(shè)計的噪聲監(jiān)測終端的優(yōu)缺點對比如表1所示。
表1 傳統(tǒng)噪聲監(jiān)測終端與智能噪聲監(jiān)測終端的對比Tab.1 Comparison of traditional noise monitoring terminal and intelligent terminal
本課題結(jié)合項目的實際應(yīng)用,設(shè)計和實現(xiàn)了以Android系統(tǒng)為平臺的噪聲監(jiān)測終端。經(jīng)過對噪聲監(jiān)測終端測試,其達(dá)到了穩(wěn)定可靠的系統(tǒng)要求。該終端能很好地運行噪聲信息采集程序,可以作為移動終端實時監(jiān)測周圍噪聲。最后闡述了噪聲監(jiān)測終端顯著的特點:較低的硬件成本、穩(wěn)定可靠的系統(tǒng)和可作為移動終端等。其在機場噪聲實時監(jiān)測領(lǐng)域中將會具有很好的應(yīng)用前景。
[1]周立功.PXA270 & Linux2.6實驗教程[M].廣州:致遠(yuǎn)電子有限公司,2007:8-20.
[2]KARIM YAGHMOUR,JON MASTERS.Building Embedded Linux Systems[M].O'Reilly Publisher,2009:38-43.
[3]胡 偉.Android系統(tǒng)架構(gòu)及其驅(qū)動研究[J].廣州廣播電視大學(xué)學(xué)報,2010(4):96-101.
[4]Monkey自動化測試:如何用Monkey運行example_script.txt做好自動化測試[EB/OL].[2012-12-20].http://blog.csdn.net/hoozheng/article/details/5964773.
[5]宋小倩,周東升.基于Android平臺的應(yīng)用開發(fā)研究[J].軟件導(dǎo)刊,2011(2):104-106.
[6]PAUL K.Android on Mobile Devices:An Energy Perspective[C]//Computer andInformation Technology(CIT),2010IEEE 10th International Conference,2010:2421-2426.