在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

OpenHarmony構(gòu)建了一套完善的內(nèi)存解決方案——ESWAP

OpenAtom OpenHarmony ? 來源:OpenAtom OpenHarmony ? 作者:OpenAtom OpenHarmony ? 2022-05-11 10:33 ? 次閱讀

OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)是面向全場景泛終端設(shè)備的操作系統(tǒng),終端設(shè)備內(nèi)存性能的強弱會直接影響用戶的體驗。終端設(shè)備的內(nèi)存差異很大,對于內(nèi)存比較小的終端設(shè)備,內(nèi)存優(yōu)化方案無疑是增強內(nèi)存性能、提升用戶體驗的關(guān)鍵。針對傳統(tǒng)內(nèi)存方案及管理機制的不足,OpenHarmony 構(gòu)建了一套完善的內(nèi)存解決方案——ESWAP。

1.傳統(tǒng)內(nèi)存方案及管理機制

在傳統(tǒng)的 Linux 內(nèi)存優(yōu)化方案中,終端設(shè)備通常采用 SWAP 及 ZRAM 內(nèi)存方案。

1.1 SWAP

SWAP 即內(nèi)存交換技術(shù)或虛擬內(nèi)存技術(shù),如圖 1 所示,在系統(tǒng)的物理內(nèi)存不足時,把內(nèi)存中的一部分不常用的內(nèi)存空間釋放出來,以增大系統(tǒng)可用內(nèi)存供當前運行的程序使用。這些被釋放的數(shù)據(jù)被臨時保存到 SWAP 分區(qū)中,等到需要使用時,再從 SWAP 分區(qū)中恢復(fù)到內(nèi)存中。

9021bd4c-c62b-11ec-bce3-dac502259ad0.jpg

圖1 SWAP虛擬內(nèi)存技術(shù)

從圖 1 中不難看出,SWAP 內(nèi)存交換技術(shù)增大了設(shè)備內(nèi)用內(nèi)存,但是,SWAP 內(nèi)存換入/換出時會遭遇 IO 性能瓶頸,嚴重時甚至會影響用戶的使用體驗,并且 flash 存儲器件的頻繁讀寫也會縮減其壽命。

1.2 ZRAM

ZRAM 即內(nèi)存壓縮技術(shù),如圖 2 所示,在系統(tǒng)的物理內(nèi)存不足時,將系統(tǒng)物理內(nèi)存的一部分劃分出來作為 ZRAM 分區(qū),然后把不常用的匿名頁壓縮后放到 ZRAM 分區(qū)里,相當于犧牲了一些 CPU 效率,以增大系統(tǒng)可用內(nèi)存供當前運行的程序使用。等到需要使用時,再從 ZRAM 分區(qū)中將數(shù)據(jù)解壓出來。

9037495a-c62b-11ec-bce3-dac502259ad0.jpg

圖2 ZRAM內(nèi)存壓縮技術(shù)

雖然 ZRAM 在一定程度上增大了設(shè)備內(nèi)用內(nèi)存,但是如果沒有合適的方式來對內(nèi)存進行管理,負面影響也會非常明顯,將會造成內(nèi)存頁頻繁的壓縮/解壓縮,從而搶占正常業(yè)務(wù)的 CPU 時間,增加系統(tǒng)的功耗。并且,如果壓縮/解壓速度不夠快的話,會直接影響用戶的使用體驗。

1.3 內(nèi)存管理機制

除了內(nèi)存方案不足,傳統(tǒng)的內(nèi)存分配及管理方式,無法感知業(yè)務(wù)特性及數(shù)據(jù)的重要性。如果終端設(shè)備多個進程或業(yè)務(wù)共用一塊內(nèi)存,當內(nèi)存負載越來越重,進行內(nèi)存數(shù)據(jù)回收時,會頻繁出現(xiàn)數(shù)據(jù)搬移,以及內(nèi)存震蕩的現(xiàn)象。這些現(xiàn)象會加重內(nèi)核管理內(nèi)存的開銷,并導(dǎo)致系統(tǒng) CPU 負載長期處于高負載的狀態(tài),從而增加系統(tǒng)功耗。

2.OpenHarmony內(nèi)存解決方案

