0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

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

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

頁表如何支持多任務(wù)并行

冬至配餃子 ? 來源:芯片驗(yàn)證工程師 ? 作者:驗(yàn)證哥布林 ? 2022-07-28 17:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在大多數(shù)使用ARM處理器的系統(tǒng)中都會有很多應(yīng)用或者任務(wù)同時運(yùn)行,其中每個任務(wù)都在物理內(nèi)存中擁有自己獨(dú)立的頁表。

每當(dāng)應(yīng)用程序啟動時,操作系統(tǒng)都會為其分配一個頁表,頁表中的頁表項(xiàng)將應(yīng)用程序即將使用到的指令和數(shù)據(jù)映射到物理內(nèi)存。如果應(yīng)用程序映射到了未分配的物理空間,操作系統(tǒng)會完成相應(yīng)頁的分配,然后任務(wù)就可以進(jìn)行下去。

多個任務(wù)可以同時運(yùn)行,因?yàn)樗鼈兪褂玫氖遣煌腣A-PA映射關(guān)系,而這些映射關(guān)系能夠同時存在于物理內(nèi)存中。當(dāng)任務(wù)完成并且相應(yīng)的頁表映射不再需要時,該頁表所處的物理空間可以被重新分配,刪除相應(yīng)的頁表項(xiàng)(置成無效)并invalid TLB cache。

Address Space ID

在頁表中有一個nG(non-global)比特位。如果某個頁設(shè)置了nG ,那么該頁只與特定的應(yīng)用或者任務(wù)相關(guān)聯(lián)。當(dāng)MMU執(zhí)行VA-PA時,會同時用到VA和ASID(操作系統(tǒng)分配給每個任務(wù)的編號)。

poYBAGLiWjqAE4OOAACyqX34lps621.png

作為頁表內(nèi)容的cache,TLB中的tag除了存儲了VA,還有相應(yīng)的ASID。在做TLB的hit-miss-check時,只有VA和ASID同時匹配才算hit。

上下文切換

所以,TLB中可能存放著多個相同VA對應(yīng)的頁表項(xiàng)。這些頁表項(xiàng)具有不同的ASID,當(dāng)某個ASID對應(yīng)的任務(wù)完成或者這個任務(wù)的頁表發(fā)生更改時只需要invalid某個ASID的TLB cache。這種操作叫context switches(上下文切換)。只針對特定ASID進(jìn)行上下文切換,能夠降低頁表修改帶來的性能開銷,因?yàn)樗苊饬怂⑿氯康腡LB。


