chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

將安卓操作系統(tǒng)移植到嵌入式平臺(tái)的最佳實(shí)踐

星星科技指導(dǎo)員 ? 來(lái)源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Kailas Kharse ? 2022-10-26 10:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Android是流行的智能手機(jī)操作系統(tǒng),它正在接管平板電腦,汽車(chē),智能電視,可穿戴設(shè)備,家用電器,游戲機(jī)市場(chǎng)等。它為嵌入式平臺(tái)提供了獨(dú)特而熟悉的體驗(yàn),從最小的智能手表屏幕到可折疊和鍍鉻書(shū)上的較大顯示屏,再到車(chē)載娛樂(lè)系統(tǒng),再到最大的電視屏幕。Android操作系統(tǒng)驅(qū)動(dòng)的醫(yī)療設(shè)備在醫(yī)療保健行業(yè)也被廣泛接受。因此,將Android操作系統(tǒng)移植到嵌入式平臺(tái)最近引起了很多關(guān)注。

但是,在執(zhí)行安卓操作系統(tǒng)移植之前,請(qǐng)遵循以下做法,以確保高效和成功的安卓移植。

遵循 Linux 內(nèi)核編碼標(biāo)準(zhǔn)和安卓編碼標(biāo)準(zhǔn)

有各種過(guò)程被認(rèn)為是軟件開(kāi)發(fā)的基本屬性。這些過(guò)程用于特定的編程語(yǔ)言、編程風(fēng)格、方法等。編碼標(biāo)準(zhǔn)確保開(kāi)發(fā)人員遵循特定的準(zhǔn)則來(lái)處理項(xiàng)目。在為安卓移植進(jìn)行驅(qū)動(dòng)程序定制時(shí),有必要遵循Linux / Android編碼標(biāo)準(zhǔn)。這確保了無(wú)錯(cuò)誤且易于維護(hù)的驅(qū)動(dòng)程序。還需要檢查代碼是否沒(méi)有未使用的變量。

在編碼時(shí)保持一致性對(duì)于程序的質(zhì)量至關(guān)重要。此外,在系統(tǒng)的不同級(jí)別上普遍遵循準(zhǔn)則,以避免彼此矛盾。完成的程序代碼應(yīng)由單個(gè)開(kāi)發(fā)人員在單個(gè)會(huì)話中管理,或者看起來(lái)像是由單個(gè)開(kāi)發(fā)人員編寫(xiě)的。

開(kāi)發(fā)安全啟動(dòng)和映像身份驗(yàn)證

安全啟動(dòng)是設(shè)備安全體系結(jié)構(gòu)的構(gòu)建基塊。從技術(shù)上講,安全啟動(dòng)是在設(shè)備上加載和執(zhí)行每個(gè)軟件映像的啟動(dòng)序列。此外,此軟件映像是使用軟件授權(quán)的。此序列旨在通過(guò)在執(zhí)行之前檢查所有代碼來(lái)防止運(yùn)行未經(jīng)授權(quán)或已修改的代碼。

所有圖像加載都遵循相同的常規(guī)過(guò)程,稱(chēng)為“加載器”。加載程序分配一個(gè)安全的內(nèi)存區(qū)域來(lái)加載“ELF 標(biāo)頭”、“程序標(biāo)頭”和“哈希段”。加載程序通過(guò)檢查圖像元數(shù)據(jù)、根證書(shū)、證書(shū)鏈和哈希表來(lái)驗(yàn)證哈希段。加載程序通過(guò)對(duì)加載的 ELF 段進(jìn)行哈希處理并將哈希值與哈希表中的相等條目進(jìn)行比較來(lái)驗(yàn)證加載的 ELF 段。如果任何計(jì)算的哈希值存在差異,則拒絕圖像。

此過(guò)程可確保加載程序永遠(yuǎn)不會(huì)意外覆蓋內(nèi)存中的重要數(shù)據(jù)(包括加載程序的代碼和數(shù)據(jù)),并且圖像數(shù)據(jù)從不受信任的存儲(chǔ)中加載。

開(kāi)發(fā)已驗(yàn)證的啟動(dòng)

已驗(yàn)證啟動(dòng)可確保所有執(zhí)行的代碼都來(lái)自受信任的源(通常是設(shè)備 OEM)。它直接從引導(dǎo)分區(qū)、受硬件保護(hù)的信任根和引導(dǎo)加載程序創(chuàng)建一個(gè)完整信任鏈,以訪問(wèn)其他已驗(yàn)證的分區(qū),包括系統(tǒng)、供應(yīng)商和可選的 OEM 分區(qū)。在設(shè)備啟動(dòng)期間,每個(gè)階段都會(huì)在移交執(zhí)行之前驗(yàn)證下一階段的完整性和真實(shí)性。

