当前位置:趣投网 > 科技资讯 > 正文

android手机驱动 Android手机驱动更新为啥那么难?

导语:“为什么Google在发布Android时没有集成一些常用驱动?为什么手机硬件厂商不能像PC厂商那样直接向用户提供设备驱动?”相信很多网友都听说过Android的碎片化,这个问题确实是更好的解决Android碎片化的最佳方案之一。这个解决方案之所以没有成功实现,是因为Windows和Android差别很大。让

“为什么Google在发布Android时没有集成一些常用驱动?为什么手机硬件厂商不能像PC厂商那样直接向用户提供设备驱动?”

相信很多网友都听说过Android的碎片化,这个问题确实是更好的解决Android碎片化的最佳方案之一。这个解决方案之所以没有成功实现,是因为Windows和Android差别很大。让边肖简单地告诉你区别。

首先windows平台的硬件和Android的硬件相比简直太少了。

对于x86/64架构的通用性,Windows/Linux是完全标准化的,这其实是历史原因。很久很久以前,当IBM还在传说中的宇宙中的时候,为了干掉竞争对手MAC,它使用了自己的终极技能“PC规则标准化”,然后带领一群小弟Intel和Windows一起开拓新世界。

然后统一指令集,不管怎么改都是两个,很多硬件接口,管脚,协议等等也都做了相应的标准化。那么CPU,内存,南北桥下的PCIE等等就完全统一了。这就导致了原始设备制造商所做的各种事情随意改变和发挥。这样做的好处是Windows面对的不同CPU架构很少,这使得Windows很容易将这些驱动集成到这些硬件中。现在想让Windows开源,场面简直酸。

安卓不一样。Android需要面对不同的CPU架构。虽然Google从一开始就学习IBM开放一些软件,但是很多硬件在不同厂商的手机上随便玩,带来了各家的维护。比如Android有三种类型,ARM/MIPS/x86,不考虑指令集。如果把不同设备类型之间最基本的驱动全部写入内核,如果一个架构需要120MB,那么三个架构就是360MB。此外,凌乱的应用程序可能会导致画笔包超过1GB,这就是Android无法集成驱动程序的原因。

为什么手机硬件厂商不直接给用户提供设备驱动?

原因是Android是一个运行在Linux上的操作系统。简单看一下Android系统,Android的层次结构可以分为底层的Linux,中间的叫做Dalvik的Java虚拟机,顶层的Android运行时库。Linux使用一个宏内核,内核和驱动是在一起的。如果要添加驱动,基本上需要重新编译内核。

免责申明:以上内容属作者个人观点,版权归原作者所有,不代表趣投网立场!登载此文只为提供信息参考,并不用于任何商业目的。如有侵权或内容不符,请联系我们处理,谢谢合作!
当前文章地址:https://www.qthbsb.com/keji/643463.html 感谢你把文章分享给有需要的朋友!
上一篇:ios升级 iOS 15支持升级机型名单曝光:首代iPhone SE、6S等都被放弃 下一篇: 超实惠 腾讯、阿里为何推出超实惠SIM卡 终于懂了