審核編輯:劉清

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

    關(guān)注

    6

    文章

    361

    瀏覽量

    42518
  • MMU
    MMU
    +關(guān)注

    關(guān)注

    0

    文章

    92

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    多節(jié)點(diǎn)并行處理架構(gòu)

    /GPU)、內(nèi)存及本地存儲,節(jié)點(diǎn)間通過高速網(wǎng)絡(luò)通信,避免資源爭用,提升擴(kuò)展性。 數(shù)據(jù)水平分片? 海量數(shù)據(jù)被分割存儲在不同節(jié)點(diǎn),查詢時各節(jié)點(diǎn)并行處理本地?cái)?shù)據(jù),最后匯總結(jié)果(如Doris、ClickHouse)。 分布式任務(wù)調(diào)度? 協(xié)調(diào)節(jié)點(diǎn)將
    的頭像 發(fā)表于 06-12 08:18 ?86次閱讀
    多節(jié)點(diǎn)<b class='flag-5'>并行</b>處理架構(gòu)

    多任務(wù)處理卡頓頻發(fā),無風(fēng)扇工控機(jī)如何優(yōu)化性能?聚徽廠家一文讀懂

    在工業(yè)自動化、物聯(lián)網(wǎng)等領(lǐng)域的深度應(yīng)用中,無風(fēng)扇工控機(jī)常常需要同時運(yùn)行數(shù)據(jù)采集、實(shí)時監(jiān)控、程序控制等多個任務(wù)。然而,頻繁出現(xiàn)的多任務(wù)處理卡頓問題,不僅影響生產(chǎn)效率,還可能導(dǎo)致數(shù)據(jù)丟失、系統(tǒng)崩潰等
    的頭像 發(fā)表于 06-03 15:25 ?214次閱讀

    快速入門——LuatOS:sys庫多任務(wù)管理實(shí)戰(zhàn)攻略!

    在嵌入式開發(fā)中,多任務(wù)管理是提升系統(tǒng)效率的關(guān)鍵。本教程專為快速入門設(shè)計(jì),聚焦LuatOS的sys庫,通過實(shí)戰(zhàn)案例帶你快速掌握多任務(wù)創(chuàng)建、調(diào)度與同步技巧。無論你是零基礎(chǔ)新手還是希望快速提升開發(fā)效率
    的頭像 發(fā)表于 05-29 14:36 ?167次閱讀
    快速入門——LuatOS:sys庫<b class='flag-5'>多任務(wù)</b>管理實(shí)戰(zhàn)攻略!

    讀懂極易并行計(jì)算:定義、挑戰(zhàn)與解決方案

    GPU經(jīng)常與人工智能同時提及,其中一個重要原因在于AI與3D圖形處理本質(zhì)上屬于同一類問題——它們都適用極易并行計(jì)算。什么是極易并行計(jì)算?極易并行計(jì)算指的是符合以下特征的計(jì)算任務(wù)
    的頭像 發(fā)表于 04-17 09:11 ?359次閱讀
    讀懂極易<b class='flag-5'>并行</b>計(jì)算:定義、挑戰(zhàn)與解決方案

    摩爾線程支持DeepSeek開源通信庫DeepEP和并行算法DualPipe

    DeepSeek開源周第四日,摩爾線程宣布已成功支持DeepSeek開源通信庫DeepEP和并行算法DualPipe,并發(fā)布相關(guān)開源代碼倉庫:MT-DeepEP和MT-DualPipe。
    的頭像 發(fā)表于 02-28 15:58 ?469次閱讀

    BEVFusion —面向自動駕駛的多任務(wù)多傳感器高效融合框架技術(shù)詳解

    BEVFusion 技術(shù)詳解總結(jié)——面向自動駕駛的多任務(wù)多傳感器高效融合框架原始論文:*附件:bevfusion.pdf介紹(Introduction)背景:自動駕駛系統(tǒng)配備了多種傳感器,提供互補(bǔ)
    的頭像 發(fā)表于 02-26 20:33 ?3784次閱讀
    BEVFusion —面向自動駕駛的<b class='flag-5'>多任務(wù)</b>多傳感器高效融合框架技術(shù)詳解

    xgboost的并行計(jì)算原理

    在大數(shù)據(jù)時代,機(jī)器學(xué)習(xí)算法需要處理的數(shù)據(jù)量日益增長。為了提高數(shù)據(jù)處理的效率,許多算法都開始支持并行計(jì)算。XGBoost作為一種高效的梯度提升樹算法,其并行計(jì)算能力是其受歡迎的原因
    的頭像 發(fā)表于 01-19 11:17 ?959次閱讀

    羅徹斯特電子為傳統(tǒng)應(yīng)用提供卓越的內(nèi)存支持并行NOR Flash提供持續(xù)供貨支持

    并行NOR Flash提供持續(xù)供貨支持 憑借羅徹斯特電子的生產(chǎn)能力,能夠持續(xù)供應(yīng)并行NOR Flash。不論是傳統(tǒng)還是成熟產(chǎn)品對于此類產(chǎn)品都有持續(xù)需求。通過戰(zhàn)略性安排,羅徹斯特電子購買了相關(guān)晶圓
    發(fā)表于 12-17 10:33 ?284次閱讀

    在ADS4142的數(shù)據(jù)第18, 4中,tSU和tH是怎么定義的?

    在我的設(shè)計(jì)中要用到一個ADC 后面連接一個隔離器和DAC,結(jié)構(gòu)如下: 其中: ADC:ADS4142 DAC:DAC5672 在ADS4142的數(shù)據(jù)第18, 4中,tSU和tH是怎么定義
    發(fā)表于 12-06 06:38

    高速并行總線的工作原理是什么 高速并行總線有哪些

    高速并行總線的工作原理及其具體類型是一個涉及硬件技術(shù)和數(shù)據(jù)傳輸?shù)膹?fù)雜話題。以下是對高速并行總線工作原理的概述以及幾種常見的高速并行總線的介紹。 高速并行總線的工作原理 高速
    的頭像 發(fā)表于 10-06 15:17 ?1413次閱讀
    高速<b class='flag-5'>并行</b>總線的工作原理是什么 高速<b class='flag-5'>并行</b>總線有哪些

    freertos最多支持多少個任務(wù)

    FreeRTOS是一個輕量級的實(shí)時操作系統(tǒng)(RTOS),其設(shè)計(jì)初衷就是為了提供簡單、可靠且高效的實(shí)時任務(wù)管理。關(guān)于FreeRTOS最多支持多少個任務(wù)的問題,實(shí)際上并沒有一個固定的上限,這主要取決于
    的頭像 發(fā)表于 09-02 14:21 ?2152次閱讀

    bq4845/bq4845Y帶CPU監(jiān)控器的并行RTC數(shù)據(jù)

    電子發(fā)燒友網(wǎng)站提供《bq4845/bq4845Y帶CPU監(jiān)控器的并行RTC數(shù)據(jù).pdf》資料免費(fèi)下載
    發(fā)表于 08-23 10:46 ?0次下載
    bq4845/bq4845Y帶CPU監(jiān)控器的<b class='flag-5'>并行</b>RTC數(shù)據(jù)<b class='flag-5'>表</b>

    Linux內(nèi)核中映射的基礎(chǔ)知識

    大家在看內(nèi)核代碼時會經(jīng)??吹囊陨闲g(shù)語,但在ARM的芯片手冊中并沒有用到這些術(shù)語,而是使用L1,L2,L3這種術(shù)語。
    的頭像 發(fā)表于 08-07 15:53 ?1483次閱讀
    Linux內(nèi)核中<b class='flag-5'>頁</b><b class='flag-5'>表</b>映射的基礎(chǔ)知識

    DAC8541 16位、單通道、并行輸入數(shù)模轉(zhuǎn)換器數(shù)據(jù)

    電子發(fā)燒友網(wǎng)站提供《DAC8541 16位、單通道、并行輸入數(shù)模轉(zhuǎn)換器數(shù)據(jù).pdf》資料免費(fèi)下載
    發(fā)表于 07-23 09:47 ?18次下載
    DAC8541 16位、單通道、<b class='flag-5'>并行</b>輸入數(shù)模轉(zhuǎn)換器數(shù)據(jù)<b class='flag-5'>表</b>

    esp32-c3工程中怎么創(chuàng)建多個freertos任務(wù)?

    ESP-IDF中給出的ESP32-C3的例程都只有一個任務(wù)。即void app_main() 而且沒看見這個app_main任務(wù)是在哪里被創(chuàng)建的??? 如果我想建一個ESP32-C3的多任務(wù)的工程該
    發(fā)表于 06-27 06:37

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品