chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

代碼的可重用性是代碼開發(fā)和確??删S護(hù)性的關(guān)鍵

星星科技指導(dǎo)員 ? 來源:嵌入式計算設(shè)計 ? 作者:Colin Walls ? 2022-06-30 14:58 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

實現(xiàn)嵌入式應(yīng)用程序的過程很好理解:

代碼(用 C/C++/匯編或其他語言)編寫并放置在許多文件(模塊)中。

每個模塊都經(jīng)過編譯/組裝以創(chuàng)建可重定位的目標(biāo)文件。該文件包含目標(biāo)處理器的機(jī)器指令,但地址信息尚未提交。

所有模塊都使用鏈接器(有時稱為鏈接器/定位器)集成在一起。此過程解析所有內(nèi)存引用并生成一個絕對目標(biāo)文件:最終系統(tǒng)內(nèi)存的圖像。

這種觀點有些簡單化,因為還有許多其他細(xì)微差別:

增量鏈接可用于將一個或多個可重定位對象連接在一起以形成單個可重定位對象。

可以調(diào)整鏈接/定位過程,以便代碼存儲在一個地方,但地址解析為在另一個地址執(zhí)行,已被引導(dǎo)加載程序復(fù)制到那里。

可以將可重定位的目標(biāo)文件鏈接在一起是產(chǎn)生目標(biāo)模塊庫的一種特殊方式。

“圖書館”一詞在各種情況下被使用和濫用。它的含義在這里定義明確??梢詫煳募B同可重定位的目標(biāo)文件一起提供給鏈接器。它的功能是解析可重定位目標(biāo)文件未提供的符號(通常是函數(shù)名)。例如,如果您在一個模塊中的代碼調(diào)用了函數(shù)MyFun()并且在另一個模塊中有此函數(shù)的定義,那么一切都很好。如果鏈接器沒有找到這個函數(shù),就會產(chǎn)生錯誤。但是,如果包含一個庫(或多個庫),則鏈接器將首先查找那里以解析符號。如果庫包含MyFun()函數(shù),則提取代碼并在最終的絕對文件中使用。

圖書館的意義可能并不明顯。你可以用一種簡單的方式將所有的可重定位文件鏈接在一起——為什么還要麻煩圖書館呢?這個想法是該庫包含大量函數(shù),但鏈接器僅提取當(dāng)前應(yīng)用程序所需的函數(shù)。未使用的永遠(yuǎn)不會從庫中提取,因此它們不會耗盡(即浪費)目標(biāo)內(nèi)存。

庫的主要目的是作為大量可重用代碼的存儲庫。在大型開發(fā)團(tuán)隊的項目中,這可能是一種很好的工作方式,在這種情況下共享代碼非常有益,“重新發(fā)明輪子”是不可取的,但很常見。應(yīng)仔細(xì)規(guī)劃和記錄項目庫。設(shè)計函數(shù)時必須考慮重用:不使用全局?jǐn)?shù)據(jù)、干凈、定義良好的接口、可重入性等。

開發(fā)工具供應(yīng)商通常會提供針對 C/C++ 標(biāo)準(zhǔn)化的庫。它們包含兩種類型的功能。顯而易見的是開發(fā)人員在需要時調(diào)用的顯式函數(shù)——比如printf()。其他庫函數(shù)是隱式的;它們由編譯器生成的代碼調(diào)用,并提供常用的功能,方便共享。

軟件 IP 供應(yīng)商也可能以庫的形式提供他們的產(chǎn)品。實時操作系統(tǒng) (RTOS) 通常以這種方式分布。這使得 RTOS 可以直接擴(kuò)展;應(yīng)用程序中僅包含所需的 RTOS 功能。

庫分布的一個問題是它們的“粒度”;可以提取多小的代碼?一些庫是由大塊構(gòu)建的。這意味著庫中的模塊可能包含屬于特定 RTOS 設(shè)施的所有服務(wù)功能。因此,例如,使用一個 RTOS 調(diào)用對信號量進(jìn)行操作將導(dǎo)致所有與信號量相關(guān)的服務(wù)調(diào)用函數(shù)都包含在應(yīng)用程序中。一個非常細(xì)粒度的庫可以與較小的單元一起使用。因此,使用單個服務(wù)調(diào)用將導(dǎo)致僅包含其代碼而不是相關(guān)函數(shù)的代碼。有一個權(quán)衡。一個非常細(xì)粒度的庫會延長鏈接時間,但目標(biāo)內(nèi)存不會浪費在未使用的服務(wù)調(diào)用函數(shù)上。