針對原有內(nèi)存方案的不足,OpenHarmony 構(gòu)建了一套完善的內(nèi)存解決方案 ESWAP,打通了上層系統(tǒng)到內(nèi)核的調(diào)用棧,讓內(nèi)核能在上層配置的指導(dǎo)下,對每一塊內(nèi)存數(shù)據(jù)進行合理的管理。

下面我們將為大家介紹 ESWAP 解決方案以及其關(guān)鍵技術(shù)的解析。

2.1 ESWAP方案介紹

ESWAP(Enhanced SWAP)是 OpenHarmony 針對內(nèi)存優(yōu)化問題提供的一套完善的內(nèi)存解決方案,結(jié)合內(nèi)存壓縮和內(nèi)存交換技術(shù),定制了一套合理高效的調(diào)度管理策略,使壓縮和交換兩者的工作能夠高效且平衡。ESWAP 基于關(guān)聯(lián)性的數(shù)據(jù)聚合技術(shù)及上層指導(dǎo)策略,將內(nèi)存劃分為不同的分組進行管理,通過回收優(yōu)先級來區(qū)分不同分組下內(nèi)存的活躍程度,優(yōu)先壓縮、換出較不活躍的內(nèi)存數(shù)據(jù),以提升數(shù)據(jù)交換性能,減少壽命沖擊。

ESWAP 解決方案的整體框架如圖3所示:

905a73bc-c62b-11ec-bce3-dac502259ad0.jpg

圖3 ESWAP解決方案

ESWAP 解決方案在全局資源調(diào)度子系統(tǒng)中增加了一個系統(tǒng)資源調(diào)度模塊,通過向賬戶子系統(tǒng)訂閱本地賬戶的變化來感知當前的賬戶狀態(tài)和內(nèi)存狀態(tài),然后根據(jù)賬戶狀態(tài)給各個賬戶設(shè)置不同的回收優(yōu)先級、設(shè)置目標可用內(nèi)存量、設(shè)置壓縮和換出的比例等參數(shù),并將這些參數(shù)下發(fā)給 ZSWAPD。ZSWAPD 會依據(jù)回收優(yōu)先級判斷回收的先后順序;依據(jù)目標可用內(nèi)存量和當前可用內(nèi)存量的差值決定回收的量;依據(jù)壓縮和換出的比例來決定壓縮和換出的量,從而實現(xiàn)在達成內(nèi)存擴展效果前提下的性能和功耗平衡。

2.2 關(guān)鍵技術(shù)解析

ESWAP 內(nèi)存解決方案都用到了哪些關(guān)鍵技術(shù)呢?下面為你一一道來。

2.2.1 定制的ZRAM和交換分區(qū)

ESWAP 結(jié)合內(nèi)存壓縮和內(nèi)存交換技術(shù),提供了自定義新增存儲分區(qū)作為內(nèi)存交換分區(qū)的能力,并在內(nèi)核中創(chuàng)建了一個常駐進程 ZSWAPD,用于將 ZRAM 壓縮后的匿名頁加密換出到 ESWAP 存儲分區(qū)中,從而能完全地空出一塊可用內(nèi)存,以此來達到維持 Memavailable 水線的目標,如圖 4 所示。

9071d872-c62b-11ec-bce3-dac502259ad0.jpg

圖4 ESWAP技術(shù)

同時,ESWAP 模塊還可以記錄每個匿名頁的冷熱特征信息,并將這些數(shù)據(jù)通過關(guān)聯(lián)性、冷熱順序進行相應(yīng)的存放,使 ESWAP 交換區(qū)中連續(xù)存放的匿名頁具有時間和空間局部性。因此在匿名頁換入時,可以將交換區(qū)中的相鄰匿名頁一并讀入 ZRAM,以此來保證數(shù)據(jù)的存取速度,提升 IO 性能。

2.2.2 動態(tài)的內(nèi)存回收機制

OpenHarmony 提供了一種額外的內(nèi)存回收機制 ZSWAPD,并創(chuàng)建了“buffer”來作為衡量當前系統(tǒng)內(nèi)存能力的指標。buffer 指的是當前系統(tǒng)能提供的最大可用內(nèi)存。ZSWAPD 會根據(jù) buffer 量以及上文所述的各種策略,來對匿名頁進行壓縮換出以回收。同時,ZSWAPD 還能根據(jù)內(nèi)存冷熱分離的合理性以及內(nèi)存回收狀態(tài), 動態(tài)地控制 ZRAM 和 ESWAP 之間的平衡,從而獲得更高的能效比。

