苹果🍎发话了, Arm 新 U 不支持 x86 虚拟机。

2020-06-24 13:51:27 +08:00
 rogwan
也就是说 Parallels 和 VMWare 用不了,除非这些虚拟机推出 Arm 版,这对 Developers 不是个好消息
12392 次点击
所在节点    macOS
65 条回复
scukmh
2020-06-24 13:54:09 +08:00
链接,证据呢?
lonelymarried
2020-06-24 13:56:26 +08:00
那 vmware 开发一个 arm 版的就是了
xieshaohu
2020-06-24 13:57:53 +08:00
开发者大会的视频都说了支持虚拟化,支持 Linux
yyfearth
2020-06-24 13:58:09 +08:00
看看能不能虚拟一个 ARM 版的 Windows10
Osk
2020-06-24 13:59:01 +08:00
很正常啊,不然 arm 上转换层跑 x86 软件再跑一个 x86 虚拟机,不说 vt-x 这些指令能否支持,就算支持性能也太美
yyfearth
2020-06-24 13:59:03 +08:00
Parallels 还是有的 估计用 macOS 自带的 hypervisor.framework
估计只能虚拟 ARM 的系统
loading
2020-06-24 13:59:26 +08:00
那 pd arm 前几版性能估计会下降很厉害,苹果不会是想把第三方虚拟机 app 也赶尽杀绝吧,233
gggxxxx
2020-06-24 14:00:19 +08:00
文档里说了,虚拟 arm linux 没有问题。虚拟 x86 linux 或者 Windows 不行,Rosetta 不支持这种层面的翻译
hronro
2020-06-24 14:00:54 +08:00
所以苹果当时演示的用 Parallels 跑 Linux 是造假的?
Procumbens
2020-06-24 14:02:19 +08:00
Rosetta is meant to provide developers with time to create native versions of apps, and there are a few limitations that are worth noting. As outlined in developer documentation shared this week, while Rosetta will be able to translate most Intel-based apps, it will not work with Virtual Machine apps that virtualize x86_64 computer platforms.

That means Apple's future Macs with Apple-designed chips will not natively support running current versions of software like VMWare or Parallels to run x86 Windows within the virtualization software. Other native solutions may appear, but will require efforts from 3rd party developers.

https://www.macrumors.com/2020/06/23/rosetta-wont-support-x86-virtualization-windows/
moooookey
2020-06-24 14:11:54 +08:00
@hronro Linux 可以在 arm 上跑啊,所以发布会只说了支持 Linux,要是能支持 Windows,肯定会强调支持 Windows,市值 1.5 万亿公司的语言艺术啊……
junkun
2020-06-24 14:18:06 +08:00
我还看到有消息说 Rosetta 也不支持翻译 AVX 等指令集
stoneabc
2020-06-24 14:21:09 +08:00
@junkun 还以为苹果能和 intel 有什么 PY 交易呢。。。
eatlatency
2020-06-24 14:22:41 +08:00
应该是指不支持 Intel 的 VX-T 这一类虚拟化指令集扩展吧。这也很合理,否则适配难度就更大了。
实际上 arm 也是有虚拟化指令集扩展的,只要苹果说服相关公司使用 arm 的虚拟化指令扩展为 arm 平台开发虚拟机软件,就能运行 arm 架构的 linux 虚拟机。
我猜测 rosetta 是类似 QEMU 的指令集翻译,需要支持的 x86 指令越多,翻译起来难度就会越大。要支持完整的 VX-T 收益相较于成本还是太低了。
dayFvckingByte
2020-06-24 14:37:38 +08:00
搞笑了,iPhone 都支持 x86 虚拟化,mac 不支持??
cosmic
2020-06-24 14:38:23 +08:00
@dayFvckingByte 是不支持 X86_64 。X86 是 32 位支持的
feather12315
2020-06-24 14:47:30 +08:00
@eatlatency #14
@dayFvckingByte #15
通常说的硬件级别虚拟化都是指硬件辅助虚拟化。如果说二进制翻译那种虚拟化,当然支持啊,还可以在 x86 上运行 arm 、MIPS 、RISC-V 之类的呢。
不过效率是相当低的,你可以用 qemu 试试不加参数-kvm 的效率
hronro
2020-06-24 14:55:55 +08:00
@moooookey #11 如果是真的,那发布会上说的因为能虚拟化跑 Linux 所以对开发者友好,真是苹果在瞎 JB 乱吹了。真跑 ARM 版 Linux,一大堆底层库不支持吧
IgniteWhite
2020-06-24 16:35:51 +08:00
@xieshaohu wwdc 视频里支持的是 arm 版 debian,可以点我头像看我最近关于 wwdc2020 的帖子~
Xusually
2020-06-24 16:38:41 +08:00
貌似只是说 Rosetta 2 的自动翻译不支持 X86 虚拟机应用吧?

原生 ARM 的虚拟机应用,比如 vmware 把虚拟机产品从 x86 迁移到 arm 原生,并没说这种不能用啊?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/684429

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX