91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

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

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

3天內不再提示

基于Android的最小Linux映像:MicroDroid

ss ? 來源:CSDN ? 作者:Carol ? 2021-02-03 15:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

【CSDN 編者按】MicroDroid 本質上還是一個 Android 系統,換句話說,甚至不能將 MicroDroid 作為一個單獨的系統來使用,谷歌如今為現有的Android 系統開發基于虛擬機技術的安全功能,MicroDroid 是為此而生的。

近日有消息稱,谷歌正在研發一個新版本的 Android 系統,名為 MicroDroid 。這個新版本的 Android 首次官方露面是在谷歌提交的開發說明上,谷歌將其稱為“基于 Android 的最小 Linux 映像”。

據 MicroDroid 的描述說明顯示,MicroDroid 將在虛擬機中使用,并且被稱為“通用的 Android 系統鏡像(GSI)的精簡版”,GSI 已經是開源 Android 的一個鏡像,而 MicroDroid 則是一個比通用的 Android 系統更精簡的版本。

MicroDroid 有什么用?

剛才說到,GSI 已經是一個開源的 Android 的基礎版本,但 MicroDroid 相對更精簡。根據 XDA Developers 的分析,谷歌的目標或許是在 Android 旁側運行的虛擬機,如 DRM 相關的應用。MicroDroid 內部擁有少量組件,如 init 和 binder 服務,以便與底層 Android 主機進通信

通過 MicroDroid,我們可以設想在 Android 的同時運行一個小型的虛擬機,MicroDroid 是任意設備可運行的,方便開發者虛擬化一個單獨的 Android 應用程序,而不是提供一個完整的輔助桌面環境。這使得在云端運行安全應用、在操作系統迭代之間切換安全配件文件的能力變得更簡單。

同時,也可以與市場上較新的芯片(如驍龍 888)中的虛擬化功能相結合。而高通方面則表示,允許隔離應用程序和同一設備上的操作系統之間的數據,也可以在隔離的操作系統之間即時更改,并且適應性很好。

圖片來源:高通

圖為驍龍 888 上的上的新型 Type-1 虛擬機管理程序,Hypervisor 在隔離的操作系統之間進行即時切換

另外,據 LWN 的 Jake Edge 介紹,為了提高安全性,谷歌正在致力于將名為“KVM”的 Linux 內核虛擬化機制引入 ARM64 soc 驅動的 Android 設備。

據稱,引入 KVM 支持可以“取消”運行在 Armv8 的高度特權異常級別之一的第三方代碼的特權。例如用于 DRM 、密碼學和其他二進制文件的第三方代碼,可以在 Android 操作系統相同級別的 VM 中運行。

圖片來源:ARM

為了管理這些虛擬機,谷歌正在適配 Chrome OS VMM ( crosvm ),這是用于在 Chrome OS 上運行 Linux 應用程序。同時也準備在一個名為“虛擬化”的 APEX 新包中將 Cromsvm 包含進去一同發布、并為 Android 的 Linux 內核分支帶來 ARM64 上的“受保護的 KVM ”項目。

Android 解決內核碎片化問題迫在眉睫

MicroDroid 的誕生或許要追溯到更早之前。目前,整個 Android 系統的最新開發是通用內核映像( GKI ),其目的是減少 Android 內核的碎片化。

GKI 架構

在傳統上,每個手機都有自己的內核版本,但卻是無法擴展的,這一特性導致了碎片化。若是每次更新都要同時更新多個內核版本(不同設備)的話,就會存在困難程度上升和費用增加的問題,進而導致某些系統很難更新或無法更新。如果說某些設備的內核太老了,沒有最新版本所需要的功能,還會導致這些設備無法更新 Android 版本——在早期乃至近幾年的 Android 設備市場中,這種情況的確是常見的。