2.2.3 靈活的內(nèi)存回收策略

OpenHarmony 基于 Memcg 分組進行了回收策略的增強,使用回收優(yōu)先級來指導(dǎo) ZSWAPD 回收的先后順序。回收策略將既定的 buffer 相關(guān)配置下發(fā)給 ZSWAPD,來指導(dǎo)其回收適當數(shù)量的內(nèi)存。此外,由于匿名頁可能存儲在 RAM、ZRAM、ESWAP 三個模塊中, 上層可以根據(jù)需要,通過靈活地配置交換策略,控制這三個模塊中存儲的比例,避免頻繁換入換出帶來的負面影響。

至此,ESWAP 的三項關(guān)鍵技術(shù)就介紹完了,我們來總結(jié)一下:

●定制的 ZRAM 和交換分區(qū):將數(shù)據(jù)通過關(guān)聯(lián)性、冷熱順序進行存放,保證了數(shù)據(jù)的存取速度,提升了 IO 性能。

●動態(tài)的內(nèi)存回收機制:從回收優(yōu)先級、可用內(nèi)存量、壓縮和交換比例三個維度動態(tài)地控制數(shù)據(jù)回收,從而獲得更高的能效比。

●靈活的內(nèi)存回收策略:靈活地控制 RAM、ZRAM、ESWAP 三個模塊數(shù)據(jù)存儲的比例,保證了各個模塊的平衡。

2.3 ESWAP相關(guān)接口

ESWAP 解決方案支持系統(tǒng)開發(fā)者定制自己的回收策略,并在 /dev/memcg 下提供了僅對上層回收策略可見的接口。系統(tǒng)開發(fā)者可以通過這些接口來定制自己的上層策略,具體接口如下所示:

908ce84c-c62b-11ec-bce3-dac502259ad0.jpg

以上就是本文全部內(nèi)容,ESWAP 解決方案仍在不斷建設(shè)中,期待廣大開發(fā)者加入我們,共同見證全場景智能時代的無限可能!感興趣的小伙伴可以通過下面鏈接獲取ESWAP源碼進行深入了解:

