高音器件与A / B设备不相同,反之亦然。为什么? -- ab-partition 领域 和 treble 领域 android 相关 的问题

Treble devices not same as A/B devices and vice-versa. Why?


简体版||繁體版
3
vote

问题

中文

这个xda博客 A / B分区和无缝更新如何影响XDA 的自定义开发有一些Q& a的,其中:

  • 我的设备支持A / B分区,这是否意味着我可以使用项目高音通用系统图像?

不一定。 Project Treble和A / B支持不相关。 摩托罗拉Moto Z2强制不支持项目高音,但它支持A / B分区方案

  • 我的设备支持Project Treble,这是否意味着我有一个/ b分区方案?

这并不总是如此。荣誉9 lite是一个典型的例子,因为它支持项目高音但没有一个/ b分区方案

(重点添加)

我认为高音和A / B器件在具有暗示的意义上是同义词。这不是案例

为什么这是什么?有什么差异?

英文原文

This XDA blog How A/B Partitions and Seamless Updates Affect Custom Development on XDA has some Q&A's, of which :

  • My device supports A/B partitions, does that mean I can make use of a Project Treble Generic System Image?

Not necessarily. Project Treble and A/B support are unrelated. The Motorola Moto Z2 Force doesnxe2x80x99t support Project Treble, yet it supports the A/B partition scheme.

  • My device supports Project Treble, does that mean I have an A/B partition scheme?

This is not always the case. The Honor 9 Lite is a prime example as it supports Project Treble yet does not have an A/B partition scheme.

(Emphasis added)

I thought Treble and A/B devices are synonymous in the sense having one implied other. That's not the case

Why is this? What are the differences?

     

回答列表

9
 
vote
vote
最佳答案
 

这两种技术都没有任何共同点,真的,所以一切都没有关系:

A / B分区技术是以下图像中的水平分离,而项目高音在每个分区内定义垂直分离。

输入图像描述 项目高音图源

A / B分区方案

基本上,"(无缝)系统更新的A / B分区方案" 只不过是两个操作系统并排安装,每个操作系统都在其自己的系统分区中。不寻常的部分(与例如PC上安装的多个iSS相比)是两个OS安装都使用相同的用户数据分区。此外,当安装更新时,活动OS安装将修改应用于另一个非活动操作系统安装,而不是自身。

a / b分区布局没有对分区内安装的操作系统没有任何假设,因此如果操作系统是符合的项目高音,则无关紧要。

Project Treble

Project Tryble适用于每个OS安装的内部结构以及OS中的不同层如何相互通信。因此,如果有一个,两个或许多OS分区,则可以完全无关紧要。 A / B分区方案与但与项目高音分开兼容,反之亦然。

 

Both technologies have nothing in common, really, so everything is unrelated:

The A/B partition technology is the horizontal separation in the following image, whereas Project Treble defines the vertical separations inside each partition.

enter image description here Project Treble diagram source

A/B partition scheme

Basically the A/B partition scheme for "(Seamless) System Updates" is nothing more that two operating systems installed side-by-side, each in its own system partition. The unusual part (compared to e.g. having multiple OSes installed on a PC) is that both OS installations use the same user data partition. Also, when installing updates the active OS installation applies modifications to the other, inactive OS installation, instead of to itself.

The A/B partition layout does not make any assumptions about the OS that is installed inside the partition, hence it does not matter if the OS is Project Treble compliant or not.

Project Treble

Project Treble applies to the internals of each OS installation and how the different layers within the OS communicate with each other. Hence for Project Treble it is totally irrelevant if there are one, two or many OS partitions. The A/B partitioning scheme is compatible with, but separate from, Project Treble, and vice versa.

 
 
4
 
vote

Android设备上的操作系统由两个主要部分组成:

  • 通用Android码(AOSP)和
  • 特定于硬件的代码,由OEM / SoC供应商提供(主要基于AOSP参考实现)。

项目高音是针对供应商代码分离AOSP代码,以便独立编译和更新。 hidl (两个代码层之间的通信层:HALS和AOSP框架之间的通信层)是专门设计的实现目标。所以现在我们必须分开 system vendor / odm 分区。它解决了(或尝试解决)在设备发布后OEM的延迟或从OTA更新的问题。

a / b划分将AOSP +供应商代码放在分区的两个相同的对/插槽上(包括 boot system vendor )。因此,如果OTA更新失败在一个插槽上,则继续工作。此外,OS(活动插槽)正在运行时,它可能会更新非活动插槽,因此不会影响用户的工作流程。这种方法鼓励OEM发送更频繁的更新,没有任何恐惧。作为官方文档状态:

此方法会降低更新后非活动设备的可能性,这意味着修复和保修中心的设备替代品和设备较少。

在设计级别时,两者都彼此独立(除了涉及分区之外)。 高音与OS(大多数用户空间)相关,即AOSP和供应商的运行进程彼此交互方式(包括基于 BINGERS 的IPC)。虽然 a / b分区替换了先前基于 recovery cache 分区的OTA更新现象。因此,它涉及必要的更改即使是引导加载程序也是如此。逻辑:它是如何从不同的 boot / system 分区,特别是在失败的OTA更新之后。一旦加载操作系统,A / B并不多大问题(除了OTA更新发生时)。

所以这两个创新地址地址不同但有点相关的问题,以实现相同的目标:<强大>更多OTA更新。他们也集体地设置了动态分区这让OEM resize vendor0 / vendor1 / vendor2 / vendor3 分区在OTA更新期间,随着AOSP和供应商代码的增长或缩小。

 

Operating System on Android devices consists of two major parts:

  • The generic Android code (AOSP) and
  • The code specific to hardware, provided by OEM/SoC vendor (mostly based on AOSP reference implementations).

