TWI791929B - 通用分析裝置與方法 - Google Patents

通用分析裝置與方法 Download PDF

Info

Publication number
TWI791929B
TWI791929B TW108143433A TW108143433A TWI791929B TW I791929 B TWI791929 B TW I791929B TW 108143433 A TW108143433 A TW 108143433A TW 108143433 A TW108143433 A TW 108143433A TW I791929 B TWI791929 B TW I791929B
Authority
TW
Taiwan
Prior art keywords
event
information
timer
operating system
callback function
Prior art date
Application number
TW108143433A
Other languages
English (en)
Other versions
TW202121167A (zh
Inventor
洪勝凱
鄭才進
吳奕寬
邱柄雄
Original Assignee
瑞昱半導體股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 瑞昱半導體股份有限公司 filed Critical 瑞昱半導體股份有限公司
Priority to TW108143433A priority Critical patent/TWI791929B/zh
Priority to CN202010258554.7A priority patent/CN112860529B/zh
Priority to US17/102,469 priority patent/US11507485B2/en
Publication of TW202121167A publication Critical patent/TW202121167A/zh
Application granted granted Critical
Publication of TWI791929B publication Critical patent/TWI791929B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3457Performance evaluation by simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/328Computer systems status display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/348Circuit details, i.e. tracer hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Debugging And Monitoring (AREA)
  • Crystals, And After-Treatments Of Crystals (AREA)

Abstract

本發明揭露了一種通用分析裝置適用於一異質系統。該通用分析裝置執行一資料蒐集程式以模擬一效能監控單元,從而獲得一指定對象的資訊以輸出。該通用分析裝置包含一主電路與一儲存電路。該主電路用來執行下列步驟的至少其中之一:一主動資料蒐集步驟,用來依據預設設定或使用者設定來註冊該指定對象的一事件的一回呼函數,從而主動地呼叫該回呼函數以取得該事件的資訊;以及一被動資料蒐集步驟,用來依據該預設設定或該使用者設定來註冊該指定對象的該事件,從而被動地接收該事件的資訊,以將該事件的資訊儲存於該儲存電路中。

Description

通用分析裝置與方法
本發明是關於分析裝置與方法,尤其是關於通用分析裝置與方法。
在系統開發過程中,開發者常常需要分析軟體及/或硬體效能瓶頸做為調校參考。以Linux核心為例, Linux核心提供許多機制來分析系統效能,但是這些機制多半只適用於分析Linux核心的效能,不適用於異質系統(heterogeneous system)。
另外,硬體內建的效能監控單元(performance monitoring unit, PMU)可以透過Linux核心提供的效能事件(perf)PMU介面來發揮功能,但是除了中央處理器(CPU)外,多數的硬體都缺乏相對應的PMU驅動程式。其它Linux核心所提供的機制像是延伸柏克利封包過濾器(extended Berkeley Packet Filter, eBPF)與使用者探查機制(uprobe)也各有其使用上的限制與缺點。
再者,當系統中有額外的外加硬體或其它協同處理器(co-processor)時,在缺少它們專用的PMU驅動程式的情形下,前述機制無法將這些硬體內部之PMU的資訊或是這些硬體產生的事件與系統狀態連結,從而開發者無法進行全系統的分析。
本揭露之一目的在於提供一種通用分析裝置與方法,以避免先前技術的問題。
本揭露之通用分析裝置的一實施例是運行於一裝置作業系統環境,並執行一資料蒐集程式以模擬一效能監控單元,從而獲得一第一指定對象的資訊以輸出,其中該第一指定對象運行於一第一作業系統環境。該實施例包含一主電路與一儲存電路。該主電路用來執行複數個步驟的至少其中之一,該複數個步驟包含:一主動資料蒐集步驟,用來依據預設設定或使用者設定來註冊該第一指定對象的一第一事件的一第一回呼函數,從而主動地呼叫該第一回呼函數以取得該第一事件的資訊;以及一被動資料蒐集步驟,用來依據該預設設定或該使用者設定來註冊該第一指定對象的該第一事件,從而被動地接收該第一事件的資訊,以將該第一事件的資訊儲存於一儲存電路中。該儲存電路用來儲存該第一事件的資訊。
本揭露之通用分析方法的一實施例包含執行複數個步驟的至少其中之一,該複數個步驟包含:一主動資料蒐集步驟,用來依據預設設定或使用者設定來註冊一第一指定對象的一第一事件的一第一回呼函數以及註冊一第二指定對象的一第二事件的一第二回呼函數,從而主動地呼叫該第一回呼函數以取得該第一事件的資訊,並主動地呼叫該第二回呼函數以取得該第二事件的資訊;以及一被動資料蒐集步驟,用來依據該預設設定或該使用者設定來註冊該第一指定對象的該第一事件與註冊該第二指定對象的該第二事件,從而被動地接收該第一事件的資訊以及被動地接收該第二事件的資訊,以將該第一事件的資訊與該第二事件的資訊儲存於一儲存電路中。該實施例進一步包含:依據一通用計時器的通用時間資訊,得到該第一事件的資訊所對應的該通用時間資訊以及該第二事件的資訊所對應的該通用時間資訊,從而讓該第一事件的資訊與該第二事件的資訊是基於相同的時間基準。
有關本發明的特徵、實作與功效,茲配合圖式作較佳實施例詳細說明如下。
本揭露包含通用分析(profiling)裝置與方法,適用於一異質系統(heterogeneous system);然而在實施為可行的前提下,該通用分析裝置與方法也可用於一同質系統(homogeneous system)。
圖1a顯示本揭露之通用分析裝置的一實施例。圖1a之通用分析裝置運行於一裝置作業系統環境(例如:一開源作業系統環境像是Linux環境),並執行一資料蒐集程式以模擬一效能監控單元(performance monitoring unit, PMU),從而獲得一或多個指定對象的資訊以輸出。該指定對象或該些指定對象的每一個運行於一作業系統環境,不同指定對象的作業系統環境可相同或不同,且每個指定對象的作業系統環境可異於或同於該裝置作業系統環境。該指定對象或該些指定對象的每一個是一硬體、一軟體、或一硬體與軟體的組合,像是下列其中之一:一協同處理器(co-processor);一周邊裝置;一可信執行環境(Trusted Execution Environment, TEE)裝置;一共存作業系統(Coexisting operating system, 例如Trusted OS);一使用者應用程式;一中央處理器效能計數器(CPU perf. Counter);一作業系統/驅動程式(OS/Driver init);一內存管理者(例如:Android系統的ION);以及一系統監控裝置(例如:電源/電壓/溫度監控者)。
請參閱圖1a。該/該些指定對象包含一第一指定對象12(例如:協同處理器)與一第二指定對象14(例如:周邊裝置)。第一指定對象12與第二指定對象14分別運行於一第一作業系統環境(例如:Linux環境、ucos(micro control operating system)環境)與一第二作業系統環境(例如:ucos環境、Free RTOS(real-time operating system)環境)。通用分析裝置100包含一主電路110與一儲存電路120。主電路110是由單一電路或複數個電路組成(例如:運行Linux的電腦像是一般個人電腦,或是已知或自行開發的嵌入式系統),用來執行前述資料蒐集程式,以執行複數個步驟的至少其中之一。該複數個步驟包含一主動資料蒐集步驟與一被動資料蒐集步驟。該主動資料蒐集步驟適用於一指定對象(例如:CPU內建的效能計數器;或Linux內建的統計資訊,如記憶體使用量)能夠或適合暫存它產生的資料,因此主電路110會依實施需求在適當時候主動要求該指定對象提供它產生的資料。該被動資料蒐集步驟適用於一指定對象(例如:硬體設計時沒有預留效能計數器的協同處理器;或軟體運行過程中的資訊/狀態(非軟體本身規劃中的產出資料),例如:若一影片播放軟體的輸出是影像,該軟體的記憶體使用量是該軟體運作過程中的資訊/狀態)無法或不適合暫存它產生的資料,因此該指定對象會主動將它產生的資料寫入儲存電路120,寫入的時間點依實施需求可以是因應一被註冊之事件的發生,主電路110再依實施需求於適當時候探詢(query)儲存電路120,以取得該資料。儲存電路120作為一統計資料庫(statistics pool),設計給不同指定對象共同使用它;各指定對象可透過一共享記憶體介面、一檔案系統介面、一遠端程序呼叫(remote procedure call, RPC)、或其它已知或自行開發的協定/介面來使用該統計資料庫。
承上所述。該主動資料蒐集步驟用來依據預設設定或使用者設定,註冊該第一指定對象的一第一事件的一第一回呼函數(callback function),以及註冊該第二指定對象的一第二事件的一第二回呼函數,從而主動地呼叫該第一回呼函數以取得該第一事件的資訊,以及主動地呼叫該第二回呼函數以取得該第二事件的資訊;值得注意的是,使用者可選擇性地依實施需求自行定義一回呼函數,其用來觀測特定事件的資料或該事件所造成的影響;另值得注意的是,“呼叫回呼函數”的執行可透過已知程式語言的功能(例如:掛勾功能( hook function)、函式指標)或其它已知/自行開發的功能;另外,該主動資料蒐集步驟也可選擇性地將該第一事件的資訊及/或該第二事件的資訊儲存於該儲存電路中。該被動資料蒐集步驟用來依據該預設設定或該使用者設定,註冊該第一指定對象的該第一事件以及該第二指定對象的該第二事件,從而被動地接收該第一事件的資訊以及被動地接收該第二事件的資訊,以將該第一事件的資訊與該第二事件的資訊儲存於儲存電路120中。前述“回呼函數”、 “註冊回呼函數”、 “定義回呼函數”、“註冊事件”以及“呼叫回呼函數”的每一個單獨而言是本技術領域的習知技藝,故細節在此省略。
圖1b顯示圖1a之主電路110的一實施例的功能方塊圖。圖1b之各功能方塊可以軟體模組及/或硬體的形式來實現。圖1b之主電路110的功能方塊包含:一虛擬PMU作業(virtual PMU task)模組112,用來與該裝置作業系統溝通以及控制前述複數個步驟的執行;至少一掛勾功能(hook function)模組114,用來依虛擬PMU作業模組112的指示,呼叫至少一回呼功能(callback function)模組116;該至少一回呼功能模組116,用來回應掛勾功能模組114的要求,以取回至少一指定對象之事件的資訊;一虛擬PMU介面(virtual PMU I/F)模組118,用來將一回呼函式與一掛勾功能模組114連結,以經由該掛勾功能模組114喚起該回呼函式以輸出該資訊給虛擬PMU作業模組112;以及一統計資料庫管理模組119,用來管理儲存空間,以在需要時保留儲存電路120的一儲存空間給一指定對象。於一實作範例中,虛擬PMU介面模組118藉由執行圖3的步驟,以實現它的功能。由於本領域人士可依本揭露及本領域的通常知識來瞭解如何實現圖1b的各模組,故細節在此省略。
圖2顯示主電路110執行該複數個步驟以蒐集資料之一實施例。圖2包含下列步驟: S210:開始蒐集資料。 S220:判斷是否有一事件需要觀測;若是,至步驟S240;若否,至步驟S230。該事件為預設的/使用者設定的待觀測之事件的其中之一。 S230:在仍有事件等待觀測的情形下,回到步驟S220。 S240:判斷該事件是否關聯該主動資料蒐集步驟;若是,至步驟S242;若否,至步驟S250。 S242:主動地呼叫該事件所對應的回呼函數,以取得該事件的資訊。 S250:判斷該事件是否關聯該被動資料蒐集步驟;若是,至步驟S252;若否,至步驟S260。 S252:探詢儲存電路120以取得該事件的資訊。 S260:分析儲存電路120的資料以判斷是否有一單一事件並分析之。舉例而言,該單一事件像是一非預期的網路中斷事件,通常沒有必要被註冊,然此並非實施限制。 S270:判斷是否結束蒐集資料;若是,至步驟S280;若否,至步驟S220。 S280:結束蒐集資料。
圖3顯示註冊一指定對象之一事件或註冊該事件的一回呼函數的一實施例。圖3包含下列步驟: S310:定義/定製(defined/customized)一事件或該事件的一回呼函數。 S320:註冊該事件或該事件的該回呼函數。 S330:判斷是否需要保留儲存電路120的一儲存空間給該指定對象;若是,至步驟S332;若否,至步驟S340。舉例而言,當該指定對象無法或不適合暫存資料時,本步驟會保留該儲存空間給該指定對象;另舉例而言,當該指定對象能夠或適合暫存資料時,本步驟可選擇性地保留該儲存空間給該指定對象。 S332:保留該儲存空間給該指定對象。值得注意的是,“保留儲存空間給特定對象”可藉由已知或自行開發的技術來實現,故細節在此省略。 S340:記錄該事件或該事件的該回呼函數。 S350:結束註冊。
圖4顯示本揭露之通用分析裝置的另一實施例。圖4的通用分析裝置400進一步包含一通用計時器410,用來提供通用時間資訊作為一共同時間基準。於一實作範例中,通用計時器410提供該通用時間資訊給第一/第二指定對象12/14(如圖4之虛線所示),因此,第一/第二指定對象12/14可採用該通用時間資訊,並產生該第一/第二事件的資訊包含該通用時間資訊。於另一實作範例中,第一/第二指定對象12/14使用一第一/第二計時器,因此該第一/第二事件的資訊包含該第一/第二計時器的第一/第二時間資訊;藉由存取設定或交換訊息等已知或自行開發的方式,主電路110可取得該第一/第二計時器與通用計時器410之間的差異,然後可據以將該第一/第二事件的資訊所包含的該第一/第二時間資訊轉換為該通用時間資訊。舉例而言,該第一/第二計時器與通用計時器410之間的差異包含啟始計數值的差異與計數頻率的比例,主電路110可據以將該第一/第二時間資訊(事件發生時的計數值)乘以該比例再加上該差異,以將該第一/第二時間資訊轉換為該通用時間資訊。
請參閱圖1a~1b。於一實作範例中,前述主動資料蒐集步驟包含:主電路110取得該第一事件的資訊與該第二事件的資訊後,藉由該裝置作業系統所提供的機制(例如:Linux核心提供的效能事件(perf)機制)或自行開發的機制,經由同一介面(例如:Linux原生介面)(未顯示於圖)輸出該第一事件的資訊與該第二事件的資訊,輸出資訊的方式可透過網路、作業系統的系統檔或其它媒介。於一實作範例中,前述被動資料蒐集步驟包含:主電路110探詢儲存電路120以取得該第一事件的資訊與該第二事件的資訊,之後藉由該裝置作業系統所提供的機制(例如:Linux核心提供的效能事件(perf)機制)或自行開發的機制,經由同一介面(例如:Linux原生介面)輸出該第一事件的資訊與該第二事件的資訊,輸出資訊的方式可透過網路、作業系統的系統檔或其它媒介。
圖5顯示本揭露之通用分析方法的一實施例,其可由圖1a/4的通用分析裝置100/400來執行。圖5的實施例包含: S510:執行複數個步驟的至少其中之一,該複數個步驟包含一主動資料蒐集步驟與一被動資料蒐集步驟,用來主動地/被動地取得/儲存一第一事件的資訊,並主動地/被動地取得/儲存一第二事件的資訊。 S520:依據一通用計時器的通用時間資訊,得到該第一事件的資訊所對應的該通用時間資訊以及該第二事件的資訊所對應的該通用時間資訊。
由於本領域具有通常知識者能夠參酌圖1a~4之實施例的揭露來瞭解圖5之實施例的細節與變化,亦即圖1a~4之實施例的技術特徵均可合理應用於圖5之實施例中,因此,重複及冗餘的說明在此省略。
請注意,在實施為可能的前提下,本技術領域具有通常知識者可選擇性地實施前述任一實施例中部分或全部技術特徵,或選擇性地實施前述複數個實施例中部分或全部技術特徵的組合,藉此增加本發明實施時的彈性。
綜上所述,本揭露之通用分析裝置與方法能夠模擬一效能監控單元,以獲得一或多個指定對象的資訊以輸出,而無需準備專屬於該一或多個指定對象的效能監控硬體及軟體。因此,本揭露之通用分析裝置與方法適用於異質分析系統,且具有極佳的成本效益。
雖然本發明之實施例如上所述,然而該些實施例並非用來限定本發明,本技術領域具有通常知識者可依據本發明之明示或隱含之內容對本發明之技術特徵施以變化,凡此種種變化均可能屬於本發明所尋求之專利保護範疇,換言之,本發明之專利保護範圍須視本說明書之申請專利範圍所界定者為準。
12:第一指定對象 14:第二指定對象 100:通用分析裝置 110:主電路 120:儲存電路 112:虛擬PMU作業模組 114:掛勾功能模組 116:回呼功能模組 118:虛擬PMU介面模組 119:統計資料庫管理模組 PMU:效能監控單元 RPC:遠端程序呼叫 REE:開放式執行環境 TEE:可信執行環境 S210~S280:步驟 S310~S350:步驟 400:通用分析裝置 410:通用計時器 S510~S520:步驟
[圖1a]顯示本揭露之通用分析裝置的一實施例; [圖1b]顯示圖1a之主電路的一實施例的功能方塊圖; [圖2]顯示圖1a之主電路執行複數個步驟以蒐集資料的一實施例; [圖3]顯示註冊一指定對象之一事件或註冊該事件的一回呼函數的一實施例; [圖4]顯示本揭露之通用分析裝置的另一實施例;以及 [圖5]顯示本揭露之通用分析方法的一實施例。
12:第一指定對象
14:第二指定對象
100:通用分析裝置
110:主電路
120:儲存電路

Claims (8)

  1. 一種通用分析(profiling)裝置,運行於一裝置作業系統環境,並執行一資料蒐集程式以模擬一效能監控單元,從而獲得一第一指定對象的資訊以輸出,該第一指定對象運行於一第一作業系統環境,該通用分析裝置包含:一主電路,用來執行複數個步驟的至少其中之一,該複數個步驟包含:一主動資料蒐集步驟,用來依據預設設定或使用者設定來註冊該第一指定對象的一第一事件的一第一回呼函數,從而主動地呼叫該第一回呼函數以取得該第一事件的資訊;以及一被動資料蒐集步驟,用來依據該預設設定或該使用者設定來註冊該第一指定對象的該第一事件,從而被動地接收該第一事件的資訊,以將該第一事件的資訊儲存於一儲存電路中;以及該儲存電路,用來儲存該第一事件的資訊,其中該主電路包含:一虛擬PMU作業(virtual PMU task)模組,用來與該裝置作業系統環境之一作業系統溝通,以及用來控制前述複數個步驟的執行;至少一掛勾功能(hook function)模組,用來依該虛擬PMU作業模組的指示,呼叫至少一回呼功能模組;該至少一回呼功能模組,用來回應該至少一掛勾功能模組,以取回該第一事件的資訊;以及一虛擬PMU介面(virtual PMU I/F)模組,用來將一回呼函式與該掛勾功能模組連結,以經由該掛勾功能模組喚起該回呼函式以輸出該第一事件的資訊給該虛擬PMU作業模組。
  2. 如申請專利範圍第1項所述之通用分析裝置,其中該複數個步驟進一步包含:一單一事件分析步驟,用來分析該儲存電路的資料以判斷是否有一單一事件。
  3. 如申請專利範圍第1項所述之通用分析裝置,進一步包含:一通用計時器,用來提供通用時間資訊給該第一指定對象,其中該第一事件的資訊包含該通用時間資訊。
  4. 如申請專利範圍第1項所述之通用分析裝置,進一步包含:一通用計時器,其中該第一指定對象使用一第一計時器,該第一事件的資訊包含該第一計時器的第一時間資訊,該主電路依據該第一計時器與該通用計時器之間的差異,將該第一事件的資訊的該第一時間資訊轉換為該通用時間資訊。
  5. 如申請專利範圍第1項所述之通用分析裝置,其中該主動資料蒐集步驟進一步用來依據該預設設定或該使用者設定來註冊一第二指定對象的一第二事件的一第二回呼函數,從而主動地呼叫該第二回呼函數以取得該第二事件的資訊;該被動資料蒐集步驟進一步用來依據該預設設定或該使用者設定來註冊該第二指定對象的該第二事件,從而被動地接收該第二事件的資訊,以將該第二事件的資訊儲存於該儲存電路中,其中該第二指定對象運作於一第二作業系統環境。
  6. 一種通用分析方法,包含:執行複數個步驟的至少其中之一,該複數個步驟包含:一主動資料蒐集步驟,用來依據預設設定或使用者設定來註冊一第一指定對象的一第一事件的一第一回呼函數以及註冊一第二指定對象的一第二事件的一第二回呼函數,從而主動地呼叫該第一回呼函數以取得該第一 事件的資訊,並主動地呼叫該第二回呼函數以取得該第二事件的資訊;以及一被動資料蒐集步驟,用來依據該預設設定或該使用者設定來註冊該第一指定對象的該第一事件與該第二指定對象的該第二事件,從而被動地接收該第一事件的資訊以及被動地接收該第二事件的資訊,以將該第一事件的資訊與該第二事件的資訊儲存於一儲存電路中;以及依據一通用計時器的通用時間資訊,得到該第一事件的資訊所對應的該通用時間資訊以及該第二事件的資訊所對應的該通用時間資訊,其中該通用分析方法是由一通用分析裝置來執行,該通用分析裝置包含該通用計時器;該第一事件的資訊包含該第一指定對象之一第一計時器的時間資訊,該第二事件的資訊包含該第二指定對象之一第二計時器的時間資訊;該通用分析方法進一步包含下列步驟:依據該第一計時器與該通用計時器之間的計數頻率差異,將該第一計時器的時間資訊轉換為該第一事件的資訊所對應的該通用時間資訊;以及依據該第二計時器與該通用計時器之間的計數頻率差異,將該第二計時器的時間資訊轉換為該第二事件的資訊所對應的該通用時間資訊。
  7. 如申請專利範圍第6項所述之通用分析方法,其中該通用分析裝置運行於一裝置作業系統環境,該第一指定對象運行於一第一作業系統環境,該第二指定對象運行於一第二作業系統環境,該裝置作業系統環境、該第一作業系統環境與該第二作業系統環境的至少其中之二不同。
  8. 如申請專利範圍第6項所述之通用分析方法,其中該複數個步驟進一步包含:一單一事件分析步驟,用來分析該儲存電路的資料以判斷是否有一單一事件。
TW108143433A 2019-11-28 2019-11-28 通用分析裝置與方法 TWI791929B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW108143433A TWI791929B (zh) 2019-11-28 2019-11-28 通用分析裝置與方法
CN202010258554.7A CN112860529B (zh) 2019-11-28 2020-04-03 通用分析装置与方法
US17/102,469 US11507485B2 (en) 2019-11-28 2020-11-24 Universal profiling device and method for simulating performance monitoring unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108143433A TWI791929B (zh) 2019-11-28 2019-11-28 通用分析裝置與方法

Publications (2)

Publication Number Publication Date
TW202121167A TW202121167A (zh) 2021-06-01
TWI791929B true TWI791929B (zh) 2023-02-11

Family

ID=75996106

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108143433A TWI791929B (zh) 2019-11-28 2019-11-28 通用分析裝置與方法

Country Status (3)

Country Link
US (1) US11507485B2 (zh)
CN (1) CN112860529B (zh)
TW (1) TWI791929B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI819662B (zh) * 2022-06-16 2023-10-21 瑞昱半導體股份有限公司 系統剖析調校方法與電腦系統

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080155542A1 (en) * 2004-08-18 2008-06-26 Jaluna Sa Operating Systems
TW201140313A (en) * 2010-05-05 2011-11-16 Univ Nat Taiwan Virtual performance monitoring apparatus and method for using to monitor system performance
US20120084480A1 (en) * 2010-10-01 2012-04-05 Imerj LLC Auto-configuration of a docked system in a multi-os environment
CN103379000A (zh) * 2012-04-28 2013-10-30 阿里巴巴集团控股有限公司 一种并发测试方法及测试服务器
CN103890693A (zh) * 2011-10-28 2014-06-25 惠普发展公司,有限责任合伙企业 基于参数报告更新的阈值基准
TWI450104B (zh) * 2010-09-25 2014-08-21 Intel Corp 用於最大預測的效能增益之異質多處理器運算平台中之應用程式排程
TW201818240A (zh) * 2016-11-09 2018-05-16 南韓商三星電子股份有限公司 在豐富執行環境中安全地執行安全應用程式用的計算系統

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594774B1 (en) * 1999-09-07 2003-07-15 Microsoft Corporation Method and apparatus for monitoring computer system objects to improve system reliability
US7657875B2 (en) * 2005-04-12 2010-02-02 International Business Machines Corporation System and method for collecting a plurality of metrics in a single profiling run of computer code
US8595349B1 (en) * 2007-02-07 2013-11-26 Symantec Corporation Method and apparatus for passive process monitoring
US20080196043A1 (en) * 2007-02-08 2008-08-14 David Feinleib System and method for host and virtual machine administration
US9459984B2 (en) * 2007-10-29 2016-10-04 Intel Corporation Method and systems for external performance monitoring for virtualized environments
US20090293051A1 (en) * 2008-05-22 2009-11-26 Fortinet, Inc., A Delaware Corporation Monitoring and dynamic tuning of target system performance
KR101174751B1 (ko) * 2010-09-27 2012-08-17 한국인터넷진흥원 커널 콜백 매커니즘을 이용한 악성코드 자동 분석 방법
US10203974B2 (en) * 2010-12-20 2019-02-12 Microsoft Technology Licensing, Llc Probe insertion via background virtual machine
US9639445B2 (en) * 2014-10-09 2017-05-02 Insightete Corporation System and method for comprehensive performance and availability tracking using passive monitoring and intelligent synthetic activity generation for monitoring a system
CN104360904A (zh) * 2014-10-16 2015-02-18 四川长虹电器股份有限公司 基于事件总线的模块间消息传递机制
CN107908537A (zh) * 2017-11-27 2018-04-13 郑州云海信息技术有限公司 一种基于内核模块异常信息处理的系统及方法
US10949316B2 (en) * 2018-06-03 2021-03-16 Apple Inc. Detection and analysis of energy consumption of software applications
CN109976923B (zh) * 2019-03-12 2020-12-18 深圳点猫科技有限公司 一种基于微信小程序的组件通讯实现方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080155542A1 (en) * 2004-08-18 2008-06-26 Jaluna Sa Operating Systems
TW201140313A (en) * 2010-05-05 2011-11-16 Univ Nat Taiwan Virtual performance monitoring apparatus and method for using to monitor system performance
TWI450104B (zh) * 2010-09-25 2014-08-21 Intel Corp 用於最大預測的效能增益之異質多處理器運算平台中之應用程式排程
US20120084480A1 (en) * 2010-10-01 2012-04-05 Imerj LLC Auto-configuration of a docked system in a multi-os environment
CN103890693A (zh) * 2011-10-28 2014-06-25 惠普发展公司,有限责任合伙企业 基于参数报告更新的阈值基准
CN103379000A (zh) * 2012-04-28 2013-10-30 阿里巴巴集团控股有限公司 一种并发测试方法及测试服务器
TW201818240A (zh) * 2016-11-09 2018-05-16 南韓商三星電子股份有限公司 在豐富執行環境中安全地執行安全應用程式用的計算系統

Also Published As

Publication number Publication date
CN112860529B (zh) 2022-11-08
US11507485B2 (en) 2022-11-22
TW202121167A (zh) 2021-06-01
CN112860529A (zh) 2021-05-28
US20210165724A1 (en) 2021-06-03

Similar Documents

Publication Publication Date Title
US8028277B2 (en) Self-healing system and method for code optimization in a computing environment
US10353725B2 (en) Request processing techniques
US11093270B2 (en) Fast-booting application image
US9245113B2 (en) Out of band vital product data collection
TWI304548B (en) Method, system, computer readable recording medium recording instructions for counting instruction execution and data accesses for specific types of instructions
JP5969610B2 (ja) ポータブルコンピューティングデバイスにおける分散リソース管理
TWI453582B (zh) 中央處理單元量測設備之虛擬化
US7865901B2 (en) Managing memory resident objects to optimize a runtime environment
US10346148B2 (en) Per request computer system instances
EP3221789A1 (en) Method and system for code offloading in mobile computing
US20030135720A1 (en) Method and system using hardware assistance for instruction tracing with secondary set of interruption resources
JPH09500466A (ja) オブジェクト指向ホスト・システム
GB2383437A (en) Integrated hardware treace unit
US11709720B1 (en) Protocol for correlating user space data with kernel space data
WO2023201893A1 (zh) 一种计算任务调度方法、装置、电子设备及可读存储介质
JP2013537340A (ja) ポータブルコンピューティングデバイスのリソースを管理するためのシステムおよび方法
EP3204848B1 (en) Real-time reporting based on instrumentation of software
US10474509B1 (en) Computing resource monitoring and alerting system
TWI791929B (zh) 通用分析裝置與方法
US8489867B2 (en) Monitoring events and incrementing counters associated therewith absent taking an interrupt
Parmer et al. Mutable protection domains: Adapting system fault isolation for reliability and efficiency
WO2024007934A1 (zh) 中断处理方法、电子设备和存储介质
Bertolotti et al. Modular design of an open-source, networked embedded system
Vukovic Dataflow abstractions for serverless computing
McLeod Usermode OS components on seL4 with rump kernels