這種分裂的現狀還帶來了另一個問題:對上游內核的不利。相對來說,這個問題目前沒有得到足夠的關注。主線內核背后的思想是擁有正確的子系統和抽象,以便支持各式各樣的硬件,但這是不可能做到的。因為這些代碼都存儲在不同的內核中,就像你走進一片巨大的森林,目之所及的僅僅是你視線范圍的樹木,不可能看清楚森林里的每一棵樹上的每一片葉子,同理,除非開發人員能夠看到所有不同硬件下所有不同的問題和解決方案,否則對于內核開發人員來說,是無法想出一個適用于所有人的抽象。

Android 內核層次結構導致碎片化

GKI 用于解決 Android 內核碎片化問題,而 MicroDroid 則是谷歌在 Android 硬件上支持虛擬化道路上的重要一步。

Android 虛擬化管理混亂

如今 Android 上的管理程序情況還是很混亂的。如果你認為內核的碎片化問題已經“很糟糕了”,那現實的情況可能是已經“非常非常糟糕了”。

就目前而言,所有的 Android 設備都在運行的某些版本的 Linux ,但就管理程序而言,簡直分裂得就像狂野的西部世界。有些設備根本沒有管理程序,這算情況好的了,但對于有管理程序的設備而言,他們的管理程序需要用于管理不同的事情。

3.1 安全增強

目的是保護內核,但是其本身也存在問題,因為緩解措施很多時候也是攻擊的入口。并且重點在于,虛擬機監控程序使用更高的特權運行,所以其中的錯誤可能意味著這些假定的保護程序并不能真正地保護系統。

3.2 粗粒度內存分區

這個在 Android 中的粗粒度內存分區看起來有點像 IOMMU ,但實際上不是。它在引導時用于將物理內存劃分為多個區域,這些區域可以交給各種設備進行 DMA 或者其他用途。但在引導時間之后,Hypervisor(虛擬機監視器)還有很多工作要做,所以這類型的使用顯得有些浪費。

3.3 在Android以外運行代碼

Armv8 有多個特權級別,稱為異常級別,從特權級別最高的固件( EL3 )到管理程序( EL2 )和操作系統( EL1 ),再到特權級別最低的用戶( EL0 )。Hypervisor 異常級別不是 EL3 級別,因此設備制造商在更新那里的代碼時不必擔心設備的砌墻問題,同時它也不是 EL1 級別,運行在那里的代碼不需要與任何其他東西集成。而這意味著,EL2 成為了某種“游樂場”,似乎不適合其他地方的代碼會被卡在那里,因為 EL2 擁有的特權可能比需要的多得多,這是很糟糕的現象。

特權和例外級別

在大多數情況下,甚至沒有任何虛擬機,所以這些管理程序不會提供常見的服務。這種情況導致可信計算基礎( TCB )增加了,安全性和功能性因此而損失,安全性受到了阻礙。而且因為該級別的碎片化,更新設備變得更加困難。此外,由于無法從 Android 內部訪問硬件虛擬化特性,功能也相應變得很缺乏。

實際上,受信任級別比不安全級別擁有更多特權,因此,受信任的操作系統可以映射不受信任的管理程序內存,且可以提供訪問,這樣一來受信任的應用程序也可以訪問它。這在 Android 生態中是有問題的,其中一部分原因來自于運行在可信端的 DRM 的第三方代碼、各種不透明的二進制 blob 、加密代碼等等,這些代碼可能并不值得信任,而且它們也會受到碎片化問題的困擾。

內核的 Arm64 體系結構的維護者之一、同時也是 KVM 引入 Android 系統的負責人威爾·迪肯( Will Deacon )認為,“可信”一次在很大程度上是一個營銷術語,目的是讓人們覺得運行在那里的代碼是安全可靠的。但“信任”還有另一種定義,即“期待、希望或假設”,這同樣適用于當下。Android 系統必須希望在受信任端運行的軟件沒有惡意的,否則一旦惡意軟件運行在可信任端,Android 就束手無策了。

