<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 新品快遞 > Enea集成開發(fā)環(huán)境中的延伸日志管理和來源分析功能

          Enea集成開發(fā)環(huán)境中的延伸日志管理和來源分析功能

          作者: 時間:2013-05-15 來源:電子產(chǎn)品世界 收藏

            近日宣布,推出2.8版 ,增加延伸日志管理和來源分析功能。

          本文引用地址:http://www.ex-cimer.com/article/145346.htm

            基于Eclipse™的開發(fā)工具為 OSE和Enea OSEck實時操作系統(tǒng)提供一系列系統(tǒng)調(diào)試、分析和追蹤功能。

            信號與事件數(shù)據(jù)過濾器

            日志管理器提供適宜的基礎(chǔ)設(shè)施(從應(yīng)用級到設(shè)備驅(qū)動級),用于在嵌入式軟件系統(tǒng)中控制并顯示追蹤和日志信息。

            該管理器目前支持信號與事件數(shù)據(jù)過濾器,可以基于信號內(nèi)容過濾收發(fā)事件,因此,如果該某信號中包含狀態(tài)標(biāo)記,則可將該事件連接至該標(biāo)記的某個狀態(tài)。如果信號內(nèi)容為特定類型,則用戶可以創(chuàng)建相應(yīng)事件,例如區(qū)分UML/Rose RT信號或IP包信號。

            基于硬件計時器的PC取樣

            Enea 來源分析器使用處理器核心中內(nèi)置的硬件計數(shù)器將高速緩存缺失、流水線推遲等數(shù)據(jù)關(guān)聯(lián)到源代碼中的確切位置。

            這可以更詳細(xì)地了解目標(biāo)執(zhí)行情況,例如概觀緩存行為等機(jī)制,這對優(yōu)化多核設(shè)備應(yīng)用程序和解決系統(tǒng)性能問題來說非常重要。對于不包含硬件計數(shù)器的所有PowerPC目標(biāo)來說,目前仍通過基于硬件計時器的取樣操作來完成執(zhí)行時間分析。

            GNU Project Debugger(GDB)優(yōu)化

            Optima 2.8還為Thumb-2指令集和RVCT 4.x編譯器提供ARM支持,并優(yōu)化了對C++構(gòu)造、多位置斷點和優(yōu)化代碼調(diào)試的支持。

            利用集成Freescale和ARM插件進(jìn)行凍結(jié)模式調(diào)試

            在利用凍結(jié)模式源代碼調(diào)試器進(jìn)行調(diào)試時,Optima可以使用目標(biāo)系統(tǒng)的凍結(jié)模式連接來分析掛起狀態(tài)下的目標(biāo)系統(tǒng)狀態(tài)。

            當(dāng)Optima插件在統(tǒng)一Eclipse環(huán)境中運行時,客戶仍可以使用Freescale Semiconductor Inc.公司的CodeWarrior Development工具和ARM Development Studio 5(DS-5™)來實現(xiàn)此操作。



          關(guān)鍵詞: Enea Optima

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();