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

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

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

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

ARM64位與ARM32位OP-TEE啟動(dòng)過(guò)程的差異

麥辣雞腿堡 ? 來(lái)源:TrustZone ? 作者:TrustZone ? 2023-11-07 15:12 ? 次閱讀

ARM32的OP-TEE與ARM64的OP-TEE啟動(dòng)過(guò)程大致相同。ARM64的OP-TEE的_start函數(shù)定義在generic_entry_a64.S文件中,而且該函數(shù)不像ARM32位系統(tǒng)一樣會(huì)進(jìn)入reset中去執(zhí)行OP-TEE啟動(dòng),而是直接在_start函數(shù)中就完成整個(gè)啟動(dòng)過(guò)程,

在進(jìn)行初始化操作之前會(huì)注冊(cè)一個(gè)異常向量表,該異常向量表會(huì)在喚醒從核階段被使用,當(dāng)主核通知喚醒從核時(shí),從核會(huì)查找該異常向量表,然后命中對(duì)應(yīng)的處理函數(shù)并執(zhí)行從核的啟動(dòng)操作。

ARM64的OP-TEE的啟動(dòng)過(guò)程與ARM32的OP-TEE的啟動(dòng)過(guò)程幾乎一樣。ARM64位系統(tǒng)的_start函數(shù)內(nèi)容說(shuō)明如下:

