level 1
不通刷的原因显然是因为硬件的不同,而不同的硬件需要不同的驱动。驱动在 Android 内核中,通常由硬件商提供,转交 OEM 集成优化。这些驱动并未提交到主流 Linux 内核中,一是因为代码量巨大(想象一下市面上有多少家多少代手机设备硬件);二是因为主流内核接纳周期长(Google 为 Android 开发的代码至今仍在 staging 中)。所以在内核 GPL 协议的约束下,OEM 都选择单独发布适配具体机型的内核源代码。另外,各 OEM 商所采用的 bootloader 都各不相同,加载内核的基址即使出自同一家也不相同。很不幸,基址是在内核中写死的。所以如果刷了不同设备的内核镜像,你有 99% 的把握启动不了你的 Android 设备。(变砖)
2014年11月07日 12点11分
6