arm指令集其实是利用了长尾理论从x86嘴里拿下了mobile的市场,就像是x86对ibm做的事情一样,从而应用到了手机上,成为了智能处理器。
Application Processors (应用处理器,下图橙色框部分)–面向移动计算,智能手机,服务器等市场的的高端处理器。
ARM 体系结构是构建每个 ARM 处理器的基础。ARM 体系结构随着时间的推移不断发展,其中包含的体系结构功能可满足不断增长的新功能、高性能需求以及新兴市场的需要。
ARM体系结构支持跨跃多个性能点的实现,并已在许多细分市场中成为主导的体系结构。
ARM体系结构支持非常广泛的性能点,因而可以利用最新的微体系结构技术获得极小的ARM处理器实现和极有效的高级设计实现。实现规模、性能和低功耗是ARM体系结构的关键特性。
举个例子:
ARM一开始是一家盖房子的公司,后面这家公司盖房子业绩平平,于是就转变策略不盖房子了,转而开始卖盖房子所需要的设计图纸方案,同时还和买方案盖房子的客户一起盖房子。在这里,房子就是所谓的芯片,图纸方案就是指芯片的算法,架构等等的知识产权。
ARM向他的客户提供授权,软件包等,通过授权费和版税赚钱,然后因为这种模式,又因为很多公司也需要芯片处理器,于是ARM就与很多公司产生了合作关系,比如德州仪器,苹果,诺基亚等等。
设置登录用户和用户密码,在/etc/inittab文件中,内容如下:#first:run the system script file
::sysinit:/etc/initd/rcS
#::askfirst:-/bin/sh
::sysinit:-/bin/login
::ctrlaltdel:-/sbin/reboot
#umount all filesystem
::shutdown:/bin/umount -a -r
#restart init process
::restart:/sbin/init
加上注释,第四项是设置登录界面的,利用的是busybox中的login程序。我将第三项注释掉,添加了一个第四项。在/etc/目录下创建一个passwd文件和shadow文件,passwd文件中内容为
root:x:0:0:root:/:/bin/sh
第一段表示登录用户名,第二段如果是x表示密码在shadow中,为密文,不可见。第三段表示当前用户的UID等级,一般root超级用户的UID为0,表示等级最高,最好将其他用户的UID等级设置为0第四段暂不说,详细忘了,可以网上搜索,第五段表示登录名的全名,不是很重要,可以表示该用户的地址等。第六段表示默认登录后所在目录,第七段表示登录后执行的脚本。arm Linux中是/bin/sh而不是/bin/bash。
shadow文件中内容为:
root:Wdfdfqwe:17226:::::
第一段表示登录的用户名
第二段表示密文密码。说到ARM指令集,毫无疑问,该指令集霸占了移动市场的全部份额,目前甚至盯上了X86的市场,包括电脑领域甚至是服务器领域,ARM的优势是低功耗性能,而且成本很低,这是X86无法做到的。
目前苹果已经着手开始了ARM芯片对于英特尔X86处理器的替代,但不同于其他ARM芯片,苹果的A系列处理器虽然也是ARM芯片,但是和ARM的关系很小,自研程度很高,不像安卓手机芯片商需要从ARM那里买核心架构授权,所以苹果根本不怕ARM断供。
安卓芯片商的主要几家,高通,华为,联发科,都是采用的ARM公版架构,就连一直采用自研猫鼬核心的三星也决定要放弃自研,用上公版架构,实际上高通之前也有自研核心,但最后发现还是公版最香,其实现在安卓芯片在CPU部分差别都已不大,主要还是GPU和基带方面。
为什么苹果可以不用买ARM的架构核心,而其他芯片商每年都需要从ARM那里购买最新版的架构,比如目前在使用的A77,那么到了明年就是A78了,首先肯定不是因为没有自研的实力,比如三星就是自研,而且跑分还特别高,但跑分没输过,体验没赢过。
其实根本还是生态问题,生态可以认为就是一个统一的标准,华为,高通,联发科,三星,等等其他芯片商都是安卓系统,安卓系统虽然开放的,但却是受限于谷歌的,为了生态的统一性,为了减少开发人员或者各类工程人员的任务量,那么就需要遵循安卓系统的规则。
如果都去搞自研核心的芯片,那么这样一来谷歌安卓就需要做大量的适配工作,针对不同的芯片进行各种优化,而且不光安卓系统,APP应用开发商也是如此,也必须进行各类适配工作,否则很有可能出现BUG,或者是应用兼容问题。
如此一来安卓的碎片化问题会更严重,系统也会越来越臃肿,这显然不利于后续发展,所以安卓系统直接找ARM合作,最新版本的安卓系统适配最新版本的ARM架构,这样一来安卓的适配工作大大降低,只需要针对ARM的官方架构做适配,其他芯片商也只需要用ARM的公版架构,既保证了安卓多元化的特性,同时省了很多不必要的麻烦。
所以苹果就非常好理解了,苹果自始至终是软硬件一体,拥有更多自主权,而且苹果的A系列处理器每年就一款,手机机型数量也很少,在自己的圈子里,自己想怎么优化怎么优化,而安卓芯片商必须看谷歌的态度,因此苹果的ARM处理器才可以不用受限于ARM,自成一派,包括Mac OS从X86迁移到ARM也会非常容易。
目前华为虽然购买了ARM V8指令集的永久授权,但是只要华为还在用安卓系统那么就必须要用ARM的最新的公版架构,否则就会出现很多各种各样的问题,理论上安卓是很开放的,但想要最好的体验,那么ARM公版架构是最好选择,想要不依赖于ARM的公版架构很简单,有了自己的 *** 作系统就可以了。
有了自己的 *** 作系统,并且形成完美的生态,这样一来也就可以反哺硬件,那么此时甚至可以不用依赖于ARM指令集都可以,甚至可以给别的指令集进行优化适配工作,而华为的鸿蒙其实就是这样的布局,当然肯定也有其他公司也在布局,不过对于国内来说,如果想建立这样的生态, *** 作系统只要一个就可以了,指令集也选定一个进行发展就可以了。
同样国内如果形成这样的生态也是非常有利的,毕竟我们国家有着13亿的人口,打造出一个软件生态,同时再指定一个硬件指令集,形成类似于Windows和X86这样的软硬件结盟,那么很多问题都可以迎刃而解,而这个过程的首要就是打造出有生态优势的 *** 作系统,而未来的物联网就是一个难得的机会。
内容来源于网络!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)