导航:首页 > 操作系统 > 为什么安卓系统不用虚拟机制

为什么安卓系统不用虚拟机制

发布时间:2022-05-17 16:58:50

⑴ 安卓为什么要用虚拟机,而不直接在linux系统上运行程序

  1. 因为本来java在不同架构的CPU、不同操作系统上的开发就具有统一的优势。

  2. Java是语言,Linux是平台,语言一定要依靠于某个平台来工作。

  3. 兼容性就是安装了JVM的机器都可以跑Java程序。

  4. Java虚拟机是为每个平台都提供的。也就是说,每一个平台都会编写一个特定的Java虚拟机。

  5. 至于为什么其他软件不能运行在其他操作系统上,这个取决于底层的体系结构和接口 Linux和Windows的文件结构都不一样,而且操作系统的架构相差特别多,而且底层的接口也是相差巨大,特别是在库文件方面。

  6. android系统和Linux发行版的系统根本区别是Android上面只跑了一个Dalvik/ART,而Linux发行版上面跑了很多Dalvik/ART而已。

  7. Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。

⑵ 安卓,为何宁肯使用效率低的虚拟机也不使用效率更高的沙盒

我们都知道。安卓系统和iOS系统是两个完全不同的系统。他们的运行机制也有很大的区别。苹果的iOS系统运行机制为沙盒。而安卓系统的运行机制为虚拟机。而虚拟机的大小一般都要比沙盒系统大很多。

今天小编就说到这里,欢迎大家在评论区给我留言哦。

⑶ 安卓机怎么不用虚拟机直接windows系统

一般无法实现在 Android 设备中直接安装 Windows 系统。
首先是处理器架构的问题,Android 设备大多使用 ARM 处理器,而平常使用的桌面 Windows 系统是基于 x86 架构的,处理器不通用,意味着 Windows 系统根本就无法在 Android 设备上运行。
虽然从 Windows 8 开始,也有了基于 ARM 架构的 Windows 系统,但这是需要硬件认证后才能使用的,不是任何一台手机或平版电脑都可以使用。
另外,由于手机和低端平板电脑的特殊性,系统需要更加精简,不像我们的桌面系统那样可以“安装”,它们一般都是安按照硬件定制的,其中涉及硬件的驱动程序问题,所以手机或平版电脑的系统一般都只能“刷”专用的系统包。
除了主流设备外,也有极少使用 Intel 处理器的 Android-x86 设备,这些设备可以吗?只能说也许可以做到,但暂时还没有可行的办法。近期,Intel 联合蓝魔发布了 Windows+Android 双系统平板电脑,这也是当前“唯一的”即可使用 Windows 又可使用 Android 的设备。

⑷ 解释为什么Android系统运行的java程序不使用标准的java API和虚拟机

主要受到版权、成本和生态这些方面才使用的java程序。

android的内核是linux,用java包装一层会有效率上的损失。但是java的用户基数庞大,在当时拉开了c用户5个点之多。
此外,当时市场上有强大的iphone已经抢先建立了apple store,应用数量超android很多,如果用了java就有可能在程序员数量上超过ios程序员。从而建立自己的生态系统。

⑸ 安卓为什么比ios虚拟机

1.安卓与IOS的区别: 1、两者运行机制不同:IOS采用的是沙盒运行机制,安卓采用的是虚拟机运行机制。 2、两者后台制度不同:IOS中任何第三方程序都不能在后台运行;安卓中任何程序都能在后台运行,直到没有内存...
2.安卓与IOS机制分析: iphone沙盒机制解释 应用程序位于文件系统的严格限制部分,程序不能直接访问其他应用程序。以杀毒软件中...
3.其他方面分析: 软件方面 苹果的软件靠ITUNES赚钱还需要相应的许可所以相对而言质量要...

⑹ 为什么android需要虚拟机,而ios不需要

不是 Android “需要”虚拟机 iOS 不“需要”,而是 Android 的系统机制本来一开始就是基于 Dalvik 虚拟机(现在是 ART)的。因果关系不要弄错。

⑺ 为什么安卓系统运行的JAVA程序不使用标准的JAVAAPI和虚拟机