Project Treble is targeted to separate AOSP code from vendor code so that each can be compiled and updated independently. HIDL (the communication layer between both code layers: HALs and AOSP framework) was specifically designed to achieve the goal. So now we have necessarily separate system and vendor/odm partitions. It resolved (or tried to resolve) the problem of delayed or no OTA updates from OEMs after device release.

A/B partitioning puts AOSP + vendor code on two identical pairs/slots of partitions (including boot, system and vendor). So that if OTA update fails on one slot, the other one continues to work. Also it makes updating the inactive slot possible while OS (active slot) is running, so doesn't affect user's work flow. This approach encourages OEMs to send more frequent updates, without any fears. As the official documentation states:

This approach reduces the likelihood of an inactive device after an update, which means fewer device replacements and device reflashes at repair and warranty centers.

At design level both are independent of each other (except that both involve partitions). Treble is relevant to OS (mostly userspace) i.e. how running processes from AOSP and vendor interact with each other (includes IPC based on binders). While A/B partitioning replaces the OTA update phenomenon which was previously based on recovery and cache partitions. So it involves necessary changes even to bootloader i.e. the logic: how it boots from different boot/system partitions, particularly after a failed OTA update. Once OS is loaded, A/B isn't of much concern (except when OTA update occurs).

So both innovations address different but somewhat related problems to achieve the same goal: more OTA updates. Also they collectively set the ground for dynamic partitions which let OEMs resize system/vendor/odm/product partitions during OTA updates as the AOSP and vendor code grows or shrinks.

 
 
 
 

相关问题

1  无法重新安装任何内容/系统  ( Cant reinstall nothing to system ) 
我试图自昨天释放的Beta以来将我的小米MI A2更新到Android Pie。起初,我试图安装一个官方提供一个,但在面对一些错误后,我安装了Android Pie像素体验ROM的高音版本。 它是完美的,但在用magisk安装pixelify之后,我的wifi停止工作,我得到了错误mac 02:00:00:00:00...

0  重新启动后,系统修改不会保持  ( System modifications dont stay after reboot ) 
我想进入LG V20的港口,我使所有的东西都需要一个新的分区,并在使用文件管理器时从twrp闪烁闪烁的zip并在检查一切都是正确的,但是当我重新启动手机时到正常类型的供应商而不是修改我确实撤消了所有更改。 有没有办法阻止这种情况发生 ...

6  高音:如何检查我的设备上是否启用了它?  ( Treble how do i check if it is enabled on my device ) 
标题说明它全部 通过背景 Project Treble 已宣布发布Oreo加速通过减少OEM延迟来更新。预计运行Oreo开箱即用的设备将拥有它,所以如何检查我的设备是否具有它,我可以期待更快的更新? ...

1  如果Project Treble旨在分隔平台和供应商分区,为什么构建System.img(平台)时需要内核源代码  ( If project treble aims to separate the platform and vendor partitions why is th ) 
如果项目高音旨在分开平台和供应商分区,因此它们可以单独更新,为什么构建System.img(平台)的内核源代码,而不是供应商提供的内核源代码侧? p.s是用于构建核心系统/框架文件的内核源代码,或者仅用于boot.img / recovery.img? ...

0  TWRP只允许闪烁到引导或恢复分区  ( Twrp only allows flashing into either the boot or recovery partitions ) 
我正在尝试闪存a Pixel体验GSI 使用 twrp 。为此,我需要将GSI的 AbcdeFghijklmnabcdefghijklmn0 闪存到我的设备的系统分区中。但是,我的TWRP只允许我刷新引导或恢复分区。我在其他手机(系统,供应商,预加载等)中看到的其他选项无处可供选择。 ...

0  在非高音和谐中高音启用Project Tream  ( Enabling project treble in non treble android ) 
是否可以在非高音和谐中创建供应商分区和启用Project Treble中的Projine Treble。使用MediaTek处理器的Lenovo K3注意事项 ...

3  高音器件与A / B设备不相同,反之亦然。为什么?  ( Treble devices not same as a b devices and vice versa why ) 
这个xda博客 A / B分区和无缝更新如何影响XDA 的自定义开发有一些Q&amp; a的,其中: 我的设备支持A / B分区,这是否意味着我可以使用项目高音通用系统图像? 不一定。 Project Treble和A / B支持不相关。 摩托罗拉Moto Z2强制不支持项目高音,但它支持A / B分区方案。 ...

0  我的redmi 7a bootloop在每个gsi rom中  ( My redmi 7a bootloop in every gsi rom ) 
我继续这一步 https://forum.xda-developers。 COM / REDMI-7A / how-to / custom-gsi-firmware-t3965820 但我最终在Bootloop中 它继续恢复或陷入redmi logo ...

0  如何在旧设备中启用高音支持?  ( How to enable treble support in old devices ) 
今天,我回来挑战你们所有人。正如您从问题标题中猜到的那样,这篇文章要了解在旧手机上启用高音支持。当然,互联网上有很多指南,我"将" 解释这篇文章如何与它们不同。 首先,我们在这个非常的网站上有一个关于这个的帖子。 链接:启用非高音和谐的项目高音 这里,问题没有得到正确回答,所以这并不有用。 我找到了上面的链接下一个...

1  为什么使用Android的手机现在不要将更新到Q(2019)?  ( Why phones with android one dont get update to q right now 2019 ) 
Android一个手机都靠近股票版Android。 启动android 8(或9) Project Treble 旨在提供新版本的Android,而无需从OEM工作。 然而使用Android一个和Treble的手机就立即获得更新,请参阅例如诺基亚路线图到Android问: 例如,诺基亚2.2,诺基亚3....




© 2022 it.wenda123.org All Rights Reserved. 问答之家 版权所有