女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式分享
[導(dǎo)讀]代碼儀器涉及將其他代碼添加到程序中以監(jiān)視,測(cè)量和分析其執(zhí)行過(guò)程中的行為。本文涉及手動(dòng)源代碼儀器,程序員確定記錄哪些信息以及何時(shí)登錄的信息。隨著系統(tǒng)變得越來(lái)越復(fù)雜,儀器變得越來(lái)越重要。 C ++由于其效率和接近硬件的功能而占主導(dǎo)地位的嵌入式系統(tǒng)開發(fā)。本文研究了儀器C/C ++代碼的實(shí)踐,強(qiáng)調(diào)了其優(yōu)勢(shì)和缺點(diǎn),以幫助開發(fā)人員做出明智的決定。嵌入式系統(tǒng)對(duì)于現(xiàn)代技術(shù)至關(guān)重要,可以為各個(gè)行業(yè)提供動(dòng)力。

代碼儀器涉及將其他代碼添加到程序中以監(jiān)視,測(cè)量和分析其執(zhí)行過(guò)程中的行為。本文涉及手動(dòng)源代碼儀器,程序員確定記錄哪些信息以及何時(shí)登錄的信息。隨著系統(tǒng)變得越來(lái)越復(fù)雜,儀器變得越來(lái)越重要。 C ++由于其效率和接近硬件的功能而占主導(dǎo)地位的嵌入式系統(tǒng)開發(fā)。本文研究了儀器C/C ++代碼的實(shí)踐,強(qiáng)調(diào)了其優(yōu)勢(shì)和缺點(diǎn),以幫助開發(fā)人員做出明智的決定。嵌入式系統(tǒng)對(duì)于現(xiàn)代技術(shù)至關(guān)重要,可以為各個(gè)行業(yè)提供動(dòng)力。

為什么源代碼儀器很重要

嵌入式系統(tǒng)變得越來(lái)越復(fù)雜,相互聯(lián)系,難以理解和調(diào)試。許多項(xiàng)目依靠第三方,記錄不足或過(guò)時(shí)的代碼,使開發(fā)人員對(duì)他們正在更新或測(cè)試的內(nèi)容有限。實(shí)時(shí)系統(tǒng)也不能在不影響結(jié)果或造成損害的情況下暫停。借助快速生成的數(shù)據(jù),固件必須包括數(shù)據(jù)記錄以捕獲實(shí)時(shí)信息,分析行為,提高性能并解決問(wèn)題。傳統(tǒng)的調(diào)試方法不再足以用于所有復(fù)雜的嵌入式系統(tǒng)測(cè)試和調(diào)試挑戰(zhàn)。

記錄的歷史記錄對(duì)于分析難以復(fù)制的故障至關(guān)重要,因?yàn)樗兄谧R(shí)別根本原因,而不僅僅是解決癥狀。問(wèn)題也可能是由硬件或外部因素引起的。與全局變量采樣或其他異步方法相比,Code Instrumentation提供了對(duì)固件執(zhí)行的更詳細(xì)的見(jiàn)解。簡(jiǎn)單的同步方法,例如ARM Cortex SWV數(shù)據(jù)跟蹤,由于其較小的可變范圍提供了有限的見(jiàn)解。復(fù)雜的錯(cuò)誤通常涉及硬件軟件交互,僅通過(guò)黑盒測(cè)試就難以解決。由于嵌入式系統(tǒng)是互連的,因此記錄的歷史記錄對(duì)于有效解決問(wèn)題至關(guān)重要。即使是簡(jiǎn)短的歷史記錄也可以提供有關(guān)錯(cuò)誤或次優(yōu)性能的真正原因的重要信息。

嵌入式系統(tǒng)設(shè)計(jì)人員經(jīng)常使用本地儀器,例如定時(shí)測(cè)量或類似printf的功能來(lái)解決問(wèn)題。但是,通常在解決問(wèn)題后刪除該儀器,因此無(wú)法分析未來(lái)問(wèn)題。即使它保留在代碼中,它也不全面,也不提供對(duì)系統(tǒng)的完整視圖。

示波器,邏輯分析儀和功率分析儀等儀器捕獲了通過(guò)嵌入式模塊控制或監(jiān)測(cè)的系統(tǒng)值。代碼儀器有助于我們了解軟件如何解釋測(cè)量方法,尤其是在電氣嘈雜的環(huán)境中。例如,在電力電子中,了解噪聲如何影響模擬輸入測(cè)量至關(guān)重要。同樣,固件對(duì)噪聲和故障的魯棒性無(wú)法外部測(cè)量。

