国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

Arm 64位遷移

安芯教育科技 ? 來源:安芯教育科技 ? 作者:Nathan ? 2020-11-13 16:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

2020 年 10 月,Arm 宣布,從 2022 IP 開始,未來的所有 Cortex-A”大核”都將僅支持 64 位代碼。Oppo 和小米這兩家中國領先的移動終端制造商以及領先的游戲引擎 Unity(中國)紛紛對 Arm 宣布向 64 位遷移和為之付出的努力表示支持。

Arm 認為,遷移到 64 位是中國的開發人員都應邁出的積極一步。如果想要打造能滿足消費者需求的全新、更復雜、安全可靠、身臨其境的體驗,他們的app必然需要遷移到 64 位。另外,預計到 2023 年將出現僅支持 64 位的移動設備,屆時他們的app還需要與這些設備相兼容。

64 位不僅能帶來許多好處(如上一篇極術社區的博客中所述),例如優化性能、提高安全性、改善功效和降低成本,而且將app遷移到 64 位的過程十分簡單,并不具備太多挑戰。當然,下文也列出了在遷移到 64 位的過程中,中國開發人員需要考慮的一些方面以及對應采取的措施。請注意,下列步驟都是建立在開發人員使用 Google Android Studio 進行app開發的假設基礎上。

查看app代碼

全部由 Java 編程語言或 Kotlin 編寫而成的Android 應用程序(包括所有庫或 SDK)都將自動能在 64 位移動設備上運行。對于那些向專屬/第三方本地庫發出 Java 本地接口 (JNI) 調用(以進行用戶行為分析、加密、云服務等)的 Java 應用程序,這些庫也需要遷移到 64 位,才能消除所有 32 位依賴項。而且,使用 Arm NEON 指令編寫的大多數代碼無需更改即可編譯成 64 位。但是,如果app使用的是本地庫,則其必須是 64 位版本,這可能需要額外的開發工作。

查驗本機代碼

如果開發人員不確定他們的app是否使用本機代碼,可以檢查以下三項:


? app是否使用了任何 C/C++(本機)代碼
? app是否與任何第三方本地庫相關聯
? app是否由某個使用本地庫的第三方app生成器構建而成。

使用 APK 查驗本地庫

根據應用二進制接口 (ABI),本地庫存儲在不同文件夾內。通常情況下,為 32 位和 64 位架構構建的 APK 或數據包將擁有分別針對兩種 ABI 的文件夾,每個文件夾內包含一組對應的本地庫。如果不支持 64 位,開發人員可能只會看到 32 位 ABI 文件夾,卻沒有 64 位文件夾。

使用工具查驗本地庫

開發人員還可以使用不同的工具來查驗app中的本地庫。APK Analyzer 是 Android Studio 中一款可用的 Android 工具,可幫助開發人員評估某個已構建的 APK 的不同方面。開發人員還可以通過解壓縮 APK 來查驗本地庫,因為這些文件的結構都類似于壓縮文件,所以也可以采取類似的提取方式。

從 32 位移植到 64 位

如果應用代碼已經在 iOS 上順利運行,則無需再做任何額外工作。但是,如果這是應用代碼初次構建用于 64 位系統,則需要解決的主要問題是指針不再適合于 int 之類的 32 位整型。因此,開發人員需要對以 int、unsigned 或 uint32_t 類型存儲指針的代碼進行更新。

減輕 64 位帶來的規模增加

為應用程式添加 64 位架構的支持可能導致 APK 大小隨之增加。Android App Bundle 功能可以最大限度地降低同一 APK 中同時包含 32 位和 64 位代碼所帶來的規模影響。在大多數情況下,將應用切換為使用 Android App Bundles 實際上有助于改善 APK 的大小,甚至小于 32 位時的應用大小。

游戲開發人員

正如我們在上一篇極術社區的博客中提到的,三個最常用的游戲引擎 Unreal、Cocos2d-x 和 Unity 目前都支持 64 位。事實上,這些領先的游戲引擎都支持 64 位對于游戲開發人員而言是一大利好消息,因為要為第三方游戲引擎遷移應用是一個前置時間非常長的繁雜過程。

測試應用

