Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.8k views
in Technique[技术] by (71.8m points)

为什么iphone和ipad应用运行在mac上需要芯片的支持?

芯片是硬件层面的计算
我认为只要有软件的模拟器
iphone和ipad应用理论上可以在任何cpu上运行起来
为什么iphone和ipad应用运行在mac上需要M1芯片的支持?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

一直都有虚拟机啊……甚至能在 x86 的 Windows 上跑 iOS App……

第三方的不谈,Xcode 本身不就自带一个么……

但你要知道但凡虚拟化就涉及到转译指令集,转译指令集就有性能损失。苹果提供的 Rosetta 2 方案就基于此,官方给出的数据是 20% 左右的性能损失。

还有兼容性问题,不展开说了。

再加上苹果系统本身的封闭性,跟虚拟机厂商合作少,全靠厂商自己反编译来踩坑,你指望这个成为主流?


P.S. 完全的跨平台方案就是个伪命题,从软件层面上看,即使同为 x86 架构,想在 Linux 系统和 Windows 系统间完全跨平台都不可能,这都还用不着虚拟化指令集,只是抽象系统调用而已。Java 最早吹 “Write Once, Run Anywhere”,现在官方连提都已经不提了。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...