之后,“已驗(yàn)證啟動(dòng)”會(huì)檢查具有回滾保護(hù)的 Android 版本是否正確,因?yàn)榛貪L保護(hù)通過(guò)確保設(shè)備僅更新到較新版本的 Android,有助于防止可能的漏洞利用變得持續(xù)存在。此外,經(jīng)過(guò)驗(yàn)證的啟動(dòng)還允許Android設(shè)備與用戶交流其完整性狀態(tài)。

安卓操作系統(tǒng)移植

移植 Linux 內(nèi)核是移植安卓系統(tǒng)最重要的因素之一。從 kernel.org 下載相應(yīng)的 Linux 版本,并將 Linux 移植到目標(biāo)主板。此內(nèi)核稱(chēng)為目標(biāo)板的參考內(nèi)核。查找與參考內(nèi)核具有相同修訂版的 Android 內(nèi)核,或者使用最接近的修訂版來(lái)簡(jiǎn)化過(guò)程。將參考內(nèi)核和 Android 內(nèi)核合并到將移植到目標(biāo)板的合并內(nèi)核中。集成到適用于 Android 的 Linux 內(nèi)核中的一些新組件是調(diào)試器、AshMem、開(kāi)放活頁(yè)夾、電源管理器、低內(nèi)存殺手和記錄器。

要為 Android 正確配置合并的內(nèi)核,您必須通過(guò)從合并的源代碼構(gòu)建內(nèi)核映像來(lái)測(cè)試 Linux 根文件系統(tǒng)的已知工作配置。

注意:引用內(nèi)核和 Android 內(nèi)核的修訂不匹配可能會(huì)導(dǎo)致花費(fèi)更多時(shí)間進(jìn)行合并和調(diào)試。

能夠配置升級(jí)(即 OTA)服務(wù)器

OTA(無(wú)線)是安卓用于安卓設(shè)備中系統(tǒng)級(jí)更新(如操作系統(tǒng)更新)的機(jī)制。建議堅(jiān)持讓移植公司使用安卓OTA升級(jí)機(jī)制,而不是本土的升級(jí)系統(tǒng)。接下來(lái),您可以將 OTA 升級(jí)服務(wù)器配置為您選擇的服務(wù)器。這將使您能夠控制更新過(guò)程,并控制客戶何時(shí)可以使用錯(cuò)誤修復(fù)。它還為安卓消費(fèi)類(lèi)設(shè)備提供了一致的用戶體驗(yàn)。

移植安卓 11 時(shí)需要考慮的事項(xiàng)

Android 11 包含與分區(qū)布局相關(guān)的各種更改,這些更改可以支持動(dòng)態(tài)分區(qū) - Android 用戶空間分區(qū)系統(tǒng),可在無(wú)線 (OTA) 更新期間創(chuàng)建、調(diào)整大小或銷(xiāo)毀分區(qū)。這些動(dòng)態(tài)分區(qū)消除了供應(yīng)商管理單個(gè)大小的分區(qū)(如系統(tǒng)、供應(yīng)商和產(chǎn)品)的痛苦。相反,設(shè)備會(huì)分配一個(gè)超級(jí)分區(qū),以及可以在其中動(dòng)態(tài)調(diào)整大小的子分區(qū)。

當(dāng)所有特定于供應(yīng)商的信息都從引導(dǎo)分區(qū)中分離出來(lái)并重新定位到供應(yīng)商引導(dǎo)分區(qū)中時(shí),它可以使用 GKI(通用內(nèi)核映像)輕松引導(dǎo)任意設(shè)備?,F(xiàn)在,供應(yīng)商啟動(dòng)分區(qū)包含以前包含在啟動(dòng)分區(qū)中的信息(例如閃存頁(yè)大小、內(nèi)核、虛擬硬盤(pán)加載地址、DTB 本身)。要在移植 Android 11 時(shí)成功完成引導(dǎo),引導(dǎo)加載程序必須能夠同時(shí)訪問(wèn)引導(dǎo)分區(qū)和供應(yīng)商引導(dǎo)分區(qū)以獲取足夠的數(shù)據(jù)。

在非 A/B 設(shè)備的恢復(fù)映像上,恢復(fù)映像應(yīng)包含來(lái)自設(shè)備樹(shù) blob (DTB) 或高級(jí)配置和電源接口ACPI) 覆蓋映像的信息。當(dāng)此類(lèi)設(shè)備啟動(dòng)到恢復(fù)時(shí),引導(dǎo)加載程序可以加載與恢復(fù)映像兼容的覆蓋映像。支持 A/B(無(wú)縫)更新的設(shè)備應(yīng)使用恢復(fù)作為啟動(dòng)而不是單獨(dú)的恢復(fù)分區(qū),并且通用內(nèi)核映像 (GKI) 必須使用主啟動(dòng)標(biāo)頭版本 3 才能與供應(yīng)商啟動(dòng)分區(qū)兼容。

