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

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

ARM64位與ARM32位OP-TEE啟動過程的差異

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

ARM32的OP-TEE與ARM64的OP-TEE啟動過程大致相同。ARM64的OP-TEE的_start函數定義在generic_entry_a64.S文件中,而且該函數不像ARM32位系統一樣會進入reset中去執行OP-TEE啟動,而是直接在_start函數中就完成整個啟動過程,

在進行初始化操作之前會注冊一個異常向量表,該異常向量表會在喚醒從核階段被使用,當主核通知喚醒從核時,從核會查找該異常向量表,然后命中對應的處理函數并執行從核的啟動操作。

ARM64的OP-TEE的啟動過程與ARM32的OP-TEE的啟動過程幾乎一樣。ARM64位系統的_start函數內容說明如下:

FUNC _start , :
            mov x19, x0                      //保存paged_table的地址到x19中
            mov x20, x2                      //保存device tree的地址到x20中
            adr x0, reset_vect_table       //獲取異常向量表的地址
            msr vbar_el1, x0                //將異常向量表的地址寫入VBAR寄存器
            isb
            //設置系統控制寄存器,禁止cache等操作
        mrs x0, sctlr_el1
            mov x1, #(SCTLR_I | SCTLR_A | SCTLR_SA)
            orr x0, x0, x1
            msr sctlr_el1, x0
            isb
        //復制OP-TEE鏡像中的init部分到內存中
        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           //關閉數據cache
            bl  console_init                //初始化console
            bl  core_init_mmu_map          //初始化MMU的頁表
            bl  core_init_mmu_regs         //將MMU的頁表信息寫入TTBRx寄存器中
            bl  cpu_mmu_enable              //使能MMU
            bl  cpu_mmu_enable_icache      //使能MMU的指令cache
            bl  cpu_mmu_enable_dcache      //使能MMU的數據cache
            mov x0, x19                      //將paged_table的地址保存到x0中
            mov x1, #-1
            mov x2, x20                      //將device tree的地址保存到x2中
        //使用device tree和paged_table作為參數開始OP-TEE的啟動
            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         //刷新數據cache
            bl  thread_clr_boot_thread    //清空系統線程的狀態
            mov x1, x19
            //將TEESMC_OPTEED_RETURN_ENTRY_DONE保存到x0
              mov x0, #TEESMC_OPTEED_RETURN_ENTRY_DONE
              smc #0  //調用SMC切換到normal world狀態
              b   .   /* SMC不應該有返回操作 */
          END_FUNC _start
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • ARM
    ARM
    +關注

    關注

    134

    文章

    9328

    瀏覽量

    375774
  • 函數
    +關注

    關注

    3

    文章

    4374

    瀏覽量

    64430
  • TEE
    TEE
    +關注

    關注

    0

    文章

    29

    瀏覽量

    10469
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    ARM32設計

    ARM32設計,兼容16指令集,現在被軟銀收購ARM1-11 從功能機到智能手機新款命名 :cortex V7-A 手機智能設備-R 實時操作系統-M嵌入式開發stm32 性能從
    發表于 08-24 06:51

    請問HSE op-tee是什么關系?

    我有個問題。S32G同時支持HSE和op-tee。S32G的安全加解密和證書管理是通過HSE完成的嗎?op-tee 和 HSE 只是其中之一嗎?有沒有相關的設計文檔?謝謝
    發表于 04-06 06:26

    ARM64ARM32 的Linux程序區別在哪里

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

    基于ARM32的微控制器AT32F403A系列

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

    Core 3399KJ Linux根文件系統鏡像(arm64/arm32

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

    Core 3399J Linux根文件系統鏡像(arm64/arm32

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

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

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

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

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

    AIO 3399ProC Linux根文件系統鏡像(arm64/arm32

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

    OP-TEE中安全驅動的框架

    OP-TEE中的安全驅動是OP-TEE操作安全設備的載體。 TA通過調用某個安全驅動的接口就可實現對特定安全設備的操作。安全驅動在OP-TEE中的軟件框架如圖22-2所示。 (其實這里,你要搞清楚
    的頭像 發表于 10-30 16:04 ?1159次閱讀
    <b class='flag-5'>OP-TEE</b>中安全驅動的框架

    OP-TEE的內核初始化過程

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

    OP-TEE的內核初始化函數調用

    generic_boot_init_primary函數內容 generic_boot_init_primary函數是OP-TEE建立系統運行環境的入口函數,該函數會進行建立線程運行空間、初始化
    的頭像 發表于 11-02 18:18 ?1094次閱讀
    <b class='flag-5'>OP-TEE</b>的內核初始化函數調用

    OP-TEE服務項的啟動

    OP-TEE服務項的啟動分為: service_init以及service_init_late ,需要被啟動的服務項通過使用這兩個宏,在編譯時,相關服務的內容將會被保存到initcall1
    的頭像 發表于 11-07 15:04 ?1097次閱讀

    OP-TEE的安全存儲的簡介

    OP-TEE的安全存儲的簡介 OP-TEE的安全存儲功能是OP-TEE為用戶提供的安全存儲機制。用戶可使用安全存儲功能來保存敏感數據、密鑰等信息。 使用OP-TEE安全存儲功能保存數據
    的頭像 發表于 11-21 11:33 ?1522次閱讀
    <b class='flag-5'>OP-TEE</b>的安全存儲的簡介

    OP-TEE安全存儲安全文件的格式

    安全文件、dirf.db文件的數據格式和操作過程 OP-TEE的安全存儲功能可滿足用戶保存敏感數據的需求,需要被保存的數據會被加 密保存到文件系統或RPMB分區中 。 當選擇將數據保存到文件系統中
    的頭像 發表于 11-21 11:49 ?1255次閱讀
    <b class='flag-5'>OP-TEE</b>安全存儲安全文件的格式
    主站蜘蛛池模板: 国产女人小便视频 | 国产成人三级经典中文 | 色婷婷激婷婷深爱五月小说 | 亚洲成a人一区二区三区 | 午夜影剧院 | 中文字幕不卡在线播放 | 成人国产在线24小时播放视频 | 久久香蕉精品视频 | 欧美aaaaaaaaa| 韩日一级毛片 | 边做饭边被躁欧美三级小说 | 中文字幕不卡免费高清视频 | 一区二区免费播放 | 国产一区二区三区在线观看视频 | 久久久精品免费视频 | 日本亚洲视频 | 亚洲婷婷综合中文字幕第一页 | 久久精品国产精品亚洲人人 | 真实一级一级一片免费视频 | 天堂在线天堂最新版在线www | 精品在线一区二区 | 免费级毛片 | 国产美女精品视频免费观看 | 黄乱色伦 | 天天综合在线观看 | 另类性欧美喷潮videofree | 久久国产乱子伦精品免费午夜 | 久久99热狠狠色精品一区 | 色精品视频 | 日韩一区二区在线观看 | 一区二区三区在线观看视频 | yy8090韩国日本三理论免费 | 男女交性视频免费 | 性欧美一级| 夜夜爱夜夜爽夜夜做夜夜欢 | 免费国产h视频在线观看 | 激情综合婷婷丁香六月花 | 亚洲国产成人久久 | 狠狠做久久深爱婷婷97动漫 | 久久免费99精品久久久久久 | 午夜欧美日韩 |