嵌入式系統(tǒng)中的儀器帶來(lái)了許多好處,包括改進(jìn)的調(diào)試,性能分析和更有效的測(cè)試。這有助于更高的軟件和整體系統(tǒng)質(zhì)量。以下一節(jié)簡(jiǎn)要介紹了其中一些好處,以使您了解可以使用哪種儀器。但是,儀器也有一些開發(fā)人員應(yīng)意識(shí)到的局限性。這些也簡(jiǎn)要介紹在單獨(dú)的部分中。然而,儀器是嵌入式系統(tǒng)設(shè)計(jì)人員的寶貴工具,可以進(jìn)行早期故障檢測(cè)和系統(tǒng)優(yōu)化。

源代碼儀器的好處

1???jī)效優(yōu)化:減少潛伏期,確定臨時(shí)性能降解的原因,識(shí)別瓶頸(測(cè)量執(zhí)行時(shí)間和資源使用情況),定位性能熱點(diǎn)以及軌道改進(jìn),以確保有效的優(yōu)化響應(yīng)性和性能。

2。高級(jí)監(jiān)視和可觀察性:提供對(duì)應(yīng)用程序行為,性能,時(shí)機(jī)和資源使用情況的實(shí)時(shí)可見(jiàn)性,從而實(shí)現(xiàn)主動(dòng)的問(wèn)題解決。它跟蹤函數(shù)調(diào)用,可變值,系統(tǒng)狀態(tài)和代碼覆蓋范圍,以確保正確性并更好地理解復(fù)雜的交互。深入研究系統(tǒng)的運(yùn)行方式通常會(huì)揭示最初不考慮的事物(不是規(guī)格的一部分)。

3。提高調(diào)試:加速故障排除和調(diào)試,減少停機(jī)時(shí)間并盡早發(fā)現(xiàn)潛在的問(wèn)題。它還確保系統(tǒng)滿足設(shè)計(jì)和操作要求。

4。找到難以生產(chǎn)的錯(cuò)誤:即使是簡(jiǎn)短的歷史記錄也可以揭示原因。也可以用于壓力測(cè)試和/或模糊來(lái)復(fù)制錯(cuò)誤和日志歷史記錄以識(shí)別實(shí)際原因。

5。避免延遲延遲:項(xiàng)目早期的儀器代碼可以盡早發(fā)現(xiàn)錯(cuò)誤和效率低下。同時(shí),它可以防止需要晚期重新設(shè)計(jì)。

6.提高固件質(zhì)量:更好地了解固件可以幫助更快地識(shí)別剩余問(wèn)題,消除瓶頸,提高可靠性和安全性,減少錯(cuò)誤警報(bào)等。

7。測(cè)試質(zhì)量保證:?jiǎn)⒂脺y(cè)試自動(dòng)化,回歸測(cè)試,故障注射(例如,儀器可以在故障注射后捕獲內(nèi)部行為),代碼覆蓋范圍分析等。

8。更好的代碼理解:通過(guò)將儀器點(diǎn)放置在復(fù)雜或記錄不足的代碼中,開發(fā)人員可以分析代碼的邏輯并確定問(wèn)題領(lǐng)域。

9.文檔支持:生成可用作系統(tǒng)行為參考材料的日志和報(bào)告;包括確認(rèn)進(jìn)行測(cè)試。

10。提高安全性:記錄的歷史記錄可以提供有關(guān)出了問(wèn)題的寶貴見(jiàn)解(例如,意外操作員錯(cuò)誤或事件的意外組合),并允許改善安全算法。

11.提高能源效率:優(yōu)化不必要地加載CPU或延遲睡眠的代碼片段可以顯著降低功耗,這是電池動(dòng)力系統(tǒng)的關(guān)鍵因素。

限制源代碼儀器的因素

1。性能開銷:添加儀器可以減慢程序的執(zhí)行,從而使其不適合至關(guān)重要或硬實(shí)時(shí)系統(tǒng)。

2。代碼復(fù)雜性:儀器提高了復(fù)雜性,這可能會(huì)使維護(hù)更加困難。

3.資源使用:儀器會(huì)消耗額外的內(nèi)存和處理能力,在資源約束環(huán)境中可能會(huì)過(guò)時(shí)。

4.行為修改:儀器改變程序行為,包括時(shí)間。不應(yīng)在發(fā)布中將其刪除,因?yàn)榭赡軙?huì)在用儀器代碼測(cè)試期間檢測(cè)到的時(shí)序問(wèn)題。

5。安全風(fēng)險(xiǎn):儀器可以暴露敏感數(shù)據(jù)或創(chuàng)建可剝削的漏洞。

6。有限的可伸縮性:在大型或分布式系統(tǒng)中,管理和分析數(shù)據(jù)可能是復(fù)雜且資源密集的。在沒(méi)有深入了解其運(yùn)營(yíng)歷史的情況下測(cè)試此類系統(tǒng)也很具有挑戰(zhàn)性。