所以,Android 如今希望有一種方式來取消這個第三方代碼的特權,需要一個可移植的環境,能夠以一種與 Android 系統隔離的方式來承載這些服務,還能將這些第三方項目彼此隔離。基于這些愿景,KVM 和 MicroDroid 就應運而生了,MicroDroid 在 KVM 的基礎上能保證更安全、更快捷、更開放的方式去進行隔離、迭代和運行。

另外,也有業內人士猜測,MicroDroid 也可能和谷歌努力將 Crosvm 背后的想法擴展到 Android 應用程序有關。不過在官宣之前,我們也只能對現有的信息作出一些猜測,MicroDroid 背后真正的意圖是什么,或許也要等待進一步的消息。

責任編輯:xj

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

    關注

    12

    文章

    3972

    瀏覽量

    130173
  • 內核
    +關注

    關注

    3

    文章

    1416

    瀏覽量

    41396
  • 操作系統
    +關注

    關注

    37

    文章

    7140

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Android 16更新亮點介紹

    Android 近期在整個平臺上推出了一系列更新,包括:發布 Android 16 并為開發者和用戶提供詳細信息,推出改進外接顯示設備上 Android 桌面體驗的開發者預覽版,為 Google
    的頭像 發表于 07-05 11:37 ?608次閱讀

    ArkUI-X與Android聯動編譯開發指南

    本文主要介紹通過CLI工具鏈執行ace create project命令創建工程,生成聯動編譯腳本。使用Android Studio編譯Android應用時,可聯動編譯ArkTS源碼,并自動拷貝
    發表于 06-16 22:55

    想從linux系統讀回CYC65215部件的配置程序映像,并檢查其CRC是否正確(假設它有附加 CRC),圖像有CRC嗎?

    我想從 linux 系統讀回 CYC65215 部件的配置程序映像,并檢查其 CRC 是否正確(假設它有附加 CRC)。圖像有 CRC 嗎? CRC 是否使用標準多項式的已知算法生成? 如果是,是哪條多項式?
    發表于 05-23 06:22

    為什么無法在USB控制中心選擇固件映像文件?

    我在開發 CYUSB3KIT-003 固件并將固件映像文件下載到 FX3 時遇到了一個問題。 我通過將 PMODE[2:0] 配置為 F11 來設置 USB 啟動模式,并像往常一樣將新開發的固件下載
    發表于 05-07 06:14

    如何在i.MX 8XDXL EVK的A35上運行Yocto Linux,在M4上運行FreeRTOS?

    我正在使用i.MX 8XDXL 評估套件并希望在 Cortex-A35 上運行 Yocto Linux 映像cores 的Cortex-M4 上的 FreeRTOS 映像核心。 實現這一目標的最佳
    發表于 04-04 06:02

    3種系統加持!飛凌嵌入式RK3576核心板LinuxAndroid、桌面系統全兼容

    飛凌嵌入式FET3576-C核心板正式發布了新系統Forlinx Desktop 24.04。至此,FET3576-C核心板已完成Linux 6.1、Android 14、Forlinx Desktop 24.04等多種操作系統的適配,充分展現了其在系統豐富性方面的卓越實
    的頭像 發表于 04-02 16:00 ?575次閱讀
    3種系統加持!飛凌嵌入式RK3576核心板<b class='flag-5'>Linux</b>、<b class='flag-5'>Android</b>、桌面系統全兼容

    請問如何在Linux中使用幀緩沖區更新epdc顯示?

    我正在使用帶有 epdc 顯示子卡 (IMXEBOOKDC5) 的 IMX8ULP EVK。使用 Linux 映像引導后,epdc 顯示無法使用幀緩沖區進行更新。當檢查顯示 pmic 的電源使能引腳
    發表于 04-01 06:41

    如何使用Linux映像在IMX8ULP上啟用自定義logo?

    Hi, 我正在使用IMX8ULP EVK替換為IMXEBOOKD5(帶有 EPDC 接口的 e-ink 顯示)并使用 Linux 映像啟動 EVK。我需要替換默認的燕尾服
    發表于 03-31 06:30

    android手機上emulate應用程序的方法

    Android手機上模擬(emulate)應用程序的方法通常涉及到使用Android模擬器(Emulator)或類似的工具來模擬Android環境,以便在沒有實際物理設備的情況下運行和測試應用程序
    的頭像 發表于 12-05 15:33 ?1195次閱讀

    Android11修改攝像頭前后置方法,觸覺智能RK3568開發板演示

    本文介紹在Android11系統下,修改攝像頭前后置屬性的方法。使用觸覺智能EVB3568鴻蒙開發板演示,搭載瑞芯微RK3568,四核A55處理器,主頻2.0Ghz,1T算力NPU;支持OpenHarmony5.0及LinuxAndr
    的頭像 發表于 11-28 15:25 ?71次閱讀
    <b class='flag-5'>Android</b>11修改攝像頭前后置方法,觸覺智能RK3568開發板演示

    飛凌嵌入式RK3576核心板已適配Android 14系統

    FET3576-C核心板此前已提供了Linux 6.1.57系統,為了滿足更多客戶的需求,飛凌嵌入式近日又為其成功適配了Android 14系統——硬件性能卓越的核心板與Android 14的深度組合,將為用戶帶來更加流暢、開放
    的頭像 發表于 11-14 10:59 ?1343次閱讀
    飛凌嵌入式RK3576核心板已適配<b class='flag-5'>Android</b> 14系統

    如何為單節Impedance Track(TM)器件生成黃金映像

    電子發燒友網站提供《如何為單節Impedance Track(TM)器件生成黃金映像.pdf》資料免費下載
    發表于 10-17 08:32 ?0次下載
    如何為單節Impedance Track(TM)器件生成黃金<b class='flag-5'>映像</b>

    如何在android i2c控制tas5548 ?

    我想在 android i2c控制 tas5548 因為以前沒有做過驅動編程 所以想要一個現成驅動源碼可供學習,哪怕只能實現控制聲音大小. 硬件平臺是rk3288 安卓系統是 android 4.4.2 / linux 內核
    發表于 09-05 07:30

    小白也會的,在linux上跑android應用的方案

    介紹一個可以在linux上跑安卓應用的linux桌面——OpenFDE
    的頭像 發表于 08-23 11:14 ?1222次閱讀
    小白也會的,在<b class='flag-5'>linux</b>上跑<b class='flag-5'>android</b>應用的方案

    請問MODUS支持LINUX、FREERTOS、UCOS、Mbed、Android所有操作系統嗎?

    請問 MODUS 支持 LINUX、FREERTOS、UCOS、Mbed、Android 所有操作系統嗎?
    發表于 07-23 06:06
    主站蜘蛛池模板: 扒开双腿疯狂进出爽爽爽 | 天堂在线www网亚洲 天堂在线观看 | bt天堂网在线资源www | 在线播放色 | 色婷婷影院在线视频免费播放 | 成人黄色激情网 | 日本一区二区免费在线观看 | 国产男女免费视频 | 新版天堂8在线天堂 | 成人美女隐私免费 | 国产美女精品久久久久久久免费 | 国产黄色在线观看 | 人人干人人上 | 欧美456| 黑人又大又粗又长又深受不了 | 成人国产精品一级毛片视频 | 久久久香蕉视频 | 四虎影院观看视频在线观看 | 免费在线看片网站 | 欧美激情 自拍 | 国产乱辈通伦影片在线播放亚洲 | xxxxxhd69日本护士| 32pao强力打造免费高速高清 | 午夜视频免费在线观看 | xxⅹ丰满妇女与善交 | 日韩免费毛片全部不收费 | 黄色小视频日本 | 国产网站在线播放 | 五月天天爱 | 日本三级带日本三级带黄首页 | 最近高清免费观看视频大全 | 亚洲激情五月 | 久久久黄色片 | 综合激情在线 | 亚洲一级毛片免观看 | 天堂网www最新版在线资源 | 国产福利精品视频 | 天天干夜夜看 | 四虎永久免费最新在线 | 在线黄色免费 | 91成人免费福利网站在线 |