国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種針對(duì)安卓應(yīng)用對(duì)傳感器的能耗漏洞的分析與檢測(cè)系統(tǒng)的制作方法

      文檔序號(hào):8457191閱讀:370來源:國(guó)知局
      一種針對(duì)安卓應(yīng)用對(duì)傳感器的能耗漏洞的分析與檢測(cè)系統(tǒng)的制作方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及安卓應(yīng)用對(duì)傳感器能耗漏洞的檢測(cè)系統(tǒng)。
      【背景技術(shù)】
      [0002]由于安卓移動(dòng)操作系統(tǒng)是一個(gè)開源的平臺(tái),它吸引了眾多的應(yīng)用開發(fā)者,使得近年來安卓系統(tǒng)在移動(dòng)設(shè)備市場(chǎng)中占據(jù)了極大的份額。為了實(shí)現(xiàn)豐富多彩的應(yīng)用,智能手機(jī)都配備了各種各樣的傳感器。這些傳感器通過感知用戶當(dāng)前的物理環(huán)境,從而為用戶提供更加個(gè)性化的服務(wù)。但是另一方面,這些傳感器會(huì)消耗大量的電量,從而極大地縮短智能手機(jī)的續(xù)航時(shí)間。因此,傳感器采集到的數(shù)據(jù)應(yīng)當(dāng)被應(yīng)用很好地利用,并對(duì)用戶產(chǎn)生一定的益處。如果傳感器數(shù)據(jù)的利用率過低,則說明相應(yīng)的電量被浪費(fèi)了,該應(yīng)用存在著能耗漏洞。能耗漏洞的存在會(huì)造成較差的用戶體驗(yàn),并對(duì)安卓應(yīng)用的進(jìn)一步發(fā)展產(chǎn)生負(fù)面作用。
      [0003]目前傳統(tǒng)的解決辦法都只考慮產(chǎn)生相應(yīng)的事件,包括普通事件和傳感器事件,并不考慮傳感器事件中所包含的數(shù)據(jù)。傳統(tǒng)的工具在產(chǎn)生傳感器事件時(shí),會(huì)隨機(jī)產(chǎn)生所需要的數(shù)據(jù)并將其附著在事件之中。這導(dǎo)致相應(yīng)的處理函數(shù)中的許多與傳感器數(shù)據(jù)相關(guān)的路徑都無法被執(zhí)行,即較低的路徑覆蓋率。這進(jìn)一步造成應(yīng)用無法到達(dá)一些與傳感器數(shù)據(jù)相關(guān)的特定狀態(tài),從而漏報(bào)許多存在問題的狀態(tài)。并且由于產(chǎn)生的數(shù)據(jù)的隨機(jī)性,多次分析將會(huì)出現(xiàn)不一樣的結(jié)果。這會(huì)極大地困擾用戶,降低工具的穩(wěn)定性和實(shí)用性。另一方面,傳統(tǒng)的工具在處理傳感器事件時(shí),不論程序執(zhí)行了哪一條路徑,都只會(huì)轉(zhuǎn)移到同一個(gè)新的狀態(tài)。然而大多數(shù)應(yīng)用都會(huì)根據(jù)傳感器數(shù)據(jù)的不同而轉(zhuǎn)移到不同的狀態(tài)以實(shí)現(xiàn)智能化的服務(wù),因此這些應(yīng)用都無法被傳統(tǒng)的工具分析。

      【發(fā)明內(nèi)容】

      [0004]1、所要解決的技術(shù)問題:
      [0005]目前的安卓應(yīng)用的傳感器分析檢測(cè)系統(tǒng)存在覆蓋范圍窄,效率低,分析檢測(cè)結(jié)果不穩(wěn)定。
      [0006]2、技術(shù)方案:
      [0007]為了解決以上問題,本發(fā)明提供了一種針對(duì)安卓應(yīng)用對(duì)傳感器的能耗漏洞的分析與檢測(cè)系統(tǒng),由安卓應(yīng)用執(zhí)行模塊,傳感器數(shù)據(jù)產(chǎn)生模塊和傳感器數(shù)據(jù)利用率分析模塊構(gòu)成,安卓應(yīng)用執(zhí)行模塊分別和傳感器數(shù)據(jù)產(chǎn)生模塊和傳感器數(shù)據(jù)利用率分析模塊連接,并且所有的模塊運(yùn)行于驗(yàn)證可執(zhí)行Java程序的JPF系統(tǒng)上。
      [0008]JPF 的全稱為 Java Pathfinder。
      [0009]所述安卓應(yīng)用執(zhí)行模塊是指解析得到應(yīng)用的所有事件處理方法,產(chǎn)生模擬事件以激活相應(yīng)的處理方法,并在事件處理結(jié)束后更新事件處理方法的集合,通過產(chǎn)生特定的事件序列,到達(dá)對(duì)應(yīng)的程序狀態(tài)。
      [0010]所述的傳感器數(shù)據(jù)產(chǎn)生模塊是指在將初始的數(shù)據(jù)范圍的邊界值傳遞給應(yīng)用后,記錄應(yīng)用在處理對(duì)應(yīng)的傳感器事件過程中執(zhí)行的所有的關(guān)鍵代碼,并判斷各個(gè)邊界值對(duì)應(yīng)的關(guān)鍵代碼是否相同,如果相同且該數(shù)據(jù)范圍大于一定的閾值,則將該數(shù)據(jù)范圍劃分為較小的范圍,如果不同但該數(shù)據(jù)范圍大于另一個(gè)較小的閾值,依然將其劃分為較小的子范圍。
      [0011]所述的傳感器數(shù)據(jù)利用率分析模塊是指利用動(dòng)態(tài)染色技術(shù)標(biāo)識(shí)定位出所有利用了傳感器數(shù)據(jù)的方法調(diào)用,并記錄其中對(duì)用戶帶來好處的方法調(diào)用,統(tǒng)計(jì)得到每次由傳感器事件所觸發(fā)的狀態(tài)轉(zhuǎn)移時(shí)的數(shù)據(jù)利用數(shù),并通過比較所有的狀態(tài)轉(zhuǎn)移的利用數(shù)計(jì)算得到每次狀態(tài)轉(zhuǎn)移的相對(duì)傳感器數(shù)據(jù)利用率。
      [0012]3、有益效果:
      [0013]本發(fā)明能分析并執(zhí)行一個(gè)安卓應(yīng)用,產(chǎn)生一系列的事件序列并傳遞給應(yīng)用進(jìn)行相應(yīng)的處理,在產(chǎn)生傳感器事件時(shí),能夠以較小的代價(jià)生成足夠的數(shù)據(jù)以覆蓋事件處理方法中與傳感器數(shù)據(jù)相關(guān)的程序路徑,并按照深度優(yōu)先的方式遍歷應(yīng)用的狀態(tài)空間,通過計(jì)算傳感器數(shù)據(jù)利用率找到有問題的程序狀態(tài),最后得到的診斷結(jié)果是正確的、高效的和穩(wěn)定的,上述所有的過程都是自動(dòng)化的,不需要用戶的額外參與。
      【附圖說明】
      [0014]圖1為本發(fā)明的安卓應(yīng)用能耗問題診斷系統(tǒng)的結(jié)構(gòu)圖。
      [0015]圖2為自動(dòng)執(zhí)行安卓應(yīng)用的算法流程圖。
      [0016]圖3為自動(dòng)生成傳感器數(shù)據(jù)的算法流程圖。
      [0017]圖4為自動(dòng)分析傳感器數(shù)據(jù)利用率的算法流程圖。
      【具體實(shí)施方式】
      [0018]為了更清楚的對(duì)發(fā)明進(jìn)行說明,首先,對(duì)一些用詞進(jìn)行解釋。
      [0019]安卓應(yīng)用是指一個(gè)可以在安卓移動(dòng)設(shè)備上的安裝并運(yùn)行的應(yīng)用,當(dāng)明確對(duì)之進(jìn)行操作時(shí)特指這個(gè)應(yīng)用的資源文件和字節(jié)碼文件。
      [0020]Java應(yīng)用是指一個(gè)可以在裝有JVM的計(jì)算機(jī)上運(yùn)行的由Java語言編寫的應(yīng)用。[0021 ] 安卓應(yīng)用的字節(jié)碼是安卓應(yīng)用的本質(zhì),它由若干個(gè)類文件組成,這些類中各自包含若干方法,這些類中的方法通過合作,共同實(shí)現(xiàn)特定的功能。
      [0022]安卓應(yīng)用⑶I部件是指應(yīng)用在運(yùn)行過程中能夠顯示在屏幕上的部分,從應(yīng)用的資源文件中解析得到應(yīng)用初始時(shí)刻的GUI部件,當(dāng)應(yīng)用運(yùn)行后,GUI部件可能會(huì)動(dòng)態(tài)變化。
      [0023]安卓應(yīng)用事件是指由安卓系統(tǒng)或者用戶產(chǎn)生的行為和動(dòng)作,通過產(chǎn)生這樣一系列的操作使用安卓應(yīng)用,安卓應(yīng)用通過響應(yīng)這樣一系列的操作為用戶提供服務(wù)。
      [0024]安卓應(yīng)用傳感器事件是指智能手機(jī)中所配備的傳感器在采集物理環(huán)境數(shù)據(jù)時(shí)產(chǎn)生的行為和動(dòng)作,安卓應(yīng)用在需要使用傳感器時(shí)打開傳感器,在不需要使用時(shí)關(guān)閉傳感器。
      [0025]傳感器數(shù)據(jù)是指?jìng)鞲衅魇占降碾x散化了的真實(shí)物理環(huán)境的數(shù)據(jù),傳感器數(shù)據(jù)附著在傳感器事件之中。
      [0026]安卓應(yīng)用事件處理方法是指應(yīng)用中定義的用于響應(yīng)事件的回調(diào)函數(shù),當(dāng)產(chǎn)生了事件后,安卓系統(tǒng)會(huì)自動(dòng)調(diào)用注冊(cè)過的對(duì)應(yīng)的事件處理方法進(jìn)行處理。
      [0027]傳感器事件處理過程是指從調(diào)用事件處理方法開始,到事件處理方法返回結(jié)束,這包含所有由事件處理方法直接或間接創(chuàng)建的工作線程結(jié)束。
      [0028]程序狀態(tài)是指安卓應(yīng)用所處于的一種狀態(tài),此時(shí)程序的全局變量、局部變量和數(shù)據(jù)庫(kù)等都有特定的值。
      [0029]程序狀態(tài)轉(zhuǎn)移是指安卓應(yīng)用在處于某一狀態(tài)時(shí),在處理了某個(gè)事件后,程序的內(nèi)部某個(gè)值發(fā)生了改變,從而轉(zhuǎn)移到了一個(gè)新的狀態(tài)。
      [0030]程序狀態(tài)空間是指程序所有的狀態(tài)的集合,并包含這些狀態(tài)之間可能存在的轉(zhuǎn)移,按照一定的方式,如深度優(yōu)先方式,可以對(duì)程序的狀態(tài)空間進(jìn)行遍歷。
      [0031]處理傳感器事件時(shí)的關(guān)鍵代碼是指能夠影響處理結(jié)果的指令,包括跳轉(zhuǎn)指令、數(shù)據(jù)類型轉(zhuǎn)換和庫(kù)函數(shù)調(diào)用。
      [0032]數(shù)據(jù)范圍是指所需要采用的傳感器數(shù)據(jù)的空間大小,包含組成該數(shù)據(jù)的變量及其值域。
      [0033]關(guān)鍵代碼是指改變程序執(zhí)行流程,從而影響處理結(jié)果的指令,包括跳轉(zhuǎn)指令、數(shù)據(jù)類型轉(zhuǎn)換和庫(kù)函數(shù)調(diào)用。
      [0034]動(dòng)態(tài)染色技術(shù)是指在調(diào)用事件處理方法時(shí),為初始數(shù)據(jù)附著一個(gè)標(biāo)識(shí),如果某一個(gè)指令利用了帶有標(biāo)識(shí)的對(duì)象,則將標(biāo)識(shí)傳遞下去,這樣可以定位所有利用了初始數(shù)據(jù)的指令。
      [0035]對(duì)用戶的好處是指更新了用戶可以感受到的數(shù)據(jù)或界面,如更新數(shù)據(jù)庫(kù)、刷新屏蒂。
      [0036]下面通過附圖和實(shí)施例來對(duì)本發(fā)明進(jìn)行詳細(xì)說明。
      [0037]如圖1所示,本發(fā)明的針對(duì)安卓應(yīng)用對(duì)傳感器的能耗漏洞的分析與檢測(cè)系統(tǒng),由安卓應(yīng)用執(zhí)行模塊,傳感器數(shù)據(jù)產(chǎn)生模塊和傳感器數(shù)據(jù)利用率分析模塊構(gòu)成,安卓應(yīng)用執(zhí)行模塊分別和傳感器數(shù)據(jù)產(chǎn)生模塊和傳感器數(shù)據(jù)利用率分析模塊連接,并且所有的模塊運(yùn)行于驗(yàn)證可執(zhí)行Java程序的JPF (Java Pathfinder)系統(tǒng)上。JPF是一個(gè)搭建在Java虛擬機(jī)JVM之上的虛擬機(jī),能夠保存程序運(yùn)行時(shí)的快照,即狀態(tài),并根據(jù)需要取出這些狀態(tài)以繼續(xù)運(yùn)行。這個(gè)性質(zhì)保證了安卓應(yīng)用執(zhí)行模塊
      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1