遵循上述嵌入式工程實(shí)踐,您可以確保在嵌入式平臺(tái)上高效、成功地移植Android,增強(qiáng)現(xiàn)有連接設(shè)備的功能,或者從頭開(kāi)始設(shè)計(jì)新系統(tǒng),而不會(huì)有太多的麻煩。

審核編輯:郭婷

聲明:本文內(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)投訴
  • 智能手機(jī)
    +關(guān)注

    關(guān)注

    66

    文章

    18672

    瀏覽量

    185582
  • 嵌入式
    +關(guān)注

    關(guān)注

    5187

    文章

    20169

    瀏覽量

    329133
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    7332

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    什么是嵌入式操作系統(tǒng)?

    要理解嵌入式操作系統(tǒng)(Embedded Operating System,簡(jiǎn)稱(chēng) RTOS/EOS),我們可以從本質(zhì)定義→核心區(qū)別→實(shí)際作用→典型特征→嵌入式開(kāi)發(fā)場(chǎng)景適配,五個(gè)維度來(lái)拆解, 一
    發(fā)表于 12-09 10:33

    嵌入式實(shí)時(shí)操作系統(tǒng)的特點(diǎn)

    實(shí)時(shí)嵌入式操作系統(tǒng)(Real-Time Embedded Operating System)是專(zhuān)門(mén)設(shè)計(jì)用于嵌入式系統(tǒng)的實(shí)時(shí)操作系統(tǒng)。
    發(fā)表于 11-13 06:30

    如何采用SAFERTOS和ESM保護(hù)嵌入式系統(tǒng)安全

    信任根的重要組成部分是實(shí)時(shí)操作系統(tǒng)(RTOS),它為應(yīng)用程序的運(yùn)行提供了一個(gè)安全的平臺(tái)。嵌入式系統(tǒng)的具體安全要求取決于其架構(gòu)以及所面臨的威脅。在本博客中,我們
    的頭像 發(fā)表于 10-24 15:51 ?1186次閱讀

    【好書(shū)推薦】RT-Thread第22本相關(guān)書(shū)籍!《嵌入式實(shí)時(shí)操作系統(tǒng)開(kāi)發(fā)實(shí)踐》| 技術(shù)集結(jié)

    教學(xué)的首選平臺(tái)。本次推薦的第22本RT-Thread相關(guān)書(shū)籍——《嵌入式實(shí)時(shí)操作系統(tǒng)開(kāi)發(fā)實(shí)踐(基于英飛凌PSoC62和RT-Thread)》正是一本
    的頭像 發(fā)表于 10-16 18:46 ?388次閱讀
    【好書(shū)推薦】RT-Thread第22本相關(guān)書(shū)籍!《<b class='flag-5'>嵌入式</b>實(shí)時(shí)<b class='flag-5'>操作系統(tǒng)</b>開(kāi)發(fā)<b class='flag-5'>實(shí)踐</b>》| 技術(shù)集結(jié)

    嵌入式從入門(mén)進(jìn)階,怎么學(xué)?

    (kmallocvs vmalloc)、 中斷線程化項(xiàng)目實(shí)戰(zhàn):移植 MQTT 嵌入式設(shè)備(物聯(lián)網(wǎng)數(shù)據(jù)上報(bào))、用 QT 開(kāi)發(fā)工業(yè)設(shè)備監(jiān)控界面(Modbus 協(xié)議)。
    發(fā)表于 09-02 09:44

    入行嵌入式應(yīng)該怎么準(zhǔn)備?

    知識(shí): 一、C/C++編程C/C++是嵌入式系統(tǒng)開(kāi)發(fā)中最常用的編程語(yǔ)言。熟練掌握C/C++語(yǔ)言將使你能夠理解和編寫(xiě)底層驅(qū)動(dòng)程序、操作系統(tǒng)以及與硬件交互的代碼。對(duì)于嵌入式
    發(fā)表于 08-06 10:34

    Linux嵌入式和單片機(jī)嵌入式的區(qū)別?

    Linux嵌入式與單片機(jī)嵌入式在多個(gè)方面存在顯著的區(qū)別,以下是詳細(xì)的比較和歸納: 一、基本概念 1. Linux嵌入式: 定義:Linux
    發(fā)表于 06-20 09:46

    嵌入式開(kāi)發(fā)入門(mén)指南:從零開(kāi)始學(xué)習(xí)嵌入式

    特定功能的計(jì)算機(jī)系統(tǒng),廣泛應(yīng)用于智能家居、工業(yè)控制、醫(yī)療設(shè)備、車(chē)載系統(tǒng)等領(lǐng)域。 2. 學(xué)習(xí)嵌入式開(kāi)發(fā)的前置知識(shí)熟悉C語(yǔ)言編程掌握基本的數(shù)據(jù)結(jié)構(gòu)與算法了解數(shù)字電路與微控制器原理熟悉Linux操作
    發(fā)表于 05-15 09:29

    RT-Thread嵌入式操作系統(tǒng)專(zhuān)業(yè)培訓(xùn)班-深圳站重磅開(kāi)啟!

    RT-Thread官方將在深圳舉辦為期三天的嵌入式操作系統(tǒng)專(zhuān)業(yè)培訓(xùn)班!本次培訓(xùn)深入講解RT-Thread嵌入式實(shí)時(shí)操作系統(tǒng)的核心技術(shù)與實(shí)戰(zhàn)
    的頭像 發(fā)表于 04-11 18:18 ?661次閱讀
    RT-Thread<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系統(tǒng)</b>專(zhuān)業(yè)培訓(xùn)班-深圳站重磅開(kāi)啟!

    RT-Thread嵌入式操作系統(tǒng)專(zhuān)業(yè)培訓(xùn)班來(lái)上海啦!

    RT-Thread官方將在上海(RT-Thread大本營(yíng))發(fā)起為期三天的嵌入式操作系統(tǒng)專(zhuān)業(yè)培訓(xùn)班!本次培訓(xùn)將會(huì)深入講解RT-Thread嵌入式實(shí)時(shí)操作系統(tǒng)的核心概念、實(shí)戰(zhàn)技巧和應(yīng)用場(chǎng)景
    的頭像 發(fā)表于 02-27 17:27 ?835次閱讀
    RT-Thread<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系統(tǒng)</b>專(zhuān)業(yè)培訓(xùn)班來(lái)上海啦!

    如何成為嵌入式開(kāi)發(fā)工程師?

    如何成為嵌入式開(kāi)發(fā)工程師? 成為嵌入式開(kāi)發(fā)工程師通常需要掌握一系列技能和知識(shí),并且在實(shí)踐中不斷積累經(jīng)驗(yàn)。以下是一些基本步驟和建議: 1. 基礎(chǔ)教育:- 獲取電子工程、計(jì)算機(jī)科學(xué)或相關(guān)領(lǐng)域的學(xué)位
    發(fā)表于 02-19 10:39

    RT-Thread嵌入式操作系統(tǒng)專(zhuān)業(yè)培訓(xùn)班登陸鄭州!

    RT-Thread官方將在河南-鄭州發(fā)起為期三天的嵌入式操作系統(tǒng)專(zhuān)業(yè)培訓(xùn)班!本次培訓(xùn)深入講解RT-Thread嵌入式實(shí)時(shí)操作系統(tǒng)的核心概念
    的頭像 發(fā)表于 02-12 18:28 ?726次閱讀
    RT-Thread<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系統(tǒng)</b>專(zhuān)業(yè)培訓(xùn)班登陸鄭州!

    如何提高嵌入式代碼質(zhì)量?

    并提升代碼質(zhì)量。 遵循良好的軟件工程實(shí)踐 良好的軟件工程實(shí)踐是提高代碼質(zhì)量的基礎(chǔ),特別是在嵌入式系統(tǒng)中更為重要。以下是幾個(gè)關(guān)鍵點(diǎn): 1. 模塊化設(shè)計(jì):
    發(fā)表于 01-15 10:48

    2025嵌入式操作系統(tǒng)專(zhuān)業(yè)培訓(xùn)班正式啟動(dòng)!

    RT-Thread官方將在河南-鄭州發(fā)起為期三天的嵌入式操作系統(tǒng)專(zhuān)業(yè)培訓(xùn)班!本次培訓(xùn)將會(huì)深入講解RT-Thread嵌入式實(shí)時(shí)操作系統(tǒng)的核心概念、實(shí)戰(zhàn)技巧和應(yīng)用場(chǎng)景!無(wú)論企業(yè)團(tuán)隊(duì)/工程師
    的頭像 發(fā)表于 01-09 18:46 ?1384次閱讀
    2025<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系統(tǒng)</b>專(zhuān)業(yè)培訓(xùn)班正式啟動(dòng)!

    ARM嵌入式實(shí)時(shí)操作系統(tǒng)比較

    嵌入式系統(tǒng)領(lǐng)域,實(shí)時(shí)操作系統(tǒng)(RTOS)是確保任務(wù)按時(shí)完成的關(guān)鍵技術(shù)。ARM架構(gòu)因其低功耗、高性能的特點(diǎn),在嵌入式系統(tǒng)中得到了廣泛應(yīng)用。本
    的頭像 發(fā)表于 12-28 09:15 ?2471次閱讀