一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事。

相信很多朋友都遇到过以下问题,就是一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事 。。针对这个问题,今天小编就搜集了网上的相关信息,给大家做个一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事 。的解答 。希望看完这个教程之后能够解决大家一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事 。的相关问题 。
苹果在上个月推出了搭载 M1 自研芯片的 MacBook Air、Mac mini 以及 13 英寸 MacBook Pro 。其中,苹果 M1 芯片与此前 Mac 采用的芯片最大不同是基于 ARM 架构,而不是过去英特尔芯片的 x86 架构 。

一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事。


由于 M1 芯片底层架构和过去不同,由此带来的应用生态兼容性问题是首先需要解决的,为此苹果也开启了为期两年的 Mac 过渡计划 。具体来说,苹果借助的是 MacOS 11 Big Sur 系统以及其内置的 Universal 2、Rosetta 2 和 Virtualizaion 三种技术来解决问题 。
一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事。


不过话虽如此,可能还是会有小伙伴会比较犹豫,这些措施真的可以解决 M1 芯片 Mac 的软件兼容性问题吗?特别是原来在 x86 架构上的应用,开发者还没有及时做适配,能在 Mac 上很好地运行吗?
对于这个问题,其实苹果已经给出了专门的解决方案,就是 Rosetta 2 。可是谈到 Rosetta 2,很多小伙伴并不是很了解,它需要怎么用,又是如何让 M1 芯片的 Mac 运行 x86 平台应用的,这里IT之家不妨为大家解释一下 。
一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事。


说到 Rosetta 2 的运行原理,深入到技术层面大家可能很难理解,因此小编主要介绍一些基础的底层逻辑 。
首先要从 x86 架构和 ARM 架构的不同说起 。我们所说的 x86 架构和 ARM 架构,都是指处理芯片的指令集 。
我们知道,芯片是负责运算的,但是它需要在什么时候做什么运算,芯片不能自己决定,得听系统的指令,描述 CPU 能做什么运算的一系列指令集合,就是指令集 。
打个比方,我们把智能设备完成一次功能操作比作建造一个房子的项目,这个过程中,CPU 相当于工匠,他负责盖房子,但是要盖成什么样的房子,他不知道,得听项目经理的 。
项目经理相当于系统,他告诉工匠需要把房子盖成什么样,传达的指令就相当于指令集 。
一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事。


说到指令集,主要有两种:x86 和 ARM 。x86 是英特尔编写的,属于复杂指令集 (CISC)的代表,而 ARM 是英国 Acorn 有限公司设计的,是精简指令集(RISC)的代表 。
复杂指令集和精简指令集的差别在哪里?我们还是用上面的例子来说明 。
项目经理要告诉工匠需要盖什么样的房子,他们怎么传达指令呢?为了更高效地和工匠沟通,他们彼此间通常会约定一些只有他们听得懂 “行话”组成 “指令库” 。
复杂指令集这边的项目经理,我们叫他 “小复”,他和工匠沟通的 “行话”,包括具体每块砖砌在哪里这样简单直接的指令,也包含 “砌一个围墙”、“搭一个柱子”这样复杂的指令 。
【一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事。】
一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事。


而精简指令集这边的项目经理,我们叫他 “小精”,他就不一样了,可能他们这边的工匠比较 “笨”,听不懂复杂的话,所以它的指令都是手把手告诉工匠 “这块砖砌在哪里” 。

推荐阅读