審核編輯 :李倩

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

    關(guān)注

    37

    文章

    6923

    瀏覽量

    123991
  • 內(nèi)存技術(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    9870
  • OpenHarmony
    +關(guān)注

    關(guān)注

    25

    文章

    3759

    瀏覽量

    16845

原文標題:OpenHarmony 3.1 Release版本關(guān)鍵特性解析——Enhanced SWAP內(nèi)存管理

文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    2K0300 OpenHarmony源碼構(gòu)建指南

    2K0300 OpenHarmony源碼構(gòu)建參考如下 2K0300先鋒派OpenHarmony源碼構(gòu)建指南 2K0300 源碼編譯wiki
    發(fā)表于 02-05 09:36

    鴻蒙原生頁面高性能解決方案上線OpenHarmony社區(qū) 助力打造高性能原生應(yīng)用

    隨著HarmonyOS NEXT的正式推出,鴻蒙原生應(yīng)用開發(fā)熱度高漲,數(shù)量激增。但在三方應(yīng)用鴻蒙化進程中,性能問題頻出。為此,HarmonyOS NEXT推出了整套原生頁面高性能解決方案,包括
    發(fā)表于 01-02 18:00

    明達助力構(gòu)建智能變電站新體系

    明達技術(shù)提出了一套全面而高效的解決方案,旨在構(gòu)建一套安全、可靠、高效的遠程運維體系。通過技術(shù)創(chuàng)新與管理優(yōu)化,該方案有效解決了傳統(tǒng)運維模式中的
    的頭像 發(fā)表于 12-26 17:28 ?261次閱讀
    明達助力<b class='flag-5'>構(gòu)建</b>智能變電站新體系

    PLC數(shù)據(jù)采集解決方案

    問題,這些問題限制了企業(yè)生產(chǎn)力的提升和管理效能的增強。因此,打造一套高效率、高可靠性的PLC數(shù)據(jù)采集解決方案顯得尤為關(guān)鍵。 二、解決方案概述 針對工業(yè)生產(chǎn)中的數(shù)據(jù)采集需求,我們提出一套
    的頭像 發(fā)表于 10-31 15:58 ?369次閱讀
    PLC數(shù)據(jù)采集<b class='flag-5'>解決方案</b>

    一套電源ATE自動測試系統(tǒng)如何完成多型號電源模塊測試?

    在使用NSAT-8000電源ATE測試系統(tǒng)后,鑒于不同型號的VPX電源生產(chǎn)工藝、參數(shù)有所不同,工程師可根據(jù)電源型號搭建相應(yīng)的測試項目和方案一套系統(tǒng)便完成了該公司多型號的電源模塊測試,減少了測試成本。
    的頭像 發(fā)表于 09-18 18:20 ?346次閱讀
    <b class='flag-5'>一套</b>電源ATE自動測試系統(tǒng)如何完成多型號電源模塊測試?

    蜂窩物聯(lián)智能畜牧,精準養(yǎng)殖:站式解決方案

    面對我國畜牧業(yè)發(fā)展道路上的重重障礙——如企業(yè)管理水平滯后、環(huán)境承載能力受限以及行業(yè)信息孤島問題,蜂窩物聯(lián)依托先進的物聯(lián)網(wǎng)與移動互聯(lián)技術(shù),積極構(gòu)建了一套面向多方的綜合解決方案。該方案不僅
    的頭像 發(fā)表于 09-10 17:29 ?499次閱讀
    蜂窩物聯(lián)智能畜牧,精準養(yǎng)殖:<b class='flag-5'>一</b>站式<b class='flag-5'>解決方案</b>

    庫室聯(lián)管聯(lián)控系統(tǒng)DW-S306|是一套智能化系統(tǒng)

    裝備庫室聯(lián)管聯(lián)控系統(tǒng),形成一套上下統(tǒng)、功能完善的管理體系,建設(shè)個功能完善、運轉(zhuǎn)有效、規(guī)范有序為目標,實現(xiàn)可視化監(jiān)管、數(shù)字化軍械管理、安全
    的頭像 發(fā)表于 08-17 16:20 ?248次閱讀
    庫室聯(lián)管聯(lián)控系統(tǒng)DW-S306|是<b class='flag-5'>一套</b>智能化系統(tǒng)

    水電站泄洪放水預(yù)警廣播系統(tǒng)解決方案

    預(yù)警廣播系統(tǒng)顯得尤為必要。本文旨在提出一套水電站泄洪放水預(yù)警廣播系統(tǒng)的完整解決方案。二、系統(tǒng)概述水電站泄洪放水預(yù)警廣播系統(tǒng)是一套集實時監(jiān)測、數(shù)據(jù)分析、預(yù)警發(fā)布、廣
    的頭像 發(fā)表于 07-29 15:36 ?568次閱讀
    水電站泄洪放水預(yù)警廣播系統(tǒng)<b class='flag-5'>解決方案</b>

    一套完整的養(yǎng)老院人員定位解決方案包含哪些內(nèi)容?

    成為當今社會關(guān)注的重要問題之。在養(yǎng)老院封閉的環(huán)境,養(yǎng)老院希望利用智能技術(shù)管理與關(guān)愛老人的需求越來越迫切。那么,養(yǎng)老院如何完成智能化建設(shè),最大限度地保障老年人的安全? ? ? ? ?養(yǎng)老院人員定位解決方案的項目背景 ? ? ? ?傳統(tǒng)養(yǎng)
    的頭像 發(fā)表于 07-17 11:09 ?402次閱讀
    <b class='flag-5'>一套</b>完整的養(yǎng)老院人員定位<b class='flag-5'>解決方案</b>包含哪些內(nèi)容?

    在不同的電腦上啟動同一套代碼時,出現(xiàn)編譯路徑錯誤的提示怎么解決?

    不同的電腦上安裝esp-idf的路徑不同時,啟動同一套代碼時會出現(xiàn): 無法找到“D:\\Espressif\\tools\\xtensa-esp32-elf\\esp-2022r1-11.2.0
    發(fā)表于 06-11 06:54

    鴻蒙開發(fā)ArkUI-X基礎(chǔ)知識:【ArkUI代碼工程及構(gòu)建介紹】

    ArkUI作為OpenHarmony的默認開發(fā)框架,在本項目(ArkUI-X)中需要做到一套代碼同時支持多平臺構(gòu)建,所以會采取共倉開發(fā)的方式,部分倉直接指向OpenHarmony相關(guān)開
    的頭像 發(fā)表于 05-25 16:45 ?2269次閱讀
    鴻蒙開發(fā)ArkUI-X基礎(chǔ)知識:【ArkUI代碼工程及<b class='flag-5'>構(gòu)建</b>介紹】

    家用充電樁遠程監(jiān)控安全管理系統(tǒng)解決方案

    家用充電樁遠程監(jiān)控安全管理系統(tǒng)解決方案 在當今電動汽車日益普及的背景下,家用充電樁的安全管理成為了廣大車主關(guān)注的重點問題。為了實現(xiàn)對充電樁的高效、精準、遠程監(jiān)控,一套完善的家用充電樁遠程監(jiān)控安全管理
    的頭像 發(fā)表于 05-15 16:19 ?956次閱讀
    家用充電樁遠程監(jiān)控安全管理系統(tǒng)<b class='flag-5'>解決方案</b>

    鴻蒙OpenHarmony【集成三方SDK】 (基于Hi3861開發(fā)板)

    OpenHarmony致力于打造一套更加開放完善的IoT生態(tài)系統(tǒng),為此OpenHarmony規(guī)劃了組目錄,用于將各廠商的SDK集成到
    的頭像 發(fā)表于 04-24 15:11 ?1243次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>【集成三方SDK】 (基于Hi3861開發(fā)板)

    介紹一套高效率適配多種電壓輸出的65W快充方案

    本期介紹一套高效率適配多種電壓輸出的65W快充方案。本方案擁有良好的性能和完善的保護功能,且內(nèi)置抖頻功能,具有良好的EMI性能,適用于充電器,適配器及其他開放式電源等多種應(yīng)用場合。
    的頭像 發(fā)表于 04-19 18:03 ?1628次閱讀
    介紹<b class='flag-5'>一套</b>高效率適配多種電壓輸出的65W快充<b class='flag-5'>方案</b>

    旅游景區(qū)雷電預(yù)警及防雷工程解決方案

    旅游景區(qū)是人們休閑、娛樂的重要場所,然而,雷電天氣的突發(fā)可能會給游客和景區(qū)帶來安全隱患。因此,建立一套完善的雷電預(yù)警方案及景區(qū)防雷工程顯得尤為重要。本文將詳細介紹如何制定一套全面的雷電
    的頭像 發(fā)表于 04-08 10:46 ?553次閱讀
    旅游景區(qū)雷電預(yù)警及防雷工程<b class='flag-5'>解決方案</b>
    主站蜘蛛池模板: bt天堂在线www种子搜索 | 亚洲综合一 | 精品久久看 | 色多多福利网站老司机 | 色丁香在线 | 一级毛片西西人体44rt高清 | 好大好硬好深好爽想要免费视频 | 免费国产网站 | 让她爽的喷水叫爽乱 | 另类性欧美喷潮videofree | 国产黄色小视频网站 | 色妞网| 天天干2018| 国产主播一区二区 | 天堂资源在线8 | 欧美色图亚洲自拍 | 女人又色又爽又黄 | 在线你懂得 | 午夜看片 | 日本黄色小视频在线观看 | 一区二区三区四区欧美 | 狠狠色丁香婷婷久久 | 91在线色 | 色综合天天综合中文网 | 欧美一区二区三区高清视频 | www.一区二区三区 | 簧片地址 | 一级毛片免费在线观看网站 | 成年全黄大色大黄 | 久久手机看片 | 99久久国产综合精品国 | 大量真实偷拍情侣视频野战 | 国产真实野战在线视频 | 亚洲久久久 | 久久天天躁狠狠躁夜夜呲 | 国产三级精品三级 | 欧美性色欧美a在线观看 | 天堂网资源 | 黄色片网站观看 | 狠狠色丁香久久综合网 | 国产自在自线午夜精品视频 |