移動設(shè)備1000可經(jīng)由可移動存儲器接口 1031與這些類型的非易失性 可移動存儲器接口,或可經(jīng)由通用串行總線(USB)、IEEE 10394、一個或多個有線端口 1040、 或天線1065連接。在這些實施例中,可移動存儲器設(shè)備1035-437可經(jīng)由通信模塊1032與移 動設(shè)備接口。在某些實施例中,并非所有這些類型的存儲器都可被包括在單個移動設(shè)備上。 在其他實施例中,可將這些和其他類型的可移動存儲器中的一個或多個包括在單個移動設(shè) 備上。
[0118] 在某些實施例中,可按更永久地附連到移動設(shè)備1000的方式連接硬盤驅(qū)動器 1036。例如,硬盤驅(qū)動器1036可連接到諸如并行高級技術(shù)附件(PATA)、串行高級技術(shù)附件 (SATA)或其他可連接到總線1015的附件等接口。在此類實施例中,移除硬盤驅(qū)動器可涉及 移除移動設(shè)備1000的外殼并移除將硬盤驅(qū)動器1036連接到移動設(shè)備1000內(nèi)的支承結(jié)構(gòu)的 螺絲釘或其他緊固件。
[0119] 以上討論和在圖10中示出的可移動存儲設(shè)備1035-1037及其相關(guān)聯(lián)的計算機存儲 介質(zhì)提供對用于移動設(shè)備1000的計算機可讀指令、程序模塊、數(shù)據(jù)結(jié)構(gòu)、和其他數(shù)據(jù)的存 儲。例如,一個或多個可移動存儲器設(shè)備1035-1037可存儲由移動設(shè)備1000拍攝的圖像、語 音錄音、聯(lián)系人信息、程序、用于程序的數(shù)據(jù)等。
[0120] 用戶可通過諸如鍵區(qū)1041和話筒1042等輸入設(shè)備向移動設(shè)備1000中輸入命令和 信息。在某些實施例中,顯示器1043可以是觸敏屏幕并可允許用戶在其上輸入命令和信息。 鍵區(qū)1041和顯示器1043可通過耦合到總線1015的用戶輸入接口 1050連接到處理單元1005, 但也可由其他接口和總線結(jié)構(gòu)連接,如通信模塊1032和有線端口 1040。運動檢測1052可被 用于確定關(guān)于設(shè)備1000做出的姿勢。
[0121] 例如,用戶可經(jīng)由對話筒1042講話并經(jīng)由在鍵區(qū)1041或觸敏顯示器1043上輸入的 文本消息來與其他用戶通信。音頻單元1055可提供電信號以驅(qū)動揚聲器1044以及接收并數(shù) 字化接收自話筒1042的音頻信號。
[0122] 移動設(shè)備1000可包括提供信號以驅(qū)動相機1061的視頻單元1060。視頻單元1060還 可接收由相機1061獲得的圖像并將這些圖像提供給包括在移動設(shè)備1000上的處理單元 1005和/或存儲器。由相機1061獲得的圖像可包括視頻、不形成視頻的一個或多個圖像、或 其某一組合。
[0123] 通信模塊1032可向一根或多根天線1065提供信號并從其接收信號。天線1065之一 可發(fā)射并接收用于蜂窩電話網(wǎng)絡(luò)的消息。另一天線可發(fā)射并接收藍(lán)牙?消息。又一天線(或 共享天線)可經(jīng)由無線以太網(wǎng)網(wǎng)絡(luò)標(biāo)準(zhǔn)發(fā)射并接收網(wǎng)絡(luò)消息。
[0124] 更進(jìn)一步,天線將例如GPS信號等基于位置的信息提供給GPS接口和機制1072。進(jìn) 而,GPS機制1072使得對應(yīng)的GPS數(shù)據(jù)(例如,時間和坐標(biāo))可用于處理。
[0125] 在某些實施例中,可使用單根天線來發(fā)射和/或接收用于超過一種類型的網(wǎng)絡(luò)的 消息。例如,單根天線可發(fā)射并接收語音和分組消息。
[0126] 當(dāng)在網(wǎng)絡(luò)化環(huán)境中操作時,移動設(shè)備1000可連接到一個或多個遠(yuǎn)程設(shè)備。遠(yuǎn)程設(shè) 備可包括個人計算機、服務(wù)器、路由器、網(wǎng)絡(luò)PC、蜂窩電話、媒體回放設(shè)備、對等設(shè)備或其他 常見的網(wǎng)絡(luò)節(jié)點,并且一般包括上面相對于移動設(shè)備1000所述的許多或全部元件。
[0127] 本文所描述的主題的各方面可與眾多其他通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置一起 操作。適用于此處所描述的主題的各方面的公知的計算系統(tǒng)、環(huán)境和/或配置的示例包括, 但不限于,個人計算機、服務(wù)器計算機、手持式或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器 的系統(tǒng)、機頂盒、可編程消費電子產(chǎn)品、網(wǎng)絡(luò)PC、小型計算機、大型計算機、包括上述系統(tǒng)或 設(shè)備中的任一個的分布式計算環(huán)境等。
[0128] 此處所描述的主題的各方面可在由移動設(shè)備執(zhí)行的諸如程序模塊等計算機可執(zhí) 行指令的一般上下文中描述。一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù) 類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等。本文所述的主題的各方面也可以在其中任務(wù)由 通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行的分布式計算環(huán)境中實現(xiàn)。在分布式計算環(huán)境中, 程序模塊可以位于包括存儲器存儲設(shè)備的本地和遠(yuǎn)程計算機存儲介質(zhì)中。
[0129] 此外,雖然此處頻繁使用術(shù)語服務(wù)器,但可以認(rèn)識到,該術(shù)語也可涵蓋客戶機、分 布在一個或多個計算機上的一個或多個進(jìn)程的集合、一個或多個獨立的存儲設(shè)備、一個或 多個其他設(shè)備的集合、以上的一個或多個的組合,等等。
[0130]
[0131] 本發(fā)明易于作出各種修改和替換構(gòu)造,但其某些說明性實施例在附圖中示出 并在上面被詳細(xì)地描述。然而應(yīng)當(dāng)了解,這不旨在將本發(fā)明限于所公開的具體形式,而是相 反地,旨在覆蓋落入本發(fā)明的精神和范圍之內(nèi)的所有修改、替換構(gòu)造和等效方案。
【主權(quán)項】
1. 一種方法,包括:自動檢測應(yīng)用代碼,包括將一個或多個記錄函數(shù)以及一個或多個事 件處理程序插入所述應(yīng)用代碼以記錄事件,以及將代碼插入所述應(yīng)用代碼以為異步調(diào)用的 調(diào)用指派標(biāo)識符,并且使提供給所述異步調(diào)用的回調(diào)繞路到繞路代碼以基于所述基于所述 標(biāo)識符將所述回調(diào)與所述異步調(diào)用相關(guān)聯(lián)。2. 如權(quán)利要求1所述的方法,其特征在于,將一個或多個記錄函數(shù)以及一個或多個事件 處理程序插入所述應(yīng)用代碼包括向所述應(yīng)用代碼添加導(dǎo)出一個或多個記錄函數(shù)以及一個 或多個事件處理程序的記錄程序庫。3. 如權(quán)利要求1所述的方法,其特征在于,進(jìn)一步包括: a) 添加繞路庫以提供所述繞路代碼,或者 b) 記錄用戶事務(wù)的事件,或者 c) 記錄包括與至少一個事件有關(guān)的定時信息的事件,或者 d) 跟蹤異常路徑,或者 e) 記錄應(yīng)用執(zhí)行期間的事件,包括記錄以下至少一者:用戶界面(UI)操縱、線程執(zhí)行、 異步調(diào)用和回調(diào)、UI更新或線程同步,或者 f) a)、b)、c)、d)、e)或f)的任何組合。4. 如權(quán)利要求3所述的方法,其特征在于,進(jìn)一步包括分析所述用戶事務(wù),包括標(biāo)識其 中的關(guān)鍵路徑,或者b)將所述用戶事務(wù)表示為有向無環(huán)圖,并且其中標(biāo)識所述關(guān)鍵路徑包 括處理所述有向無環(huán)圖,或者c)a)和b)兩者。5. -種系統(tǒng),包括:檢測程序,所述檢測程序被配置成用記錄功能以及用將異步調(diào)用與 回調(diào)相關(guān)聯(lián)的代碼來檢測應(yīng)用代碼,以及分析組件,所述分析組件被配置成處理在所述應(yīng) 用代碼的執(zhí)行期間經(jīng)由所述記錄功能被記錄到有向無環(huán)圖中的數(shù)據(jù),所述數(shù)據(jù)表示在執(zhí)行 期間發(fā)生的一個或多個事務(wù)。6. 如權(quán)利要求5所述的系統(tǒng),其特征在于,所述分析組件被配置成a)處理至少一個有向 無環(huán)圖以確定關(guān)鍵路徑,或者b)將被記錄的數(shù)據(jù)處理成異常路徑,或者a)與b)兩者。7. 如權(quán)利要求5所述的系統(tǒng),其特征在于,所述記錄功能被配置成記錄涉及以下至少一 者的數(shù)據(jù):用戶事務(wù)、計時器事務(wù)、傳感器驅(qū)動事務(wù)、用戶界面(UI)操縱、線程執(zhí)行、異步調(diào) 用和回調(diào)、UI更新、或者線程同步。8. -種或多種具有可執(zhí)行指令的機器可讀存儲介質(zhì),所述可執(zhí)行指令在被執(zhí)行時執(zhí)行 以下步驟,包括: (a) 執(zhí)行被檢測的應(yīng)用代碼; (b) 記錄經(jīng)由所述被檢測的應(yīng)用代碼在執(zhí)行期間的數(shù)據(jù),所述數(shù)據(jù)對應(yīng)于以下至少一 者:用戶界面(UI)操縱、線程執(zhí)行、異步調(diào)用和回調(diào)、UI更新或線程同步;以及 (c) 更新所述數(shù)據(jù)以供分析處理。9. 如權(quán)利要求8所述的一種或多種機器可讀存儲介質(zhì),其特征在于,記錄在執(zhí)行期間的 數(shù)據(jù)包括將異步調(diào)用匹配到對應(yīng)的回調(diào)。10. 如權(quán)利要求8所述的一種或多種機器可讀存儲介質(zhì),其特征在于,將所述異步調(diào)用 匹配到對應(yīng)的回調(diào)包括檢測所述異步調(diào)用以指派唯一標(biāo)識符并且將提供給所述異步調(diào)用 的回調(diào)繞路到繞路代碼,并且經(jīng)由所述標(biāo)識符來將所述回調(diào)與所述異步調(diào)用相關(guān)聯(lián)。
【專利摘要】本公開的各方面涉及在實際使用期間監(jiān)視應(yīng)用性能,尤其是移動應(yīng)用性能。描述了檢測移動應(yīng)用二進(jìn)制文件以自動標(biāo)識用戶事務(wù)中的關(guān)鍵路徑,包括跨異步調(diào)用邊界。蹤跡數(shù)據(jù)由被檢測應(yīng)用記錄以捕捉UI操縱、線程執(zhí)行、異步調(diào)用和回調(diào)、UI更新和/或線程同步。蹤跡數(shù)據(jù)被分析以幫助開發(fā)者改善應(yīng)用性能。
【IPC分類】G06F11/34, G06F11/36
【公開號】CN105556482
【申請?zhí)枴緾N201480035453
【發(fā)明人】西瓦林甘姆 L·拉溫德拉納斯, J·D·帕德耶, S·阿加瓦爾, R·瑪哈簡, I·奧博米勒, S·沙亞德
【申請人】微軟技術(shù)許可有限責(zé)任公司
【公開日】2016年5月4日
【申請日】2014年6月17日
【公告號】EP3011457A1, US20140380282, WO2014204996A1