7.上下文依賴性:可能需要針對(duì)不同的平臺(tái)或環(huán)境定制儀器。

8.缺乏標(biāo)準(zhǔn)化使得很難重復(fù)使用儀器模塊。

9.來(lái)自多核或分布式系統(tǒng)的日志數(shù)據(jù)匯總困難。

可以通過(guò)選擇正確的儀器庫(kù)并正確實(shí)施上述大多數(shù)限制可以避免或最小化。不能保證測(cè)試人員將擁有所需的記錄數(shù)據(jù)來(lái)分析難以重復(fù)的問(wèn)題,或者將歷史記錄在足夠的時(shí)間內(nèi)可用。對(duì)主機(jī)的日志內(nèi)存和帶寬是有限的,只有儀器的代碼的一部分才能提供歷史記錄。不太了解的儀器代碼可能會(huì)導(dǎo)致數(shù)據(jù)收集不正確。單個(gè)錯(cuò)誤可能導(dǎo)致幾種不同的失敗癥狀。盡管有歷史記錄,但確定實(shí)際原因并不總是那么容易。但是,記錄增加了找到失敗的真正原因的可能性。

代碼儀器不適合簡(jiǎn)單項(xiàng)目,除非我們需要學(xué)習(xí)新的儀器工具包,或者它是實(shí)時(shí)控制系統(tǒng),并且我們希望同步從系統(tǒng)中收集數(shù)據(jù),而不必?fù)?dān)心如何將數(shù)據(jù)從嵌入式系統(tǒng)導(dǎo)出到CSV文件或傳播表格。對(duì)于落后于計(jì)劃的項(xiàng)目而言,這也不是理想的選擇,因?yàn)樗枰獣r(shí)間來(lái)啟動(dòng)大型代碼庫(kù)和學(xué)習(xí)新工具。

那些對(duì)當(dāng)前儀器方法缺點(diǎn)的人感興趣的人應(yīng)參考附錄1中此主題的概述。

靈活和微不足道的儀器的特征

為儀器添加的任何代碼(數(shù)據(jù)記錄功能和/或宏),無(wú)論多么最佳,都會(huì)影響代碼尺寸和執(zhí)行速度。這些效果必須最小化。輕質(zhì)和靈活儀器的關(guān)鍵要求是:

1。 盡可能快地運(yùn)行,以最大程度地減少對(duì)固件的影響。

2。 使用最小的堆??臻g來(lái)最大程度地減少代碼儀器后堆棧溢出的可能性,從而使解決方案適合集成到現(xiàn)有項(xiàng)目中。

3。 小型程序內(nèi)存足跡,以使集成到資源受限的系統(tǒng)中。

4。 有效地編碼并將數(shù)據(jù)存儲(chǔ)在圓形緩沖區(qū)中,以最大化相同的緩沖區(qū)大小的歷史記錄。開發(fā)人員需要足夠的上下文來(lái)確定問(wèn)題,同時(shí)最大程度地減少內(nèi)存使用情況。這減少了上傳時(shí)間,并降低了云方面的運(yùn)營(yíng)成本,尤其是對(duì)于物聯(lián)網(wǎng)警報(bào)或按需消息傳遞和存儲(chǔ)。

5。時(shí)間戳:必須對(duì)記錄數(shù)據(jù)進(jìn)行時(shí)間戳,因?yàn)闀r(shí)間對(duì)于大多數(shù)嵌入式系統(tǒng)很重要。

6。 綜合數(shù)據(jù)收集:所有類型的數(shù)據(jù)和事件的日志(從應(yīng)用程序數(shù)據(jù)到RTOS事件)。

7。 允許過(guò)濾在嵌入式系統(tǒng)中記錄的數(shù)據(jù),并在主機(jī)上解碼期間對(duì)數(shù)據(jù)進(jìn)行分類/選擇數(shù)據(jù)以管理數(shù)據(jù)泛濫。過(guò)濾還可以使您可以在更詳細(xì)和更短的歷史或更詳細(xì)且更長(zhǎng)的歷史記錄之間進(jìn)行選擇。

8。 要便攜式,以便開發(fā)人員可以在其所有或大多數(shù)項(xiàng)目上使用它。

9。 適用于大多數(shù)嵌入式系統(tǒng),從裸金屬到基于RTOS的系統(tǒng),包括資源受限的系統(tǒng)。

10。與特定硬件或軟件(例如調(diào)試探針,特定IDE或RTOS) 無(wú)關(guān)。

11。 允許對(duì)已記錄信息有效分析。

12。 易于學(xué)習(xí)和使用。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