国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      引用管理方法及垃圾回收方法與流程

      文檔序號(hào):40276428發(fā)布日期:2024-12-11 13:11閱讀:9來(lái)源:國(guó)知局
      引用管理方法及垃圾回收方法與流程

      本發(fā)明涉及計(jì)算機(jī),尤其涉及一種應(yīng)用數(shù)據(jù)的引用管理及垃圾回收方法。


      背景技術(shù):

      1、webassembly(簡(jiǎn)稱wasm)屬于虛擬指令集體系架構(gòu)。在基于webassembly虛擬機(jī)的嵌入式操作系統(tǒng)中,應(yīng)用數(shù)據(jù)是在應(yīng)用模塊安裝或者應(yīng)用程序運(yùn)行過(guò)程中調(diào)用運(yùn)行時(shí)環(huán)境(rte,real-time?environment)提供的api(application?programming?interface,應(yīng)用程序接口)所創(chuàng)建的數(shù)據(jù),根據(jù)應(yīng)用數(shù)據(jù)類型,該應(yīng)用數(shù)據(jù)被分配在易失性存儲(chǔ)空間或非易失性存儲(chǔ)空間。

      2、通常情況下,應(yīng)用數(shù)據(jù)的邏輯地址或偽地址(以下簡(jiǎn)稱邏輯地址)可被賦值給局部數(shù)據(jù)(也可稱為臨時(shí)變量)或者模塊全局?jǐn)?shù)據(jù)(也可稱為全局變量),此過(guò)程中變量記錄應(yīng)用數(shù)據(jù)的邏輯地址的過(guò)程被稱作引用。被引用的應(yīng)用數(shù)據(jù)處于活動(dòng)狀態(tài),而未被引用的應(yīng)用數(shù)據(jù)被稱為垃圾數(shù)據(jù)。通過(guò)給應(yīng)用程序創(chuàng)建引用數(shù)據(jù)(也可稱為引用數(shù)組)來(lái)記錄應(yīng)用數(shù)據(jù)的邏輯地址,被稱作直接引用,可通過(guò)查詢引用數(shù)據(jù)來(lái)識(shí)別應(yīng)用數(shù)據(jù)是否被引用。

      3、引用應(yīng)用數(shù)據(jù)和回收垃圾數(shù)據(jù)被廣泛應(yīng)用在應(yīng)用程序的開(kāi)發(fā)過(guò)程中。然而,現(xiàn)有的僅通過(guò)引用數(shù)據(jù)記錄應(yīng)用數(shù)據(jù)引用狀態(tài)的實(shí)現(xiàn)方式,在被引用應(yīng)用數(shù)據(jù)的邏輯地址并未記錄在引用數(shù)據(jù)的特定場(chǎng)景中,應(yīng)用程序是無(wú)法識(shí)別出這類應(yīng)用數(shù)據(jù)是否被引用的,因而可能將這類應(yīng)用數(shù)據(jù)誤認(rèn)為垃圾數(shù)據(jù)而誤刪除的情況。這種情況發(fā)生時(shí),會(huì)出現(xiàn)應(yīng)用程序引用不存在的應(yīng)用數(shù)據(jù)而導(dǎo)致的空異常。


      技術(shù)實(shí)現(xiàn)思路

      1、本發(fā)明實(shí)施例提供了一種應(yīng)用數(shù)據(jù)的引用管理方法及垃圾回收方法,以提供一種通過(guò)引用地址表管理未記錄在引用數(shù)據(jù)中的被引用應(yīng)用數(shù)據(jù)的新方式,避免將這類存在引用的應(yīng)用數(shù)據(jù)作為垃圾數(shù)據(jù)誤刪除。

      2、根據(jù)本發(fā)明實(shí)施例的一方面,提供了一種應(yīng)用數(shù)據(jù)的引用管理方法,由嵌入式操作系統(tǒng)中的運(yùn)行時(shí)環(huán)境執(zhí)行,嵌入式操作系統(tǒng)安裝于受限設(shè)備中,所述方法包括:

      3、在檢測(cè)到目標(biāo)應(yīng)用數(shù)據(jù)被目標(biāo)變量引用,且目標(biāo)變量屬于目標(biāo)變量類型時(shí),將所述目標(biāo)應(yīng)用數(shù)據(jù)的邏輯地址寫入至所述目標(biāo)變量的物理地址中;

      4、將與目標(biāo)變量的物理地址對(duì)應(yīng)的邏輯地址作為引用地址,寫入至引用地址表中。

      5、根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種垃圾回收方法,由嵌入式操作系統(tǒng)中的運(yùn)行時(shí)環(huán)境執(zhí)行,嵌入式操作系統(tǒng)安裝于受限設(shè)備中,所述方法包括:

      6、在檢測(cè)到滿足針對(duì)目標(biāo)應(yīng)用程序的垃圾回收條件時(shí),獲取目標(biāo)應(yīng)用程序在執(zhí)行過(guò)程中所創(chuàng)建的各應(yīng)用數(shù)據(jù);

      7、根據(jù)引用地址表,以及與所述目標(biāo)應(yīng)用程序?qū)?yīng)的引用數(shù)據(jù),識(shí)別所述各應(yīng)用數(shù)據(jù)中的垃圾數(shù)據(jù);

      8、其中,所述引用地址表通過(guò)如本發(fā)明實(shí)施例任一項(xiàng)所述的應(yīng)用數(shù)據(jù)的引用管理方法進(jìn)行維護(hù);

      9、根據(jù)識(shí)別出的垃圾數(shù)據(jù)執(zhí)行垃圾回收操作。

      10、根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種應(yīng)用數(shù)據(jù)的引用管理裝置,配置于嵌入式操作系統(tǒng)中的運(yùn)行時(shí)環(huán)境中,嵌入式操作系統(tǒng)安裝于受限設(shè)備中,所述裝置包括:

      11、邏輯地址寫入模塊,用于在檢測(cè)到目標(biāo)應(yīng)用數(shù)據(jù)被目標(biāo)變量引用,且目標(biāo)變量屬于目標(biāo)變量類型時(shí),將所述目標(biāo)應(yīng)用數(shù)據(jù)的邏輯地址寫入至所述目標(biāo)變量的物理地址中;

      12、引用地址寫入模塊,用于將與目標(biāo)變量的物理地址對(duì)應(yīng)的邏輯地址作為引用地址,寫入至引用地址表中。

      13、根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種垃圾回收裝置,配置于嵌入式操作系統(tǒng)中的運(yùn)行時(shí)環(huán)境中,嵌入式操作系統(tǒng)安裝于受限設(shè)備中,所述裝置包括:

      14、應(yīng)用數(shù)據(jù)獲取模塊,用于在檢測(cè)到滿足針對(duì)目標(biāo)應(yīng)用程序的垃圾回收條件時(shí),獲取目標(biāo)應(yīng)用程序在執(zhí)行過(guò)程中所創(chuàng)建的各應(yīng)用數(shù)據(jù);

      15、垃圾數(shù)據(jù)識(shí)別模塊,用于根據(jù)引用地址表,以及與所述目標(biāo)應(yīng)用程序?qū)?yīng)的引用數(shù)據(jù),識(shí)別所述各應(yīng)用數(shù)據(jù)中的垃圾數(shù)據(jù);

      16、其中,所述引用地址表通過(guò)如本發(fā)明實(shí)施例任一項(xiàng)所述的應(yīng)用數(shù)據(jù)的引用管理方法進(jìn)行維護(hù);

      17、垃圾回收處理模塊,用于根據(jù)識(shí)別出的垃圾數(shù)據(jù)執(zhí)行垃圾回收操作。

      18、根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種受限設(shè)備,所述受限設(shè)備上安裝有嵌入式操作系統(tǒng),所述嵌入式操作系統(tǒng)中執(zhí)行有運(yùn)行時(shí)環(huán)境,所述受限設(shè)備包括:

      19、至少一個(gè)處理器;以及

      20、與所述至少一個(gè)處理器通信連接的存儲(chǔ)器;其中,

      21、所述存儲(chǔ)器存儲(chǔ)有可被所述至少一個(gè)處理器執(zhí)行的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被所述至少一個(gè)處理器執(zhí)行,以使所述至少一個(gè)處理器能夠執(zhí)行如本發(fā)明實(shí)施例任一項(xiàng)所述的應(yīng)用數(shù)據(jù)的引用管理方法,或者,執(zhí)行如本發(fā)明實(shí)施例任一項(xiàng)所述的垃圾回收方法。

      22、根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種終端,包括如本發(fā)明實(shí)施例任一項(xiàng)所述的受限設(shè)備。

      23、根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)指令,所述計(jì)算機(jī)指令用于使處理器執(zhí)行時(shí)實(shí)現(xiàn)如本發(fā)明實(shí)施例任一項(xiàng)所述的應(yīng)用數(shù)據(jù)的引用管理方法,或者,實(shí)現(xiàn)如本發(fā)明實(shí)施例任一項(xiàng)所述的垃圾回收方法。

      24、根據(jù)本發(fā)明實(shí)施例的另一方面,還提供了一種計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序在被處理器執(zhí)行時(shí)實(shí)現(xiàn)根據(jù)如本發(fā)明實(shí)施例任一項(xiàng)所述的應(yīng)用數(shù)據(jù)的引用管理方法,或者,實(shí)現(xiàn)如本發(fā)明實(shí)施例任一項(xiàng)所述的垃圾回收方法。

      25、本發(fā)明實(shí)施例的技術(shù)方案,通過(guò)在檢測(cè)到目標(biāo)應(yīng)用數(shù)據(jù)被目標(biāo)變量引用,且目標(biāo)變量屬于目標(biāo)變量類型時(shí),將所述目標(biāo)應(yīng)用數(shù)據(jù)的邏輯地址寫入至所述目標(biāo)變量的物理地址中;將與目標(biāo)變量的物理地址對(duì)應(yīng)的邏輯地址作為引用地址,寫入至引用地址表中。以及,在檢測(cè)到滿足針對(duì)目標(biāo)應(yīng)用程序的垃圾回收條件時(shí),獲取目標(biāo)應(yīng)用程序在執(zhí)行過(guò)程中所創(chuàng)建的各應(yīng)用數(shù)據(jù);根據(jù)引用地址表,以及與所述目標(biāo)應(yīng)用程序?qū)?yīng)的引用數(shù)據(jù),識(shí)別所述各應(yīng)用數(shù)據(jù)中的垃圾數(shù)據(jù);根據(jù)識(shí)別出的垃圾數(shù)據(jù)執(zhí)行垃圾回收操作的技術(shù)手段,可以使用引用地址表管理所有未記錄在引用數(shù)據(jù)中的應(yīng)用數(shù)據(jù)引用,避免將此類應(yīng)用數(shù)據(jù)誤認(rèn)為垃圾數(shù)據(jù)并被刪除,從而避免引用不存在的應(yīng)用數(shù)據(jù)導(dǎo)致空異常,此外,引用地址表記錄引用地址而不是應(yīng)用數(shù)據(jù)的邏輯地址,避免了引用關(guān)系被清除時(shí)需要同步修改應(yīng)用數(shù)據(jù)引用計(jì)數(shù)器或引用地址表中內(nèi)容,從一定程度上保證了應(yīng)用程序的執(zhí)行效率,此外,當(dāng)應(yīng)用程序申請(qǐng)垃圾回收或被刪除時(shí),操作系統(tǒng)可以根據(jù)引用地址表識(shí)別應(yīng)用數(shù)據(jù)是否為垃圾數(shù)據(jù),避免了在應(yīng)用數(shù)據(jù)中設(shè)置垃圾數(shù)據(jù)標(biāo)識(shí),從而避免過(guò)多擦寫存儲(chǔ)器,提高了垃圾回收性能。

      26、應(yīng)當(dāng)理解,本部分所描述的內(nèi)容并非旨在標(biāo)識(shí)本發(fā)明的實(shí)施例的關(guān)鍵或重要特征,也不用于限制本發(fā)明的范圍。本發(fā)明的其它特征將通過(guò)以下的說(shuō)明書而變得容易理解。



      技術(shù)特征:

      1.一種應(yīng)用數(shù)據(jù)的引用管理方法,其特征在于,由嵌入式操作系統(tǒng)中的運(yùn)行時(shí)環(huán)境執(zhí)行,嵌入式操作系統(tǒng)安裝于受限設(shè)備中,所述方法包括:

      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,檢測(cè)到目標(biāo)應(yīng)用數(shù)據(jù)被目標(biāo)變量引用,包括:

      3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述目標(biāo)變量類型包括:持久性數(shù)據(jù)、模塊全局?jǐn)?shù)據(jù)、臨時(shí)靜態(tài)變量數(shù)據(jù)以及臨時(shí)動(dòng)態(tài)變量數(shù)據(jù)。

      4.根據(jù)權(quán)利要求1所述的方法,其特征在于,將與目標(biāo)變量的物理地址對(duì)應(yīng)的邏輯地址作為引用地址,寫入至引用地址表中,包括:

      5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在所述引用地址表中,每個(gè)引用地址通過(guò)帶標(biāo)識(shí)的四字節(jié)數(shù)據(jù)表示;

      6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述引用地址表存儲(chǔ)于所述受限設(shè)備的非易失性存儲(chǔ)空間中。

      7.一種垃圾回收方法,其特征在于,由嵌入式操作系統(tǒng)中的運(yùn)行時(shí)環(huán)境執(zhí)行,嵌入式操作系統(tǒng)安裝于受限設(shè)備中,所述方法包括:

      8.根據(jù)權(quán)利要求7所述的方法,其特征在于,檢測(cè)到滿足針對(duì)目標(biāo)應(yīng)用程序的垃圾回收條件,包括:

      9.根據(jù)權(quán)利要求8所述的方法,其特征在于,獲取目標(biāo)應(yīng)用程序在執(zhí)行過(guò)程中所創(chuàng)建的各應(yīng)用數(shù)據(jù),包括:

      10.根據(jù)權(quán)利要求8所述的方法,其特征在于,獲取目標(biāo)應(yīng)用程序在執(zhí)行過(guò)程中所創(chuàng)建的各應(yīng)用數(shù)據(jù),包括:


      技術(shù)總結(jié)
      本發(fā)明公開(kāi)了一種應(yīng)用數(shù)據(jù)的引用管理及垃圾回收。該應(yīng)用數(shù)據(jù)的引用管理方法包括:在檢測(cè)到目標(biāo)應(yīng)用數(shù)據(jù)被目標(biāo)變量引用,且目標(biāo)變量屬于目標(biāo)變量類型時(shí),將所述目標(biāo)應(yīng)用數(shù)據(jù)的邏輯地址寫入至所述目標(biāo)變量的物理地址中;將與目標(biāo)變量的物理地址對(duì)應(yīng)的邏輯地址作為引用地址,寫入至引用地址表中。本發(fā)明實(shí)施例的技術(shù)方案使用引用地址表管理未記錄在引用數(shù)組中的應(yīng)用數(shù)據(jù)引用,避免將此類應(yīng)用數(shù)據(jù)誤認(rèn)為垃圾數(shù)據(jù)并被刪除,從而避免引用不存在的應(yīng)用數(shù)據(jù)導(dǎo)致空異常,引用地址表記錄引用地址而非應(yīng)用數(shù)據(jù)的邏輯地址,避免了引用關(guān)系被清除時(shí)需要同步修改應(yīng)用數(shù)據(jù)引用計(jì)數(shù)器或引用地址表中內(nèi)容,保證了應(yīng)用執(zhí)行效率。

      技術(shù)研發(fā)人員:何碧波,尤洪松
      受保護(hù)的技術(shù)使用者:紫光同芯微電子有限公司
      技術(shù)研發(fā)日:
      技術(shù)公布日:2024/12/10
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1