Java虚拟机与Java语言没有什么必然联系,它只与特定的二进制文件:Class文件有关。
Java虚拟机包括运行时数据区域、执行引擎、本地库接口、本地方法库,其中类加载子系统并不属于Java虚拟机内部结构。
Java虚拟机栈:私有线程,存储着Java方法的调用状态,包括局部变量、参数、返回值及运算的中间结果等。平时说的栈内存就是指Java虚拟机栈。具体内部存储着栈帧里面存放了方法的局部变量表、操作数栈、动态链接方法、返回地址、附加信息等信息,局部变量表中存储着编译期可知的各种基本数据类型(boolean、byte、char、short、int、float、long、double)、对象引用(reference类型,它不等同于对象本身,可能是一个指向对象起始地址的引用指针,也可能是指向一个代表对象的句柄或其他与此对象相关位置)和returnAddress类型(指向了一条字节码指令的地址)

⑻ 安卓系统为什么一定要借助虚拟机来达到不同cpu的通用目的

  1. 借助虚拟机,最大的好处是简化了开发,比如安卓运行在x86之上和arm之上,只要安卓大版本一样,那么app的开发就是完全一样的(除了个别用到具体硬件特性的功能),这对于开发人员非常有利,因为不需要考虑不同硬件带来的差异,高通和华为海思这种同为arm的就更不在话下;

  2. 适配不同的硬件,主要问题是驱动程序的问题,这是在虚拟机这一层之下的,不至于说系统全部重写,但你可以了解一下编写驱动的难度,能写驱动的人水平跟在虚拟机写app的人的水平完全不在一个等级;

  3. 你的问法有问题,应该说是适配不同硬件,cpu只是其中一种硬件,其他的零部件都要去适配,就是2里面说的写驱动,安卓=linux内核+java虚拟机,不借助虚拟机也可以做到适配不同硬件,但是,第一,这就不是安卓了,第二,无法做到app快速简洁开发了,而且,安卓的体积会很恐怖,因为需要集成常见硬件的驱动,这个就好比是现在的windows,也是因为驱动不同,所以不同厂商,甚至同厂商不同型号手机的rom是无法通用的。

⑼ 沙盒比虚拟机运行效率更高,为何安卓系统却不使用它

因为安卓系统占用内部空间比较小,而且安卓采用的是Java技术,所以非常适合虚拟机的运行,而且能发挥出很高的效率。沙盒占空间比较大,但是内存占用比较小,所以运行速度快,但是它是一个独立的运行机制,所以对系统架构要求高。

虚拟机运行机制,它是运用自身的系统建立了一个虚拟的计算机世界,很多文件或者是第三方软件,都可以在这个虚拟计算机世界里运行,从而达到更多软件的兼容性,而且操作起来也更为的方便。它也不会主动阻止第三方软件修改系统文件,但是会通过动态指令发出操作界面,让操作者自己选择,所以时间长了会让手机变得卡顿的原因,但是这种虚拟机运营机制非常适合安卓的Java技术。

⑽ 解释为什么android系统运行的Java程序不使用标准的Java API和虚拟机

容易产生误差和错误。
容易产生错误其中,用户服务包括用户界面、程序执行、I/O操作、文件系统操作、通信、错误检验、资源分配、记账、保护与安全。一组系统程序是现代操作系统的另一特点,它表述了计算机的逻辑层次。系统程序也称为系统工具,为程序开发和执行提供了一个方便的环境。系统程序可分为:文件管理、信息状态、文件修改、程序语言支持、程序加载与执行、通信、后台服务。

阅读全文

与为什么安卓系统不用虚拟机制相关的资料

热点内容
做程序员的没朋友吗 浏览:355
阿里云服务器传奇微端 浏览:922
phplinux时间 浏览:447
云服务器20性能 浏览:986
android强制系统横屏 浏览:280
怎么提前看未播出的电视剧app 浏览:666
cad转pdf图层 浏览:600
程序员接私活初级 浏览:434
全无油润滑压缩机 浏览:185
代码加密常用方法 浏览:953
安卓手机如何解除已禁用 浏览:396
算法的随机性 浏览:486
高中解压体育游戏 浏览:533
androidstudior丢失 浏览:345
命令行笔记 浏览:739
360目标文件夹访问拒绝 浏览:520
3b编程加工指令 浏览:790
c8051f系列单片机选型手册 浏览:773
南昌php程序员 浏览:514
bcs命令 浏览:447