FUNC _start , :
            mov x19, x0                      //保存paged_table的地址到x19中
            mov x20, x2                      //保存device tree的地址到x20中
            adr x0, reset_vect_table       //獲取異常向量表的地址
            msr vbar_el1, x0                //將異常向量表的地址寫(xiě)入VBAR寄存器
            isb
            //設(shè)置系統(tǒng)控制寄存器,禁止cache等操作
        mrs x0, sctlr_el1
            mov x1, #(SCTLR_I | SCTLR_A | SCTLR_SA)
            orr x0, x0, x1
            msr sctlr_el1, x0
            isb
        //復(fù)制OP-TEE鏡像中的init部分到內(nèi)存中
        copy_init:
            ldp x3, x4, [x1], #16
            stp x3, x4, [x0], #16
            cmp x0, x2
            b.lt     copy_init
            msr daifclr, #DAIFBIT_ABT      //使能異常處理
            adr x0, __text_start           //將__text_start的地址保存到x0中
            adrp     x1, __end               //將_end的地址保存到x1中
            add x1, x1, :lo12:__end
            sub x1, x1, x0
            bl  inv_dcache_range           //關(guān)閉數(shù)據(jù)cache
            bl  console_init                //初始化console
            bl  core_init_mmu_map          //初始化MMU的頁(yè)表
            bl  core_init_mmu_regs         //將MMU的頁(yè)表信息寫(xiě)入TTBRx寄存器中
            bl  cpu_mmu_enable              //使能MMU
            bl  cpu_mmu_enable_icache      //使能MMU的指令cache
            bl  cpu_mmu_enable_dcache      //使能MMU的數(shù)據(jù)cache
            mov x0, x19                      //將paged_table的地址保存到x0中
            mov x1, #-1
            mov x2, x20                      //將device tree的地址保存到x2中
        //使用device tree和paged_table作為參數(shù)開(kāi)始OP-TEE的啟動(dòng)
            bl  generic_boot_init_primary
            mov x19, x0
            adr x0, __text_start
            add x1, x1, :lo12:__end
            sub x1, x1, x0
            bl  flush_dcache_range         //刷新數(shù)據(jù)cache
            bl  thread_clr_boot_thread    //清空系統(tǒng)線程的狀態(tài)
            mov x1, x19
            //將TEESMC_OPTEED_RETURN_ENTRY_DONE保存到x0
              mov x0, #TEESMC_OPTEED_RETURN_ENTRY_DONE
              smc #0  //調(diào)用SMC切換到normal world狀態(tài)
              b   .   /* SMC不應(yīng)該有返回操作 */
          END_FUNC _start
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9167

    瀏覽量

    369217
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4346

    瀏覽量

    62973
  • TEE
    TEE
    +關(guān)注

    關(guān)注

    0

    文章

    29

    瀏覽量

    10307
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ARM32設(shè)計(jì)

    ARM32設(shè)計(jì),兼容16指令集,現(xiàn)在被軟銀收購(gòu)ARM1-11 從功能機(jī)到智能手機(jī)新款命名 :cortex V7-A 手機(jī)智能設(shè)備-R 實(shí)時(shí)操作系統(tǒng)-M嵌入式開(kāi)發(fā)stm32 性能從
    發(fā)表于 08-24 06:51

    請(qǐng)問(wèn)HSE op-tee是什么關(guān)系?

    我有個(gè)問(wèn)題。S32G同時(shí)支持HSE和op-tee。S32G的安全加解密和證書(shū)管理是通過(guò)HSE完成的嗎?op-tee 和 HSE 只是其中之一嗎?有沒(méi)有相關(guān)的設(shè)計(jì)文檔?謝謝
    發(fā)表于 04-06 06:26

    ARM64ARM32 的Linux程序區(qū)別在哪里

    arm64ARM64。我在示例中使用了AArch64寄存器,但我所描述的許多問(wèn)題也發(fā)生在ARMv8-A 32執(zhí)行狀態(tài)。
    的頭像 發(fā)表于 08-09 09:51 ?2.7w次閱讀
    <b class='flag-5'>ARM64</b>與<b class='flag-5'>ARM32</b> 的Linux程序區(qū)別在哪里

    基于ARM32的微控制器AT32F403A系列

    基于ARM32的微控制器AT32F403A系列
    發(fā)表于 07-31 11:02 ?13次下載

    Core 3399KJ Linux根文件系統(tǒng)鏡像(arm64/arm32

    電子發(fā)燒友網(wǎng)站提供《Core 3399KJ Linux根文件系統(tǒng)鏡像(arm64/arm32).txt》資料免費(fèi)下載
    發(fā)表于 09-14 10:08 ?3次下載
    Core 3399KJ Linux根文件系統(tǒng)鏡像(<b class='flag-5'>arm64</b>/<b class='flag-5'>arm32</b>)

    Core 3399J Linux根文件系統(tǒng)鏡像(arm64/arm32

    電子發(fā)燒友網(wǎng)站提供《Core 3399J Linux根文件系統(tǒng)鏡像(arm64/arm32).txt》資料免費(fèi)下載
    發(fā)表于 09-14 09:24 ?0次下載
    Core 3399J Linux根文件系統(tǒng)鏡像(<b class='flag-5'>arm64</b>/<b class='flag-5'>arm32</b>)

    Core 3399 JD4 V2文件系統(tǒng)Linux根文件系統(tǒng)鏡像(arm64/arm32

    電子發(fā)燒友網(wǎng)站提供《Core 3399 JD4 V2文件系統(tǒng)Linux根文件系統(tǒng)鏡像(arm64/arm32).txt》資料免費(fèi)下載
    發(fā)表于 09-16 09:44 ?10次下載
    Core 3399 JD4 V2文件系統(tǒng)Linux根文件系統(tǒng)鏡像(<b class='flag-5'>arm64</b>/<b class='flag-5'>arm32</b>)

    ROC RK3399 PC Pro文件系統(tǒng)Linux根文件系統(tǒng)鏡像(arm64/arm32

    電子發(fā)燒友網(wǎng)站提供《ROC RK3399 PC Pro文件系統(tǒng)Linux根文件系統(tǒng)鏡像(arm64/arm32).txt》資料免費(fèi)下載
    發(fā)表于 09-20 10:59 ?5次下載
    ROC RK3399 PC Pro文件系統(tǒng)Linux根文件系統(tǒng)鏡像(<b class='flag-5'>arm64</b>/<b class='flag-5'>arm32</b>)

    AIO 3399ProC Linux根文件系統(tǒng)鏡像(arm64/arm32

    電子發(fā)燒友網(wǎng)站提供《AIO 3399ProC Linux根文件系統(tǒng)鏡像(arm64/arm32).txt》資料免費(fèi)下載
    發(fā)表于 09-21 09:52 ?11次下載
    AIO 3399ProC Linux根文件系統(tǒng)鏡像(<b class='flag-5'>arm64</b>/<b class='flag-5'>arm32</b>)

    OP-TEE中安全驅(qū)動(dòng)的框架

    OP-TEE中的安全驅(qū)動(dòng)是OP-TEE操作安全設(shè)備的載體。 TA通過(guò)調(diào)用某個(gè)安全驅(qū)動(dòng)的接口就可實(shí)現(xiàn)對(duì)特定安全設(shè)備的操作。安全驅(qū)動(dòng)在OP-TEE中的軟件框架如圖22-2所示。 (其實(shí)這里,你要搞清楚
    的頭像 發(fā)表于 10-30 16:04 ?898次閱讀
    <b class='flag-5'>OP-TEE</b>中安全驅(qū)動(dòng)的框架

    OP-TEE的內(nèi)核初始化過(guò)程

    /arch/arm generic_entry_a64.S文件中。 2 OP-TEE的內(nèi)核初始化過(guò)程 ** _star
    的頭像 發(fā)表于 11-02 17:57 ?1561次閱讀
    <b class='flag-5'>OP-TEE</b>的內(nèi)核初始化<b class='flag-5'>過(guò)程</b>

    OP-TEE的內(nèi)核初始化函數(shù)調(diào)用

    generic_boot_init_primary函數(shù)內(nèi)容 generic_boot_init_primary函數(shù)是OP-TEE建立系統(tǒng)運(yùn)行環(huán)境的入口函數(shù),該函數(shù)會(huì)進(jìn)行建立線程運(yùn)行空間、初始化
    的頭像 發(fā)表于 11-02 18:18 ?828次閱讀
    <b class='flag-5'>OP-TEE</b>的內(nèi)核初始化函數(shù)調(diào)用

    OP-TEE服務(wù)項(xiàng)的啟動(dòng)

    OP-TEE服務(wù)項(xiàng)的啟動(dòng)分為: service_init以及service_init_late ,需要被啟動(dòng)的服務(wù)項(xiàng)通過(guò)使用這兩個(gè)宏,在編譯時(shí),相關(guān)服務(wù)的內(nèi)容將會(huì)被保存到initcall1
    的頭像 發(fā)表于 11-07 15:04 ?790次閱讀

    OP-TEE的安全存儲(chǔ)的簡(jiǎn)介

    OP-TEE的安全存儲(chǔ)的簡(jiǎn)介 OP-TEE的安全存儲(chǔ)功能是OP-TEE為用戶提供的安全存儲(chǔ)機(jī)制。用戶可使用安全存儲(chǔ)功能來(lái)保存敏感數(shù)據(jù)、密鑰等信息。 使用OP-TEE安全存儲(chǔ)功能保存數(shù)據(jù)
    的頭像 發(fā)表于 11-21 11:33 ?1124次閱讀
    <b class='flag-5'>OP-TEE</b>的安全存儲(chǔ)的簡(jiǎn)介

    OP-TEE安全存儲(chǔ)安全文件的格式

    安全文件、dirf.db文件的數(shù)據(jù)格式和操作過(guò)程 OP-TEE的安全存儲(chǔ)功能可滿足用戶保存敏感數(shù)據(jù)的需求,需要被保存的數(shù)據(jù)會(huì)被加 密保存到文件系統(tǒng)或RPMB分區(qū)中 。 當(dāng)選擇將數(shù)據(jù)保存到文件系統(tǒng)中
    的頭像 發(fā)表于 11-21 11:49 ?908次閱讀
    <b class='flag-5'>OP-TEE</b>安全存儲(chǔ)安全文件的格式
    主站蜘蛛池模板: 全国男人的天堂网站 | 免费毛片网站 | 深深激情网 | 久久久久99精品成人片三人毛片 | 免费看黄在线观看 | 伊人久久大 | 欧美成人性高清观看 | 国产综合视频在线观看 | 49pao强力在线高清基地 | 乱操视频| 尤物黄色| 俄罗斯一级成人毛片 | 国产香蕉视频在线播放 | 欧美成人性动漫在线观看 | 综合爱爱| 国产日韩精品欧美一区色 | 色吧亚洲欧美另类 | 狠狠干狠狠插 | 99热久久精品免费精品 | 国产精品久久久久久久久久影院 | 狠狠色丁香婷婷综合欧美 | 午夜免费福利影院 | 久久青草精品一区二区三区 | 国产产一区二区三区久久毛片国语 | 国产美女一级高清免费观看 | 毛片你懂的 | 亚洲国产精品综合久久网络 | 婷婷六月丁香色婷婷网 | 天堂精品在线 | 美女被啪到哭网站在线观看 | 午夜在线观看视频在线播放版 | yy8090韩国日本三理论免费 | 四虎免费永久观看 | 狠狠色噜噜噜噜狠狠狠狠狠狠奇米 | 超级乱淫伦网站 | 午夜免费福利网站 | 色老头性xxxx老头视频 | 中文字幕视频一区 | 中文在线1区二区六区 | 中文字幕一二三区乱码老 | 日本三级全黄三级a |