專利名稱:一種在mux層動態(tài)抓取任意通信數(shù)據(jù)的方法
技術領域:
本發(fā)明涉及一種動態(tài)抓取數(shù)據(jù)的方法,尤其是在MUX層(接口層)動態(tài)抓取任意 通信數(shù)據(jù)的方法。
背景技術:
目前在MUX層中傳輸?shù)臄?shù)據(jù)主要通過超級終端來抓取,由于經(jīng)過MUX層的數(shù)據(jù)量 很大,在許多情況下對分析有利的數(shù)據(jù)淹沒在這些數(shù)據(jù)海中,如何高效的獲取有效數(shù)據(jù),將 會是影響手機開發(fā)周期的一個重要因素。在手機的開發(fā)中,現(xiàn)場測試是至關重要的一環(huán)。而在現(xiàn)有技術中,根據(jù)系統(tǒng)提供的 打印數(shù)據(jù)的函數(shù),將數(shù)據(jù)打印到超級終端,需要PC端的協(xié)助。但由于現(xiàn)場測試的工作環(huán)境 等因素的限制,如何在不依賴PC的情況下獲取相關數(shù)據(jù),并通過此數(shù)據(jù)來定位手機的性能 缺陷已成為開發(fā)人員探索的方法。
發(fā)明內容
本發(fā)明解決的技術問題是提供一種在MUX層動態(tài)抓取任意通信數(shù)據(jù)的方法。為解決上述技術問題,本發(fā)明的技術方案是這樣實現(xiàn)的一種在MUX層動態(tài)抓取數(shù)據(jù)的方法,該方法包括以下步驟al、選擇打印位置,啟動數(shù)據(jù)處理線程,數(shù)據(jù)處理線程進入等待狀態(tài);bl、監(jiān)聽數(shù)據(jù),若有數(shù)據(jù)流經(jīng)過MUX層,則抓取數(shù)據(jù);Cl、觸發(fā)數(shù)據(jù)處理線程,解析數(shù)據(jù)并打印數(shù)據(jù)。其中,步驟al中所述的選擇打印位置,可以是超級終端,也可以是文件。步驟bl中所述的監(jiān)聽數(shù)據(jù)之前,需要判斷是否有退出事件,沒有退出事件則監(jiān)聽 數(shù)據(jù),有退出事件則結束流程。步驟cl中所述的打印數(shù)據(jù)步驟之后,數(shù)據(jù)處理線程進入等待狀態(tài)。并且,步驟bl之前還包括步驟dl 動態(tài)開關選擇,若開關關閉,則不監(jiān)聽數(shù)據(jù),經(jīng) 過MUX層的數(shù)據(jù)流被屏蔽;若開關打開,則監(jiān)聽數(shù)據(jù),輸出MUX層的數(shù)據(jù)流??梢姡捎帽景l(fā)明的技術方案,通過輸出數(shù)據(jù)流到指定打印位置,可以不依賴于超 級終端,從而節(jié)省了大量的資源,并且通過動態(tài)開關有選擇的打印數(shù)據(jù)流,提高了現(xiàn)場測試 和開發(fā)的效率。
圖1 本發(fā)明在MUX層動態(tài)抓取任意通信數(shù)據(jù)程序的實現(xiàn)流程圖。圖2 本發(fā)明在MUX層動態(tài)抓取任意通信數(shù)據(jù)的動態(tài)控制開關界面圖。圖3 本發(fā)明在MUX層動態(tài)抓取任意通信數(shù)據(jù)的操作流程圖。
具體實施例方式為使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下參照附圖并舉實施例,對 本發(fā)明作進一步地詳細說明。本發(fā)明是基于Windows嵌入式平臺下進行的,可以對數(shù)據(jù)的輸出位置進行選擇, 同時也可以選擇性的對數(shù)據(jù)進行抓取。本發(fā)明的技術方案如下一種在MUX層動態(tài)抓取數(shù)據(jù)的方法,該方法包括以下步驟al、選擇打印位置,啟動數(shù)據(jù)處理線程,進入等待狀態(tài);bl、監(jiān)聽數(shù)據(jù),若有數(shù)據(jù)流經(jīng)過MUX層,則抓取數(shù)據(jù);Cl、觸發(fā)數(shù)據(jù)處理線程,解析數(shù)據(jù)并打印數(shù)據(jù)。其中,步驟al中所述的選擇打印位置,可以是超級終端,也可以是文件。步驟bl中所述的監(jiān)聽數(shù)據(jù)之前,需要判斷是否有退出事件,沒有退出事件則監(jiān)聽 數(shù)據(jù),有退出事件則結束流程。步驟cl中所述的打印數(shù)據(jù)步驟之后,進入等待狀態(tài)。并且,步驟bl之前還包括步驟dl 動態(tài)開關選擇,若開關關閉,則經(jīng)過MUX層的數(shù) 據(jù)流被屏蔽;若開關打開,則輸出MUX層的數(shù)據(jù)流。參看圖1和圖2,圖1是本發(fā)明在MUX層動態(tài)抓取任意通信數(shù)據(jù)程序的實現(xiàn)流程 圖,圖2是本發(fā)明在MUX層動態(tài)抓取任意通信數(shù)據(jù)的動態(tài)控制開關界面圖。如附圖2所示,初始化動態(tài)開關界面,根據(jù)需要選擇數(shù)據(jù)打印的位置,可以是超級 終端,也可以是文件。點擊開始按鈕之后就啟動了數(shù)據(jù)處理線程。具體程序實現(xiàn)流程如下步驟SlOl 初始狀態(tài)。步驟S102 選擇數(shù)據(jù)流的打印位置。轉入步驟S103則輸出到超級終端,轉入步驟 S104則輸出到文件。步驟S105 選擇好打印位置之后,啟動數(shù)據(jù)處理流程。步驟S106 啟動數(shù)據(jù)處理流程之后,進入等待狀態(tài)。步驟S107 判斷是否有退出事件,有的話則轉到步驟S108結束流程。步驟S109 沒有退出事件則開始監(jiān)聽數(shù)據(jù)。步驟SllO 判斷是否有數(shù)據(jù)經(jīng)過MUX層,沒有的話則繼續(xù)步驟S109監(jiān)聽數(shù)據(jù)。步驟Slll 若有數(shù)據(jù)經(jīng)過MUX層,則抓取數(shù)據(jù)。步驟S112 抓取數(shù)據(jù)的同時啟動了等待中的數(shù)據(jù)處理線程。步驟S113 開始解析數(shù)據(jù)。步驟S114 打印數(shù)據(jù),打印完數(shù)據(jù)后轉入步驟S106,繼續(xù)等待。如上所述,首先需要初始化動態(tài)開關界面;根據(jù)需要選擇數(shù)據(jù)打印的位置,文件或 超級終端,然后點擊開始按鈕;點擊開始按鈕之后就啟動了數(shù)據(jù)處理線程,打開監(jiān)聽開關, 進入等待狀態(tài);在等待過程中判斷是否有退出事件,是則結束,否則進入數(shù)據(jù)監(jiān)聽狀態(tài);監(jiān) 聽經(jīng)過MUX層的數(shù)據(jù);若沒有數(shù)據(jù)經(jīng)過MUX層則返回監(jiān)聽數(shù)據(jù);若有數(shù)據(jù)經(jīng)過MUX層,則抓 取數(shù)據(jù);抓取數(shù)據(jù)的同時觸發(fā)了等待中的數(shù)據(jù)處理線程;對監(jiān)聽到的數(shù)據(jù)進行解析;將解 析后的數(shù)據(jù)打印到步驟1所選位置。參看圖3,圖3是本發(fā)明在MUX層動態(tài)抓取任意通信數(shù)據(jù)的操作流程圖。
如圖3操作流程圖所示,整個過程如下步驟 S21 執(zhí)行 mux_trace. exe 程序。步驟S22 設置動態(tài)控制開關的開和關。步驟S23 若動態(tài)控制開關為關,則停止輸出任何經(jīng)過MUX層的數(shù)據(jù)流。步驟S24 在開發(fā)過程中,動態(tài)控制開關一般選擇輸出數(shù)據(jù)流到超級終端。步驟S25 在場測時,動態(tài)控制開關則可以選擇輸出數(shù)據(jù)流到文件。步驟S26 例如在設備中撥打及掛斷電話,轉入步驟S27。步驟S27 數(shù)據(jù)流被動態(tài)抓取并生成到設備文件中,供開發(fā)人員分析。通過編譯圖1所描述的函數(shù)生成mUX_trace. exe程序,該程序包括啟動數(shù)據(jù)處理 線程,監(jiān)聽數(shù)據(jù)以及抓取數(shù)據(jù)等功能。通過同步(ActiveSync)將muxjrace. exe執(zhí)行文件 復制到設備中,在設備相應目錄下找到mUX_trace. exe文件后點擊運行,即可打開動態(tài)開 關選擇界面。(1)設置控制開關,當控制開關為開,并且輸出到超級終端;(2)設置控制開關,當控制開關為開,并且輸出到文件;(3)設置控制開關,當控制開關為關時,停止任何經(jīng)過MUX層的數(shù)據(jù)。第(1)種情況,所需環(huán)境要有PC、ActiveSync、超級終端等。第(2)種情況,可脫離PC而在指定文件中獨立獲取數(shù)據(jù)。第(3)種情況,所需環(huán)境可為(2) (3)種的任一種環(huán)境。執(zhí)行mUX_trace. exe程序;在彈出的應用層界面中,可以設置動態(tài)控制開關的開 和關,從而動態(tài)的抓取或屏蔽數(shù)據(jù)。若動態(tài)控制開關為關,停止輸出任何經(jīng)過MUX層的數(shù) 據(jù);當動態(tài)控制輸出開時,數(shù)據(jù)被抓取??梢赃x擇數(shù)據(jù)輸出的位置,在開發(fā)過程中,動態(tài)控制 開關一般選擇輸出到超級終端;而在場測時,動態(tài)控制開關則可以選擇輸出到文件;例如 在設備中撥打及掛斷電話;將會有數(shù)據(jù)流被動態(tài)抓取并生成到設備文件中,供開發(fā)人員分 析。在現(xiàn)場測情況下,可以不依賴PC而獲取數(shù)據(jù),為測試節(jié)省大量的人力、物力、財 力。在整個動態(tài)抓取的過程中,開發(fā)人員可以選擇性的抓取自己所關心的數(shù)據(jù),通過對數(shù)據(jù) 的解析,可以清晰地看出數(shù)據(jù)的流向,是上層下發(fā)的數(shù)據(jù)還是底層響應的數(shù)據(jù),這樣方便問 題的精確定位,從而科學地提高開發(fā)的效率。綜上所述,以上僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。 凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的 保護范圍之內。
權利要求
一種在MUX層動態(tài)抓取數(shù)據(jù)的方法,其特征在于,該方法包括以下步驟a1、選擇打印位置,啟動數(shù)據(jù)處理線程,數(shù)據(jù)處理線程進入等待狀態(tài);b1、監(jiān)聽數(shù)據(jù),若有數(shù)據(jù)流經(jīng)過MUX層,則抓取數(shù)據(jù);c1、觸發(fā)數(shù)據(jù)處理線程,解析數(shù)據(jù)并打印數(shù)據(jù)。
2.如權利要求1所述的方法,其特征在于,步驟al中所述的選擇打印位置,可以是超級 終端,也可以是文件。
3.如權利要求1所述的方法,其特征在于,步驟bl中所述的監(jiān)聽數(shù)據(jù)之前,需要判斷是 否有退出事件,沒有退出事件則監(jiān)聽數(shù)據(jù),有退出事件則結束流程。
4.如權利要求1所述的方法,其特征在于,步驟cl中所述的打印數(shù)據(jù)步驟之后,數(shù)據(jù)處 理線程進入等待狀態(tài)。
5.如權利要求1所述的方法,其特征在于,步驟bl之前還包括步驟dl動態(tài)開關選擇, 若開關關閉,則不監(jiān)聽數(shù)據(jù),經(jīng)過MUX層的數(shù)據(jù)流被屏蔽;若開關打開,則監(jiān)聽數(shù)據(jù),輸出 MUX層的數(shù)據(jù)流。
全文摘要
本發(fā)明公開了一種在MUX層動態(tài)抓取任意通信數(shù)據(jù)的方法,通過選擇打印位置,可以是輸出到超級終端,也可以是輸出到文件,啟動數(shù)據(jù)處理線程,進入等待狀態(tài);然后監(jiān)聽數(shù)據(jù),若有數(shù)據(jù)流經(jīng)過MUX層,則抓取數(shù)據(jù);然后觸發(fā)數(shù)據(jù)處理線程,解析數(shù)據(jù)并打印數(shù)據(jù)。尤其是應用在場測時,抓取的數(shù)據(jù)可以輸出到文件,不再依賴于超級終端,并且通過動態(tài)開關有選擇的打印數(shù)據(jù)流,進而提高了現(xiàn)場測試和開發(fā)的效率。
文檔編號H04W88/02GK101902833SQ20091010776
公開日2010年12月1日 申請日期2009年5月27日 優(yōu)先權日2009年5月27日
發(fā)明者李在剛, 胡富斌, 裴浩 申請人:比亞迪股份有限公司