所有嵌入式軟件開發(fā)人員都應(yīng)該了解庫的工作方式及其提供的好處。代碼的可重用性是高效、高效的代碼開發(fā)和確??删S護(hù)性的關(guān)鍵。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5173

    文章

    19967

    瀏覽量

    324233
  • RTOS
    +關(guān)注

    關(guān)注

    24

    文章

    856

    瀏覽量

    122179
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2120

    瀏覽量

    76444
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    嵌入式軟件測試與專業(yè)測試工具的必要深度解析

    嵌入式系統(tǒng)作為控制、監(jiān)視或輔助裝置運行的專用計算機(jī)系統(tǒng),其軟件測試面臨著獨特的挑戰(zhàn)和嚴(yán)格的要求。專業(yè)測試工具在嵌入式軟件開發(fā)過程中發(fā)揮著不可替代的作用,是確保系統(tǒng)可靠和安全
    發(fā)表于 09-28 17:42

    統(tǒng)計過程控制在預(yù)防維護(hù)中的應(yīng)用

    引言在制造設(shè)備設(shè)計中,一個常被忽視的方面是可維護(hù)性。設(shè)備是否具備可維護(hù)性相關(guān)特性,會顯著影響設(shè)備的運維成本;而這些運維成本,又直接關(guān)系到維護(hù)合同的盈利能力。因此,找到降低運維成本的有效方法,對于提升
    的頭像 發(fā)表于 09-03 18:04 ?403次閱讀
    統(tǒng)計過程控制在預(yù)防<b class='flag-5'>性</b><b class='flag-5'>維護(hù)</b>中的應(yīng)用

    什么是零代碼平臺?

    代碼平臺是一種無需編寫傳統(tǒng)代碼,通過可視化拖拽、參數(shù)配置、邏輯連線即可快速搭建業(yè)務(wù)流程與應(yīng)用系統(tǒng)的工具平臺。它將復(fù)雜的軟件開發(fā)過程轉(zhuǎn)化為 “搭積木” 式的操作,讓非技術(shù)人員(如業(yè)務(wù)人員、運營人員
    發(fā)表于 07-12 20:28

    如何確保模擬示波器信號源的標(biāo)準(zhǔn)

    確保模擬示波器信號源的標(biāo)準(zhǔn)是保證測量結(jié)果準(zhǔn)確和可靠關(guān)鍵。以下從信號源選擇、校準(zhǔn)與驗證、操作規(guī)范三個方面,提供系統(tǒng)
    發(fā)表于 04-07 14:49

    PCBA應(yīng)變測試:確保電子產(chǎn)品可靠關(guān)鍵

    PCBA應(yīng)變測試:確保電子產(chǎn)品可靠關(guān)鍵
    的頭像 發(fā)表于 02-25 17:28 ?727次閱讀
    PCBA應(yīng)變測試:<b class='flag-5'>確保</b>電子產(chǎn)品可靠<b class='flag-5'>性</b>的<b class='flag-5'>關(guān)鍵</b>

    代碼與傳統(tǒng)開發(fā)的區(qū)別 低代碼與無代碼開發(fā)的區(qū)別

    在軟件開發(fā)領(lǐng)域,傳統(tǒng)開發(fā)、低代碼開發(fā)以及無代碼開發(fā)是三種不同的
    的頭像 發(fā)表于 01-31 10:48 ?880次閱讀

    如何提高嵌入式代碼質(zhì)量?

    嵌入式代碼的質(zhì)量是至關(guān)重要的。本文將探討如何通過有效的開發(fā)方法和工具來提高嵌入式代碼的質(zhì)量,以確保系統(tǒng)的可靠
    發(fā)表于 01-15 10:48

    EMC電機(jī)控制器測試整改:確保產(chǎn)品可靠關(guān)鍵步驟

    深圳南柯電子|EMC電機(jī)控制器測試整改:確保產(chǎn)品可靠關(guān)鍵步驟
    的頭像 發(fā)表于 01-13 14:25 ?1118次閱讀
    EMC電機(jī)控制器測試整改:<b class='flag-5'>確保</b>產(chǎn)品可靠<b class='flag-5'>性</b><b class='flag-5'>關(guān)鍵</b>步驟

    電源濾波器的可維護(hù)性如何

    電源濾波器可維護(hù)性包括模塊化設(shè)計、易拆卸結(jié)構(gòu)、耐腐蝕及散熱材料、定期清潔檢查、元件更換,維護(hù)成本低,智能化設(shè)計減少人工需求,定期性能測試監(jiān)控性能變化。
    的頭像 發(fā)表于 01-09 09:48 ?571次閱讀
    電源濾波器的<b class='flag-5'>可維護(hù)性</b>如何

    SMT來料質(zhì)檢:確保電子生產(chǎn)質(zhì)量的關(guān)鍵

    關(guān)鍵方面。 1、外觀檢驗 確認(rèn)元器件 無物理損傷、變形或銹蝕 ,并符合訂單規(guī)格。 2、規(guī)格驗證 核對元器件的型號、規(guī)格及參數(shù)與采購要求是否一致。 3、評估 確保元器件引腳能夠滿足
    發(fā)表于 01-07 16:16

    探討篇(三):代碼復(fù)用的智慧 - 提升架構(gòu)的效率與可維護(hù)性

    的案例,介紹幾種分布式架構(gòu)中管理代碼復(fù)用的技術(shù)。包括代碼復(fù)制、共享代碼庫(jar包)、共享服務(wù)、邊車服務(wù)。對于每一種技術(shù),列出優(yōu)缺點、適合場景權(quán)衡。 本文的觀點源自我在學(xué)習(xí)與實踐過程
    的頭像 發(fā)表于 12-27 15:58 ?767次閱讀
    探討篇(三):<b class='flag-5'>代碼</b>復(fù)用的智慧 - 提升架構(gòu)的效率與<b class='flag-5'>可維護(hù)性</b>

    電動工具EMC測試整改:確保電磁兼容關(guān)鍵步驟

    深圳南柯電子|電動工具EMC測試整改:確保電磁兼容關(guān)鍵步驟
    的頭像 發(fā)表于 12-02 11:25 ?763次閱讀
    電動工具EMC測試整改:<b class='flag-5'>確保</b>電磁兼容<b class='flag-5'>性</b>的<b class='flag-5'>關(guān)鍵</b>步驟

    Java代碼之美,從遵循樣式規(guī)范開始

    作者:京東零售 劉仲偉 在軟件開發(fā)的世界里,代碼不僅是程序的基石,更是程序員交流的通用語言。而Java,作為一門廣泛應(yīng)用于企業(yè)級應(yīng)用的編程語言,其代碼的可讀和一致
    的頭像 發(fā)表于 11-27 11:42 ?758次閱讀
    Java<b class='flag-5'>代碼</b>之美,從遵循樣式規(guī)范開始

    如何安全有效的刪代碼?

    作者:京東科技 王丹迪 刪除代碼是軟件開發(fā)過程中常見的一部分,但必須謹(jǐn)慎操作以確保不會引入錯誤或破壞現(xiàn)有功能。有效的做系統(tǒng)瘦身會降低維護(hù)成本,減少冗余
    的頭像 發(fā)表于 11-20 10:39 ?823次閱讀

    代碼開發(fā)平臺,低成本快速搭建云MES系統(tǒng)

    代碼平臺是一種可視化的軟件高效開發(fā)平臺,通過抽象和最小化手工編碼的方式,為開發(fā)和部署定制化應(yīng)用提速。萬界星空科技AI低代碼云MES系統(tǒng)通過拖拽、配置等圖形化操作,快速
    的頭像 發(fā)表于 11-18 15:43 ?626次閱讀
    低<b class='flag-5'>代碼</b><b class='flag-5'>開發(fā)</b>平臺,低成本快速搭建云MES系統(tǒng)