?? 00000009.htm
字號:
<?xml version="1.0" encoding="gb2312"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"/><title>WindRiver產品介紹(4)--部分增強工具介紹 jacobw </title></head><body><center><h1>BBS 水木清華站∶精華區</h1></center><a name="top"></a>發信人: nonsun (無晴), 信區: Embedded <br />標 題: WindRiver產品介紹(4)--部分增強工具介紹 <br />發信站: BBS 水木清華站 (Tue May 22 23:56:02 2001) <br /> <br />WindRiver產品介紹(4)——部分增強工具介紹 <br /> <br />呵呵,小子借花獻佛,下列內容來自WindRiver的相關 <br />產品介紹資料,偶只是編輯整理了一下下 ^_*。 <br /> <br />四、增強的工具 <br /> <br />PerformancePak <br /> <br />實時系統通常要求快速可靠。擁有PerformancePak, Tornado開發人員就擁有 <br />兩個最重要的開發快速可靠的實時系統的可視化工具:用于運行分析的 <br />ScopeProfile和用于內存分析的MemScope。PerformancePak綁定的這兩個工具 <br />為用戶深層次了解目標系統提供了強有力的手段。 <br /> <br />ScopeProfile: <br />實時系統必須充分發揮處理器的性能。遺憾的是,造成CPU低效率運行的原因 <br />很難發現。輪廓圖將有助于優化和分析CPU的運行情況,從而獲得各項應用時 <br />CPU的占用情況。如果開發人員能夠真正理解應用運行時CPU的性能瓶頸,就可 <br />以很容易的提高應用代碼的質量。輪廓圖在編程中是很重要的,通過它可以完 <br />整的評估應用是否過多的消耗了CPU的資源,以及系統是否充分利用了CPU的效 <br />率。 <br /> <br />在VxWorks實時操作系統,ScopeProfile實時刷新輪廓圖,以追蹤現時的CPU狀 <br />況,提供了對每個函數的詳細分析,并分解當前正在運行的任務內各個程序, <br />精確指出何處效率不高,以及它們的效率是如何隨時間變化的。ScopeProfile <br />與Tornado開發平臺完整地集成一起,它是調整對時間極為苛刻的系統以追求 <br />性能最優所必需的工具。 <br /> <br />完整的函數樹: <br />完整的函數樹是用戶理解和優化代碼的關鍵。ScopeProfile既顯示執行每個程 <br />序所花的CPU時間,還可顯示使用的程序,包括它所調用的所有子程序所花的 <br />CPU時間總和。平面圖只顯示調用單個程序系統所花的時間,而不顯示調用這 <br />些程序的原因。 <br /> <br />分析動態性能: <br />ScopeProfile保留動態記錄,以便分析程序運行程序運行過程中負載的變化, <br />甚至可以利用ScopeProfile的數據監視窗口把結果實時地繪制出來。比柱形圖 <br />好得多,ScopeProfile可會出整個歷史記錄。 <br /> <br />繪制整體圖: <br />由于不需要特殊的編譯,ScopeProfile還可以統計其他軟件代碼,例如操作系 <br />統與外部庫,以及開發人員的應用程序。許多性能問題是由于使用庫和驅動程 <br />序效率不高。要解決這些問題,開發人員必須查看整體圖。 <br /> <br />干預最少: <br />ScopeProfile不會影響一個程序的執行。其中的統計采樣是快速高效的。分析 <br />過程只占用很少的CPU時間,而且是以低優先級在后臺執行。缺省情況下,輪 <br />廓圖反這些忽略了。 <br /> <br />MemScope: <br />系統必須長期可靠地運行。內存的使用是實時系統設計中一個很關鍵的方面, <br />然而人們常常對內存的使用了解不夠。在一些設備使用傳統的調試器,這種問 <br />題幾乎是不可能被發現的,而使用StethoScope的數據監視功能,從發現問題 <br />到解決問題僅花了幾分鐘。如果不使用StethoScope,這個問題可能需要幾天 <br />時間才能解決。 <br /> <br />StethoScope對于網絡數據報到、溫度的讀取和仿真狀態變量的監視也是很有 <br />用的。 <br />提高開發效率: <br /> <br />StethoScope已成為工業方面很多行業的開發的工具,比如電信,網絡,視頻 <br />編輯,控制,信號處理,半導體制造設備,儀器儀表,科學研究,汔車工具, <br />航空,機器人,工業自動化以及醫療設備等許多領域。 <br /> <br />StethoScope 5.1 <br />StethoScope是一個實時圖形顯標與數據采集的工具。在應用程序運行過程中 <br />,用戶可以很容易診斷軟件故障與性能問題,并給應用程序以最小的干預。 <br /> <br />利用StethoScope,開發人員可以觀察系統內任意一組變量或內存的分布,查 <br />看可能錯過的峰值和故障。程序運行時,可以在指定事件發生時或者在變量發 <br />生變化時開始采集數據,并把數據存入硬盤。 <br /> <br />StethoScope是一個功能強大的診斷工具,可用于觀察運行程序的內部,實時 <br />分析程序,并保持程序的實時性。StethoScope讓開發人員能立即察覺到代碼 <br />的改變、參數的改變或者發生的外部事件對系統所帶來的影響。 <br /> <br />實時圖形顯示 <br />StethoScope可以同時打開幾個窗口,可在每個窗口內繪制不同信號,單擊鼠 <br />標可查看所選定的信號,可實時觀察信號或存入緩沖區,以及可離線查看緩沖 <br />區。還可在屏幕上測量、放大或縮小圖形。StethoScope的觸發工具可以僅捕 <br />捉所需要的事件,信號的變化可觸發數據采集,或者在事件發生前后與過程中 <br />采集數據。 <br /> <br />最小干預,支持大系統與多數據類型: <br />StethoScope不影響系統的實時性能。數據的采集速度很快,采集的數據以低 <br />優先級在后臺傳送。StethoScope信號的層次化管理工具,允許大型系統同時 <br />監視數百個變量。StethoScope支持所有常用的數據類型而不損失數據的精度 <br />。其中包括指針與結構等。 <br /> <br />StethoScope工作方式: <br />圖1表示StethoScope的結構。StethoScope維持一個被監視變量的列表。程序 <br />運行時,所有變量的值被快速復制到本地緩存,然后由一個低優先級的線程把 <br />數據發送到宿主機。 <br /> <br />StethoScope的運行: <br />圖2是StethoScope跟蹤一個馬達傳感器的例子。本例中,系統處于振動狀態。 <br />尚且不知是由于控制策略不當,機械元件受損,或者是由于系統中某個有問題 <br />傳感器或馬達造成的。利用StethoScope可立即把問題縮小到左邊小馬達速度 <br />傳感器上。傳感器的輸出圖形顯示偶爾發生錯誤讀零。StethoScope 還反映出 <br />來自一個光電編碼器與驅動程序沒有問題。由于硬件寄存器偶爾出現讀數錯誤 <br />,說明問題出在編碼器的電路上。中,大部分內存被浪費了。甚至,內存使用 <br />出錯是很危險的。一個有內泄漏問題的系統,可能運行幾天以后就會神秘地崩 <br />潰。 <br /> <br />StethoScope同樣可以用來監視網絡數據包,溫度測量,模擬狀態變量等。 <br /> <br />提高開發能力: <br />StethoScope已經成為了一種有力的開發工具,它可以針對許多行業產品的開 <br />發應用,例如電信通訊,網絡,圖象編輯,控制,信號處理,半導體制造設備 <br />,控制儀表,科學研究,自動化系統,宇航,機器人,工業自動化,醫療設備 <br />等。 <br /> <br />MemScope是Tornado下一個動態內存分析工具,為控制內存的使用提供了必要 <br />的可視化功能。不需特殊的編譯,它為系統使用的每一塊內存提供了詳細的映 <br />射圖。開發人員在系統崩潰之前,就可發現內存泄漏問題。該工具甚至可以發 <br />現由于操作系統調用系統調用或者第三方庫所引起的內存泄漏。MemScope還能 <br />發現破壞內存區的問題,例如讀寫超過數組范圍,或者使用了個空指針。 <br /> <br />使用方便: <br />MemScope不需特殊的編譯和硬件支持,可分析正在運行的代碼。MemScope擁有 <br />直觀方便的圖形用戶界面,當打開Tornado launcher上的圖標時,MemScope可 <br />自動加載所需要的目標機駐留代理。 <br /> <br />WindView 2.0 <br /> <br />風河公司的WindView 2.0 提供給開發者一個久經考驗的可視化工具來適應實 <br />時嵌入系統開發的需要。 <br /> <br />1994年,WindView通過允許開發者觀察一個嵌入系統的動態操作而革新了這個 <br />行業,第一次,開發者可以看到復雜的一個目標上執行的應用的任務,中斷, <br />系統對象之間的交互,上下文切換象系統事件(比如信號量,消息隊列,信號 <br />任務,時鐘,以及用戶事件)一樣被清楚的顯示出來。 <br /> <br />WindView 2.0通過一系列的增強提升了技術水平,是通過提供給開發者在 <br />Tornado下的Fast Focus,Deep Analysis和Everywhere應用工具來實現的。 <br /> <br />1:Fast Focus--隔離你應用中的一些需要分析的區域,便于更好的調試你的應用。 <br />2:Deep Analysis--用來分析事件日志的一種新方法。 <br />3:Everywhere- Everywhere可以在使用WindView時不考慮目標板的連接情況。 <br /> <br />* Fast Focus: <br />WindView2.0提供了專為幫助開發者快速定位他們的實時系統問題的新特性, <br />通過排除不必要的元素來實現,作為結果,問題在屏幕上被逐字的顯示出來。 <br />WindView2.0 提供了一個新的VxWorks功能的接口,稱做Triggering (見上圖) <br />。Event Triggering允許當指定事件或事件序列發生時采取行動,Triggering <br />
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -