为什么操作系统不能屏蔽底层的架构(arm,x86,mips),为应用软件提供一个统一的运行环境呢?
嗯,想了想,也就web 浏览器有点接近这个意思了,不过运行权限就太低了
你所说的屏蔽,就是上层做封装,但是封装以后带来的就是性能问题,比如安卓,如果你的代码全部用java写,那么所有支持安卓的的设备都可以统一的运行,但是性能就无法保证了,所以才有了jni层,需要做不同系统架构的适配
商业原因,不是技术问题
因为手机CPU,单片机CPU性能弱,硬件抽象层(HAL)非常消耗性能(和电量)。 windows和linux 都有HAL,其实安卓也有,所以安卓机要靠硬件优势才能维持和iphone类似的性能
谁说不可以?
虚拟机,就行。
但是,就效率差。
所以,应用与系统一一对应。
为什么有这样的问题?像Linux就是可以运行在不同CPU架构上的操作系统,Windows也支持过ARM,但是因为软件兼容性问题,支持不够。核心问题不是操作系统本身,而是程序本身是否是跨平台的。
如果是编译的软件生成二进制机器码,那么就不能在不同CPU上运行。所以C/C++编译的程序不能跨平台、跨CPU。
而运行虚拟机的Java程序,它生成的不是机器码,而是虚拟机指令,可以在各种平台的虚拟机里运行。由虚拟机来屏蔽底层OS和CPU等的差异。所以,Java在服务器平台得到广泛应用。安卓系统也是基于Java虚拟机技术的一套手机操作系统,屏蔽了底层的手机硬件差别,使得安卓程序可以运行于各种手机CPU上,以前Intel也推出x86的安卓手机。
为什么手机需要用安卓系统而不是直接用Java或者Linux?因为Java和Linux不是专门针对手机操作的,导致手机应用的开发、维护、支持方面的不足,例如界面、动画、图形、操作、通知、wifi、蓝牙、陀螺仪、GPS等等。实际上之前摩托罗拉等开发过一些Linux的手机操作系统,但是应用太少。不少手机上也支持Java虚拟机,我们在上面开始运行一些小游戏。但是它们与提供统一解决方案的安卓系统相比相差太大,动画、界面、操作看起来就像红白机时代一样。
所以,安卓系统可以看成是屏蔽了底层实现的操作系统,当然是基于虚拟机技术和跨平台编译的Linux。
但是虚拟机存在一个运行效率的问题,应用软件先转化成与平台无关的中间指令,然后虚拟机再将中间指令转化成实际指令。谷歌引入了二次编译技术,在安装软件时,进一步编译转化成机器代码,可以提高运行效率。但是,这样也破坏了移植性,因为转换之后的二进制就不能再在其他手机上运行了。华为针对自己的手机和CPU也做了方舟编译器的优化处理,可以提高运行效率。
跨平台技术与运行效率是两个不可调和的矛盾。从Java和.Net技术开始,就一直在研究和发展。安卓系统是一个在手机上得到广泛使用的系统。谷歌正在开发的Fuchsia操作系统,就是要进一步取代"安卓+Linux"的架构,成为真正的单一系统,进一步提高在手机等设备上的运行效率。
操作系统不已经干了这个事情了吗?
说Java的都不对,Java做的是跨操作系统,Windows上能跑,Linux上也能跑,这是更进一步了。题主问的是同一操作系统,不同芯片架构。
屏蔽底层,其实操作系统本来就一直在干这活,并非所有的程序在x86的Windows上能跑,在ARM的Windows上就不能跑。没有调底层API的程序不用修改,就是直接可以在x86和ARM的Windows都可以运行。
你猜这些arm和x86为什么不合作呢,为什么要各搞各的授权呢?要收钱啊[擦汗]买了我x86授权的你就得一直用下去。公司的不可替代性就是要形成自己的行业壁垒,让别人除了你之外没有别的选择
你的想法很好,不是不可能,只是没人去做吧。
最合理的结构是,操作系统对硬件的差异屏蔽,应用生态环境对操作系统的差异屏蔽。
操作系统这块理念相对成熟,应用生态这块差距较大。JAVA为此而生,不够完美。正是这种差距,反而可以是我们突破的机会。
严重亏损!又一个中国手机品牌倒下曾是最受欢迎的拍照手机自移动电话诞生以来,技术一直在不断进步与快速发展,许多黑科技经过厂商和行业的促进后,开始逐渐成熟并下放到寻常用户生活中。当一项技术变得普及,量产便不再是难题,市场的竞争便诞生了。从
华为P30系列拍照黑科技公布DxO评分将破记录今日,在华为终端公众号一篇题为进化,迭代,改写,华为P30系列准备登场预热文章当中,透露了全新的P30系列相机除了长焦表现之外,还将在暗拍人像等影像功能上实现全面革新。值得一提是,
融资丨伊柯夫完成数千万元战略融资,良医汇独家投资创业邦获悉,4月11日,专注于数字化临床试验信息技术的伊柯夫科技宣布完成数千万元的战略融资,本轮由国内最大的专业抗癌学术平台良医汇独家投资。据悉,该轮资金将用于加快公司3Q数字化临
如果蚊子消失了对人类来说是灾难吗?蚊子很讨厌。不仅仅是字面意思,它们的叮咬也很痒和烦人,某些物种会传播寄生虫和病毒比如导致疟疾黄热病和寨卡病毒。每年感染和杀死数十万人。这么可恨的蚊子我们为什么不干脆把它们消灭?让蚊
入手小米11ultra之感从入手智能机到现在大大小小已经经历过十几台了,第一台用的是华为,移动公司充3000话费送机的那种,具体型号不知道了,挺薄的手感还不错,不过卡顿严重后来换成苹果4,因为主板烧了维修太
魔术APP开发软件为魔术爱好者展示更神奇的魔术表演魔术APP开发软件为魔术爱好者展示更神奇的魔术表演。现在的人们经常可以在电视剧中戏剧团中等等的地方看到难以置信的魔术表演。千奇百变的扑克牌魔术,令人眼花缭乱的道具魔术等等的魔术,许
华为2022年04月11日新消息华为华为2022年04月11日新消息美国给世界提醒英国禁用华为是它劝的网友要这么直白么?华为5G新机Mate40EPro5G今日开售售价6499元华为Mate50系列首发消息称鸿蒙
手机快充变慢充?6个方法告诉你如何提升充电速度智能手机用起来非常方便,但是电量耗损也非常快,他别是有事的时候,等着手机把电充满真的是心急如焚。那么有没有什么方法可以让手机快速充电?其实只要做好这几个方面就可以让充电速度快好几倍
浅谈家用打印机的选择目前随着社会发展以及线上教育制度体制的改革,打印机,复印机也不再是文印店体制单位的代名词,也慢慢走进普通家庭走进千家万户。由于打印机不像电脑早就走入人们的视野,大多数人对打印机还是
买手机必看处理器处理器很大程度决定了你手机的使用体验,首先是手机的能耗比方面,能耗比高的处理器,他的发热会相对来讲更低,不用为了应对发热去限制处理器的频率,日常使用体验会更好一些,而且打开软
ReflectProxy的理解为什么会有Reflect的出现Proxy的原理一ReflectES6提供了一个全新的选择APIReflect,Reflect和Proxy是相对的,我们可以用Reflect操作对象。1。1Reflect存在的意义1)将Objec