本發明涉及無線通信技術領域,特別是涉及一種在windows下對linux系統中無線通訊模塊調試數據抓取方法和系統。
背景技術:
隨著無線通信技術的發展,4glte(longtermevolution,長期演進技術)網絡逐漸普及,其應用領域越來越廣。相比2g和3g無線通信技術,4glte無線通信技術的網絡傳輸速度更快,可以提供更全面的無線數據傳輸服務。在lte無線通信技術的應用領域中,外置設備通過無線通信模塊外置撥號直接連到internet具有廣泛的應用價值,是物聯網技術的重要實現手段。
無線通訊模塊可設置在不同系統中,無線通訊模塊的調試數據詳細記錄了無線通訊模塊的不同服務進程,實時抓取無線通訊模塊的調試數據有利于了解無線通訊模塊的最新動態,以便進行數據無線通信控制。傳統的無線通訊模塊調試數據抓取方式是講無線通訊模塊嵌入于windows系統,使用windows工具抓取模塊調試數據。當無線通訊模塊嵌入于linux系統中,便無法使用windows工具抓取模塊調試數據。傳統的無線通訊模塊調試數據抓取方式無法實現對嵌入于linux系統中的無線通訊模塊在windows下抓取調試數據。
技術實現要素:
基于此,有必要針對上述問題,提供一種可實現對嵌入于linux系統中的無線通訊模塊在windows下抓取調試數據的在windows下對linux系統中無線通訊模塊調試數據抓取方法和系統。
一種在windows下對linux系統中無線通訊模塊調試數據抓取方法,包括以下步驟:
在windows系統下檢測到加載有linux橋式驅動后加載windows驅動程序,生成與所述linux橋式驅動通信的串行接口;
通過所述串行接口建立windows系統下與所述linux橋式驅動的跟蹤通道;
獲取linux系統中無線通訊模塊的調試數據,并將獲取的調試數據發送至所述linux橋式驅動;
在windows系統下接收到數據抓取指令后,經所述跟蹤通道從所述linux橋式驅動獲取調試數據并在windows系統下輸出。
一種在windows下對linux系統中無線通訊模塊調試數據抓取系統,包括:
接口生成模塊,用于在windows系統下檢測到加載有linux橋式驅動后加載windows驅動程序,生成與所述linux橋式驅動通信的串行接口;
通道建立模塊,用于通過所述串行接口建立windows系統下與所述linux橋式驅動的跟蹤通道;
數據采集模塊,用于獲取linux系統中無線通訊模塊的調試數據,并將獲取的調試數據發送至所述linux橋式驅動;
數據抓取模塊,用于在windows系統下接收到數據抓取指令后,經所述跟蹤通道從所述linux橋式驅動獲取調試數據并在windows系統下輸出。
上述在windows下對linux系統中無線通訊模塊調試數據抓取方法和系統,在windows系統下檢測到加載有linux橋式驅動后加載windows驅動程序,生成與linux橋式驅動通信的串行接口。通過串行接口建立windows系統下與linux橋式驅動的跟蹤通道。獲取linux系統中無線通訊模塊的調試數據,并將獲取的調試數據發送至linux橋式驅動。在windows系統下接收到數據抓取指令后,經跟蹤通道從linux橋式驅動獲取調試數據并在windows系統下輸出。通過加載windows驅動程序生成windows系統下與linux橋式驅動的串行接口,實現windows與linux系統的通訊。獲取調試數據發送至linux橋式驅動,實現無線通訊模塊與linux橋式驅動的通訊。利用串行接口建立windows系統下與linux橋式驅動的跟蹤通道進行數據抓取,實現windows系統下捕捉linux系統中無線通訊模塊的調試數據。
附圖說明
圖1為一實施例中在windows下對linux系統中無線通訊模塊調試數據抓取方法的流程圖;
圖2為另一實施例中在windows下對linux系統中無線通訊模塊調試數據抓取方法的流程圖;
圖3為一實施例中gadget驅動的體系結構示意圖;
圖4為一實施例中gadget驅動的配置示設置意圖;
圖5為一實施例中gadget驅動的配置確認示意圖;
圖6為一實施例中gadget驅動的配置結果示意圖;
圖7為一實施例中windows驅動程序加載示意圖;
圖8為一實施例中串行接口顯示示意圖;
圖9為一實施例中串行接口測試示意圖;
圖10為一實施例中結束串行接口測試示意圖;
圖11為一實施例中跟蹤通道配置示意圖;
圖12為一實施例中數據保存目錄示意圖;
圖13為一實施例中開始捕獲調試數據示意圖;
圖14為一實施例中停止捕獲調試數據示意圖;
圖15為一實施例中跟蹤文件復制示意圖;
圖16為一實施例中在windows下對linux系統中無線通訊模塊調試數據抓取系統的結構圖;
圖17為另一實施例中在windows下對linux系統中無線通訊模塊調試數據抓取系統的結構圖。
具體實施方式
在一個實施例中,一種在windows下對linux系統中無線通訊模塊調試數據抓取方法,實現在windows系統下對linux系統中無線通訊模塊的調試數據捕捉,windows系統和linux系統可以是安裝在同一個終端設備中,也可以是安裝在不同設備上。為便于理解,以下均以usb(universalserialbus,通用串行總線)設備安裝linux系統,通過usb接口與windows主機連接為例進行解釋說明。如圖1所示,該方法包括以下步驟:
步驟s120:在windows系統下檢測到加載有linux橋式驅動后加載windows驅動程序,生成與linux橋式驅動通信的串行接口。
linux橋式驅動的具體類型并不唯一,本實施例中,linux橋式驅動為gadget驅動程序。gadget驅動程序是一個usb設備端的linuxusbgadget驅動框架,在具有usb裝置的硬件設備的linux系統上運行,例如pda(personaldigitalassistant,即個人數碼助理)、嵌入式linux系統或具有usb開發卡的pc(personalcomputer,個人計算機)。gadget驅動程序通過usb與cdc(communicationsdeviceclass,通信設備類)acm(abstractcontrolmodel,抽象控制模型),驅動程序或在主機pc上運行的通用usb串行驅動程序通信。
本實施例中,在usb設備加載linux橋式驅動完成設置后,使用usb電纜將usb設備連接到windows主機時,windows主機識別linux橋式驅動后加載windows驅動程序并生成串行接口。windows驅動程序的類型并不唯一,可以是windowsacm驅動程序等。在一個實施例中,步驟s120包括步驟122和步驟124。
步驟122:在windows系統下檢測到加載有linux橋式驅動后,接收程序存儲路徑參數。
具體地,windows主機識別到加載有linux橋式驅動的usb設備后并請求驅動程序,操作人員通過輸入程序存儲路徑參數告訴windows主機驅動程序的存儲位置。
步驟124:在windows系統下根據程序存儲路徑參數查找到windows驅動程序并進行加載,生成與linux橋式驅動通信的串行接口。
windows主機根據接收的程序存儲路徑找到windows驅動程序進行加載,當驅動程序加載成功時顯示一個串行接口,用作與linux橋式驅動通信。
步驟s140:通過串行接口建立windows系統下與linux橋式驅動的跟蹤通道。
建立跟蹤通道的方式并不唯一,具體地,可在windows主機安裝stt(servertesttoolkit,服務器測試工具包)應用程序,利用stt應用程序進行通道參數配置,選擇串行接口建立windows系統下與linux橋式驅動的跟蹤通道。此外,操作人員還可通過stt應用程序設置數據保存路徑,以便于對后續獲取的調試數據進行保存。
步驟s150:獲取無線通訊模塊的調試數據,并將獲取的調試數據發送至linux橋式驅動。
無線通訊模塊嵌入于linux系統中。獲取無線通訊模塊的調試數據的方式也并不是唯一的,具體地,usb設備預先安裝橋接應用程序工具和4g調制解調器的驅動程序,通過橋接應用程序工具從4g調制解調器的跟蹤端口接收調試數據,并將調試數據發送到linux橋式驅動。
步驟s160:在windows系統下接收到數據抓取指令后,經跟蹤通道從linux橋式驅動獲取調試數據并在windows系統下輸出。
對應地,windows主機還可通過stt應用程序接收數據抓取指令,然后通過跟蹤通道從linux橋式驅動獲取調試數據并輸出。輸出調試數據的方式并不唯一,可以是輸出至顯示屏進行顯示,也可以是輸出至存儲器進行存儲。本實施例中,將調試數據存儲在stt應用程序設置數據保存路徑。stt應用程序在保存調試數據后生成文件夾并顯示,以便操作人員對保存的調試數據進行查看或編輯。
此外,在保存調試數據之后,還可在windows下接收數據操作指令,并根據數據操作指令對保存的調試數據進行操作。具體地,操作人員可通過stt應用程序輸入數據操作指令,對保存的調試數據進行查看、復制和編輯等操作,提高了數據管理便利性。
上述在windows下對linux系統中無線通訊模塊調試數據抓取方法,通過加載windows驅動程序生成windows系統下與linux橋式驅動的串行接口,實現windows與linux系統的通訊。獲取調試數據發送至linux橋式驅動,實現無線通訊模塊與linux橋式驅動的通訊。利用串行接口建立windows系統下與linux橋式驅動的跟蹤通道進行數據抓取,實現windows系統下捕捉linux系統中無線通訊模塊的調試數據。
在一個實施例中,如圖2所示,步驟s120之后,步驟s140之前,在windows下對linux系統中無線通訊模塊調試數據抓取方法還可包括步驟s130。
步驟s130:在windows系統下利用串口工具打開串行接口,并對串行接口進行通信檢測。
具體地,可通過windows主機利用串口工具打開串行接口,通過串行接口從windows主機發送測試數據至usb設備。若usb設備接收到測試數據則說明串行接口正常,通信檢測通過并進行步驟s140。
在生成串行接口之后還對串行接口進行通信檢測,并在通信檢測通過后構建跟蹤通道,避免因為串行接口故障影響后續調試數據的抓取,提高了調試數據抓取可靠性。
在一個實施例中,繼續參照圖2,步驟s120之前,在windows下對linux系統中無線通訊模塊調試數據抓取方法包括步驟s110。
步驟s110:加載linux橋式驅動,檢測linux橋式驅動的加載結果。
具體地,可在usb設備打開終端工具進入內核目錄,根據準則完成linux橋式驅動的配置。usb設備加載linux橋式驅動后檢查內核消息,獲取linux橋式驅動的加載結果。操作人員根據檢測到的加載結果判斷linux橋式驅動加載成功后,通過usb電纜將usb設備連接到windows主機,以便windows主機生成與linux橋式驅動通信的串行接口。
在一個實施例中,步驟s160之后,在windows下對linux系統中無線通訊模塊調試數據抓取方法還包括步驟s170。
步驟s170:在windows系統下接收到停止抓取指令后,停止從linux橋式驅動獲取調試數據。
對應地,同樣可通過stt應用程序接收停止抓取指令,然后停止獲取調試數據。可以理解,在進行獲取調試數據和停止獲取調試數據時,還可顯示對應的提示信息,以便操作人員知曉數據獲取狀態。例如,可通過在stt應用程序的操作窗口顯示開始跟蹤按鈕和停止跟蹤按鈕,根據實際狀態控制對應按鈕改變顏色,告知操作人員當前所處狀態,操作便利性高。
為了更好地理解上述在windows下對linux系統中無線通訊模塊調試數據抓取方法,下面結合具體實施例進行詳細的解釋說明。
如圖3所示為gadget驅動程序的體系結構,在usb設備端linux系統上,gadget驅動程序作為一個串行設備。在windows主機端系統上,gadget串行設備作為cdcacm兼容類設備或具有批量輸入和批量輸出端點的簡單供應商特定設備,并且與其他串行設備類似。
使用gadget驅動程序,usb設備的內核為“usbgadget支持”、“usbgadget驅動程序”和“串行gadget”驅動程序配置linuxgadget端內核。
在usb設備配置gadget驅動程序的過程:
1、打開usb設備終端工具,進入內核目錄(假設為“/linux-3.0.8//home/ght”),并執行<configuration>make命令(假設使用標準的menuconfig)。
2、照以下準則完成gadget驅動程序的配置:
輸入“設備驅動程序”→“usb支持”→“usbgadget支持”菜單,然后選擇邊框中的usbgadget驅動程序(串行gadget(支持cdcacm和cdcobex(objectexchange,對象交換協議))),如圖4所示。
3.配置完成后,選擇“退出”退出配置界面。然后選擇“<是>”退出保存界面。
4.完成配置后,執行make命令,編譯修改后的內核。
在usb設備加載gadget驅動程序之后進行配置確認,具體在usb設備系統啟動時,執行dmesg命令并檢查內核消息。圖5中邊框所示的信息表示系統中的gadget驅動程序已成功配置。設置gadget驅動程序后會看到/dev/ttygs0節點,如圖6所示。
在windows主機檢測到加載有gadget驅動程序的usb設備后,安裝主機端驅動程序。具體地,如果將gadget驅動程序作為acm設備加載,需要在主機端使用windows或linuxacm驅動程序。如果gadget驅動程序作為批量輸入/輸出設備加載,需要在主機端使用linux通用串行驅動程序。以下以安裝windowshostacm驅動程序為例進行說明。
在usb設備加載gadget驅動程序并使用usb電纜將usb設備連接到windows主機時,windows主機識別后請求驅動程序。操作人員通過輸入程序存儲路徑參數告訴windows主機找到包含在“linux-cdc-acm.inf”文件的文件夾中的驅動程序,如圖7所示,包括step1至step6共六個步驟。當驅動程序加載成功時顯示一個串行接口,如圖8所示。
使用串口工具打開windows主機端的串行接口,并在usb設備端執行'cat/dev/ttygs0&'來查看接收的數據。嘗試從主機端發送一些字,usb設備將得到如圖9所示的消息。測試串行接口完成后在usb設備端停止測試,如圖10所示。
usb設備安裝4g調制解調器的linux設備驅動程序以及橋接應用程序工具。橋接應用程序工具具體為ghtbridgetool,從4g調制解調器的跟蹤端口接收調試數據,并將調試數據發送到ttygs0。windows主機端的串行端口將從ttygs0.try獲取調試數據。
在windows主機端使用stt應用程序,stt應用程序用于從跟蹤端口捕獲4g調制解調器的調試數據。成功安裝stt后,雙擊桌面上的stt的快照圖標以運行應用程序。在stt的文件->配置->連接->跟蹤通道菜單中,選擇com端口作為3.1章節,波特率為115200,如圖11所示。在stt的文件->配置->會話->會話路徑菜單中,您可以指定保存數據的目錄,如圖12所示。
如圖13和圖14所示,在stt應用程序的工具菜單中,可以看到左側的開始跟蹤按鈕b1,下一個是停止跟蹤按鈕b2。單擊開始跟蹤按鈕b1捕獲調試數據,單擊停止跟蹤按鈕b2停止捕獲。單擊開始按鈕前開始跟蹤按鈕b1為藍色,停止跟蹤按鈕b2不顯示顏色。單擊開始跟蹤按鈕b1后,開始跟蹤按鈕b1不顯示顏色,停止跟蹤按鈕b2變為紅色。通過控制按鈕顯示不同顏色,以便操作人員知曉數據獲取狀態。
stt應用程序將獲取的調試數據保存在“trace_2016_05_09_105846_ts”文件夾中,單擊停止跟蹤按鈕b2,右鍵單擊“trace_2016_05_09_105846_ts”,單擊打開目錄菜單,后綴為istp的文件是跟蹤到的調試數據文件,可以選擇復制此文件,如圖15所示。
在一個實施例中,一種在windows下對linux系統中無線通訊模塊調試數據抓取系統,實現在windows系統下對linux系統中無線通訊模塊的調試數據捕捉,windows系統和linux系統可以是安裝在同一個終端設備中,也可以是安裝在不同設備上。為便于理解,以下均以usb設備安裝linux系統,通過usb接口與windows主機連接為例進行解釋說明。如圖16所示,該系統包括接口生成模塊120、通道建立模塊140、數據采集模塊150和數據抓取模塊160。
接口生成模塊120用于在windows系統下檢測到加載有linux橋式驅動后加載windows驅動程序,生成與linux橋式驅動通信的串行接口。
linux橋式驅動的具體類型并不唯一,本實施例中,linux橋式驅動為gadget驅動程序。本實施例中,在usb設備加載linux橋式驅動完成設置后,使用usb電纜將usb設備連接到windows主機時,windows主機識別linux橋式驅動后加載windows驅動程序并生成串行接口。windows驅動程序的類型并不唯一,可以是windowsacm驅動程序等。在一個實施例中,接口生成模塊120包括參數接收單元和接口生成單元。
參數接收單元用于在windows系統下檢測到加載有linux橋式驅動后,接收程序存儲路徑參數。具體地,windows主機識別到加載有linux橋式驅動的usb設備后并請求驅動程序,操作人員通過輸入程序存儲路徑參數告訴windows主機驅動程序的存儲位置。
接口生成單元用于在windows系統下根據程序存儲路徑參數查找到windows驅動程序并進行加載,生成與linux橋式驅動通信的串行接口。windows主機根據接收的程序存儲路徑找到windows驅動程序進行加載,當驅動程序加載成功時顯示一個串行接口,用作與linux橋式驅動通信。
通道建立模塊140用于通過串行接口建立windows系統下與linux橋式驅動的跟蹤通道。
具體地,可在windows主機安裝stt應用程序,利用stt應用程序進行通道參數配置,選擇串行接口建立windows系統下與linux橋式驅動的跟蹤通道。此外,操作人員還可通過stt應用程序設置數據保存路徑,以便于對后續獲取的調試數據進行保存。
數據采集模塊150用于獲取無線通訊模塊的調試數據,并將獲取的調試數據發送至linux橋式驅動。
無線通訊模塊嵌入于linux系統中。具體地,usb設備預先安裝橋接應用程序工具和4g調制解調器的驅動程序,通過橋接應用程序工具從4g調制解調器的跟蹤端口接收調試數據,并將調試數據發送到linux橋式驅動。
數據抓取模塊160用于在windows系統下接收到數據抓取指令后,經跟蹤通道從linux橋式驅動獲取調試數據并在windows系統下輸出。
對應地,windows主機還可通過stt應用程序接收數據抓取指令,然后通過跟蹤通道從linux橋式驅動獲取調試數據并輸出。本實施例中,將調試數據存儲在stt應用程序設置數據保存路徑。stt應用程序在保存調試數據后生成文件夾并顯示,以便操作人員對保存的調試數據進行查看或編輯。
此外,在保存調試數據之后,數據抓取模塊160還可在windows下接收數據操作指令,并根據數據操作指令對保存的調試數據進行操作。具體地,操作人員可通過stt應用程序輸入數據操作指令,對保存的調試數據進行查看、復制和編輯等操作,提高了數據管理便利性。
上述在windows下對linux系統中無線通訊模塊調試數據抓取系統,通過加載windows驅動程序生成windows系統下與linux橋式驅動的串行接口,實現windows與linux系統的通訊。獲取調試數據發送至linux橋式驅動,實現無線通訊模塊與linux橋式驅動的通訊。利用串行接口建立windows系統下與linux橋式驅動的跟蹤通道進行數據抓取,實現windows系統下捕捉linux系統中無線通訊模塊的調試數據。
在一個實施例中,如圖17所示,在windows下對linux系統中無線通訊模塊調試數據抓取系統還包括接口檢測模塊130。
接口檢測模塊130用于在接口生成模塊120生成與linux橋式驅動通信的串行接口之后,在windows系統下利用串口工具打開串行接口,并對串行接口進行通信檢測。
具體地,可通過windows主機利用串口工具打開串行接口,通過串行接口從windows主機發送測試數據至usb設備。若usb設備接收到測試數據則說明串行接口正常,通信檢測通過控制通道建立模塊140通過串行接口建立windows系統下與linux橋式驅動的跟蹤通道。
在生成串行接口之后還對串行接口進行通信檢測,并在通信檢測通過后構建跟蹤通道,避免因為串行接口故障影響后續調試數據的抓取,提高了調試數據抓取可靠性。
在一個實施例中,繼續參照圖17,在windows下對linux系統中無線通訊模塊調試數據抓取系統還包括驅動加載模塊110。
驅動加載模塊110用于在接口生成模塊120在windows系統下檢測到加載有linux橋式驅動后加載windows驅動程序,生成與linux橋式驅動通信的串行接口之前,加載linux橋式驅動,檢測linux橋式驅動的加載結果。
具體地,可在usb設備打開終端工具進入內核目錄,根據準則完成linux橋式驅動的配置。usb設備加載linux橋式驅動后檢查內核消息,獲取linux橋式驅動的加載結果。操作人員根據檢測到的加載結果判斷linux橋式驅動加載成功后,通過usb電纜將usb設備連接到windows主機,以便windows主機生成與linux橋式驅動通信的串行接口。
在一個實施例中,在windows下對linux系統中無線通訊模塊調試數據抓取系統還包括抓取停止模塊170。
抓取停止模塊170用于在數據抓取模塊160在windows系統下接收到數據抓取指令后,經跟蹤通道從linux橋式驅動獲取調試數據并在windows系統下輸出之后,在windows系統下接收到停止抓取指令后,停止從linux橋式驅動獲取調試數據。
對應地,同樣可通過stt應用程序接收停止抓取指令,然后停止獲取調試數據。可以理解,在進行獲取調試數據和停止獲取調試數據時,還可顯示對應的提示信息,以便操作人員知曉數據獲取狀態。例如,可通過在stt應用程序的操作窗口顯示開始跟蹤按鈕和停止跟蹤按鈕,根據實際狀態控制對應按鈕改變顏色,告知操作人員當前所處狀態,操作便利性高。
以上所述實施例的各技術特征可以進行任意的組合,為使描述簡潔,未對上述實施例中的各個技術特征所有可能的組合都進行描述,然而,只要這些技術特征的組合不存在矛盾,都應當認為是本說明書記載的范圍。
以上所述實施例僅表達了本發明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對發明專利范圍的限制。應當指出的是,對于本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干變形和改進,這些都屬于本發明的保護范圍。因此,本發明專利的保護范圍應以所附權利要求為準。