64 位版本的應用準備就緒后,應能提供與 32 位版本相同的質量和功能集。但是,這只有通過app測試才能保證。測試需要在支持 64 位的設備上完成。幸運的是,如今中國國內市場上的絕大多數智能手機都已兼容 64 位。

發布app

app準備就緒后,開發人員就可以照常發布。與現有的流程一樣,我們建議還是繼續遵循app部署的最佳實踐。Android 建議利用閉環測試軌道,先向有限數量的用戶推行,以確保app質量一致。

提供更多信息和支持

根據上述信息,中國開發人員向 64 位遷移的過程應該相對較輕松,干擾因素也最少。只需花費少量成本或時間完成遷移后,中國開發人員將能享受到多種多樣的巨大好處。有關更多詳細信息,我們建議遵循 Android 開發最佳實踐或閱讀Arm 64 位白皮書。

Arm 正在與合作伙伴展開密切合作,了解哪些生態系統、技術或商業方面的問題會妨礙app向 64 位遷移。我們向中國開發人員提出的建議非常簡單——立即著手,開始遷移到 64 位。現在就開始構建 64 位版本的應用,在主要開發、優化和測試平臺中改用 64 位,對本機和 Java 應用程序進行仔細檢查,盡快升級所有 32 位庫或引擎。

責任編輯:xj

原文標題:Arm 64位遷移知識匯總

文章出處:【微信公眾號:安芯教育科技】歡迎添加關注!文章轉載請注明出處。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • ARM
    ARM
    +關注

    關注

    135

    文章

    9553

    瀏覽量

    391912
  • 代碼
    +關注

    關注

    30

    文章

    4968

    瀏覽量

    73985
  • apk
    apk
    +關注

    關注

    0

    文章

    24

    瀏覽量

    5447

原文標題:Arm 64位遷移知識匯總

