安卓内核怎么学习,安卓内核修改教程在哪

首页 > 实用技巧 > 作者:YD1662023-12-30 10:49:54

矗立的高楼大厦,依赖于牢固的基底才能屹立不倒。如果说智能手机上的操作系统也有基底,那一定是位于底层的内核。小到每一次指纹解锁,大到畅玩手游大作,内核就像一位称职的经理默默地在底层工作,协调软件和各式硬件。

安卓内核怎么学习,安卓内核修改教程在哪(1)

Android 系统的构成

内核是至关重要的系统组件,对于 Android 来说,更换内核却是一件不怎么稀罕的事——得益于 Android 生态的开放性,我们甚至可以像刷写第三方 Recovery 和定制 ROM 那样随意更换第三方内核,从底层着手为设备带来完全不同的使用体验。

那具体而言 Android 系统的第三方内核究竟能为我们的手机带来哪些改变,在支持的设备上我们又该如何选择和刷入一款第三方内核呢?

如何读懂第三方内核

以新鲜出炉的 arter97 kernel 为例,Arter97 作为一名负责的开发者,将能够解释的技术细节都罗列在了 Detail(细节)一栏里(这样做的开发者并不多)。

我们不妨就以这个面向一加手机 7/7 Pro 的内核为例进行讲解,了解第三方内核到底做了什么改动,进而更好地评估使用第三方内核带来的收益与风险。

安卓内核怎么学习,安卓内核修改教程在哪(2)

arter97 所附带的所有内核特性

1、「重制内核,只保留必要的来自一加的官方源码」

这款内核并不基于一加的原厂内核制作,而是在高通提供的内核代码基础上移植原厂内核中的必要部分,比如一些特定的设备驱动。这会减少内核中用于调试的代码,使得内核更加轻量;同时也去掉了原厂内核中大量依赖 ZRAM 的内存利用机制(开发者阅读代码后不太认可)。

如果你不知道什么是 ZRAM,不妨查看我们的 这篇文章 了解 Android 系统中的相关参数。

2、「整合开源代码论坛(CAF)中来自高通的 4.14 内核版本源码」

Code Aurora Forum(CAF)是 Linux 基金会旗下的开源代码论坛,高通将会在这里发布基于 Android 通用内核的针对自己 SoC(也就是常见的高通骁龙系列)修改的源码,一般来说会提供更好的优化,厂家制作内核时也往往会从中整合代码。而这款内核正是从 CAF 源码中整合来自高通提交的最新、最好的代码,即 You'll be getting the latest and greatest Qualcomm has to offer with this kernel.

安卓内核怎么学习,安卓内核修改教程在哪(3)

CAF 的首页,标注了三类人群:制造商、开发者、Makers

3、「更改配置:CONFIG_HZ = 300」

CONFIG_HZ 是 Linux 内核中的一个重要参数,决定了 CPU 主频的切换间隔,数值固定为 100、300 不等,越大则切换间隔越短。这个数值改为 300 可以将间隔从 10ms 降低为 3.33ms,是 Pixel 一直以来都沿用的数值,也是 Google 建议开发商们采用的数值,可以使得手机更为顺滑(当然也会稍稍消耗更多电量)。

开发者认为,这个改动的意义甚至比屏幕的物理刷新率(90hz)更加重要。

4、「优化部分配置以节省电量」

对于玩机用户来说,常常会在查看内核信息时看到 Gold cluster / Silver cluster 这样的字眼,可以将这个「金银簇」理解为 SoC 的大小核心集。查看下图来自 Anandtech 的表格我们也能够发现这样的称呼,对于使用三丛集的 855 来说,就会拥有两个 Gold cluster。

安卓内核怎么学习,安卓内核修改教程在哪(4)

首页 1234下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.