Google正在努力在Android上使用Linux内核的主版本

Android内核Linux

在Linux Plumbers 201大会期间9(顶级Linux开发人员年度会议), 谷歌谈到了发展 一个主动 将在其中开发的更改转移到主Linux内核 平台的内核版本 Android系统。

最终目标是允许Android使用Linux内核的主要版本,而不必为基于Android特定于Android的Common Core分支的每个设备准备单独的自定义版本。 该目标已经部分实现 并在会议上演示了带有基于通常未修改的Linux内核的固件的Android智能手机“小米Poco F1”。

项目准备好后, 供应商将被要求提供一个核心 基于主要的Linux内核。 将提供硬件支持组件 仅由提供商 以其他内核模块的形式,而无需修补内核。

在模块中,必须在内核符号名称空间级别上确保与主内核的兼容性。 所有影响主核心的变化都将被向上推广。

此外 保持兼容性 在LTS分支机构的框架内拥有专有模块, 旨在维持稳定的核心API和ABI,这将允许维护模块的兼容性以及内核每个公共分支的更新。

全年 PSI子系统等功能 (压力锁定信息)以分析有关各种资源(CPU,内存,输入和输出设备)超时的信息,BinderFS伪文件系统 对于进程间的通信机制, 已从Android内核转移到主Linux内核,以及能源效率任务计划程序EAS(能源意识计划)。

重要的是要知道 到目前为止,Android内核已经经历了几个准备阶段 因为目前在主线Linux内核和出厂的Android设备之间存在三个主要分支。

  • 首先,Google将Linux LTS内核转换为“ Android Common Kernel”,Linux内核在其中接收到特定于所应用Android操作系统的所有补丁。
  • Android Common交付给SoC供应商(通常是Qualcomm),在该供应商那里它获得了第一轮特定于硬件的添加,首先针对特定的SoC模型。
  • 然后,此“ SoC内核”被运送给设备制造商,以获取更多硬件特定的代码,这些代码支持任何其他硬件,例如显示器,摄像头,扬声器,usb端口以及任何其他硬件。

基于主要的LTS核心 (3.18、4.4、4.9和4.14),创建了“ Android Common Kernel”分支,在其中转移了Android特定的补丁程序(以前,更改的大小达到了几百万行,但最近更改减少到了数千行)。代码行)

除了为每个设备形成自己的核这一事实之外,无法在其他设备上使用。

这样的方案显着使更新的交付变得复杂,消除了漏洞,并且过渡到内核的新分支。 例如,十月份发布的最新Pixel 4智能手机带有两年前发布的Linux内核4.14。

部分地, Google尝试通过推广Treble系统来简化维护,这使制造商可以创建通用硬件支持组件,这些组件不与所使用的特定Android版本和Linux内核版本绑定。 Treble可让您使用现成的Google更新作为基础,将特定于设备的组件集成到其中。

尽管还需要做一些工作来将Android生态系统更广泛地整合到内核中,除了需要针对特定​​型号的设备配置进行大量工作之外,但Google表示进展似乎很好。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。