文章出處:【微信號:Ithingedu,微信公眾號:安芯教育科技】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    LuatOS選型指南:基于Air780EPM的32/64性能實測分析

    面對3264LuatOS固件的選擇難題,本文通過在Air780EPM開發板上的實際測試,詳細解析兩者在整數處理能力、浮點數精度以及系統性能方面的差異,結合應用場景給出專業建議,助力開發者實現
    的頭像 發表于 02-25 18:05 ?101次閱讀
    LuatOS選型指南:基于Air780EPM的32/<b class='flag-5'>64</b><b class='flag-5'>位</b>性能實測分析

    32還是64?答案藏在你的項目里

    LuatOS系統具備強大的跨芯片平臺支持能力,并為開發者同時提供 3264雙版本固件 。 本文將基于LuatOS在Air780EPM開發板上的測試結果,詳細分析32
    的頭像 發表于 02-23 21:36 ?396次閱讀
    32<b class='flag-5'>位</b>還是<b class='flag-5'>64</b><b class='flag-5'>位</b>?答案藏在你的項目里

    深入剖析ARM64內核關鍵文件:kernel-6.1/arch/arm64/kernel/head.S

    ARM64 架構的 Linux 內核開發中,arch/arm64/kernel/head.S是一個繞不開的關鍵文件—— 它是內核啟動早期的 “橋梁”,承接 Bootloader 與內核初始化核心
    的頭像 發表于 02-04 17:35 ?1182次閱讀
    深入剖析<b class='flag-5'>ARM64</b>內核關鍵文件:kernel-6.1/arch/<b class='flag-5'>arm64</b>/kernel/head.S

    深入剖析ARM64異常處理:開發者必須掌握的底層核心邏輯

    ARM64架構的開發領域,異常處理絕非單純的理論知識點,而是直接決定系統穩定性、調試效率和功能實現的關鍵技術。無論是嵌入式開發、Linux內核移植,還是驅動開發與芯片調試,理解異常發生后CPU
    的頭像 發表于 12-24 07:05 ?1108次閱讀
    深入剖析<b class='flag-5'>ARM64</b>異常處理:開發者必須掌握的底層核心邏輯

    PIC32CM JH系列MCU:面向5V工業與汽車應用的32Arm? Cortex?-M0+ 解決方案

    Microchip Technology PIC32CM JH 32MCU是基于SAM C21系列Arm? Cortex?-M0+的MCU。PIC32CM JH具有常用功能,擴展內存選項高達
    的頭像 發表于 10-13 14:00 ?716次閱讀
    PIC32CM JH系列MCU:面向5V工業與汽車應用的32<b class='flag-5'>位</b><b class='flag-5'>Arm</b>? Cortex?-M0+ 解決方案

    恩智浦MCX C系列MCU助力實現高效遷移

    考慮從8微控制器升級到32微控制器?本文以五大理由闡釋為何需要升級,并帶你了解恩智浦MCX C系列如何憑借優異性能、豐富的外設與強大的工具,讓遷移過程變得輕松高效。經濟實惠且可擴展的解決方案,讓您的設計經得起未來考驗。
    的頭像 發表于 09-22 16:40 ?3825次閱讀

    如何在Keil中將NuMicro BSP從Arm編譯器5遷移到編譯器6?

    在Keil中將NuMicro BSP從Arm編譯器5遷移到編譯器6!
    發表于 08-20 06:29

    請問各位dayu200是不是不支持燒錄64的OpenHarmony

    我自己編譯了OpenHarmony5.0.2的鏡像,發現如果使用arm64參數編譯為64版本,燒錄后卡在開機動畫無法開機,如果編譯為32就可以正常。請問dayu200不支持
    發表于 08-16 17:39

    瑞薩電子推出64RZ/G3E MPU

    瑞薩電子于2025年7月推出64RZ/G3E MPU,為需要AI加速和邊緣計算的高性能HMI系統設計提供助力。
    的頭像 發表于 08-04 13:55 ?2034次閱讀
    瑞薩電子推出<b class='flag-5'>64</b><b class='flag-5'>位</b>RZ/G3E MPU

    Texas Instruments 適用于AM64x Sitalog ?處理器的SK-AM64B入門套件數據手冊

    Texas Instruments適用于AM64x Sitara?處理器的SK-AM64B入門套件是一個獨立的測試和開發平臺,是加速設計原型階段的理想選擇。AM64x處理器由一個雙核64
    的頭像 發表于 07-28 10:20 ?795次閱讀
    Texas Instruments 適用于AM<b class='flag-5'>64</b>x Sitalog ?處理器的SK-AM<b class='flag-5'>64</b>B入門套件數據手冊

    如何下載 SDK 來構建 64 版本的庫?

    我正在嘗試獲取 64 版本的 CySuiteUSB dll 文件,但是當我轉到SuiteUSB 3.4 頁面時,沒有任何鏈接可以下載 SDK。如何下載 SDK 來構建 64 版本的
    發表于 07-23 08:25

    基于瑞薩64MPU RZ/G2L進行32應用軟件開發

    本文主要介紹基于瑞薩64MPU RZ/G2L進行32應用軟件開發的介紹,用于解決客戶32軟件移植相關問題,供客戶參考。
    的頭像 發表于 06-26 15:48 ?1991次閱讀
    基于瑞薩<b class='flag-5'>64</b><b class='flag-5'>位</b>MPU RZ/G2L進行32<b class='flag-5'>位</b>應用軟件開發

    Windows Arm64托管運行器正式支持GitHub Actions

    的面向 GitHub Copilot 的 Arm 擴展程序,更是進一步簡化并加速了向 Arm 架構服務器的遷移過程。雙方的共同努力正在賦能開發者,使其能夠在 Arm 平臺上進行更快、更
    的頭像 發表于 04-28 14:23 ?1152次閱讀

    Arm助力開發者加速遷移Arm架構云平臺 Arm遷移資源分享

    隨著基于 Arm 架構的云實例日益擴展,越來越多的用戶正從傳統平臺遷移Arm 平臺上。
    的頭像 發表于 04-09 18:23 ?1235次閱讀

    使用智能工具簡化向Arm平臺的遷移過程

    今年二月,Arm 推出了 GitHub Copilot 新擴展程序,助力快速遷移Arm 架構服務器。本文將帶你了解開發者該如何利用 GitHub Copilot 和 Arm Run
    的頭像 發表于 03-10 09:22 ?818次閱讀
    使用智能工具簡化向<b class='flag-5'>Arm</b>平臺的<b class='flag-5'>遷移</b>過程