IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 翻译官Rosetta 2:苹果Mac切换ARM架构的幕后功臣 -> 正文阅读

[嵌入式]翻译官Rosetta 2:苹果Mac切换ARM架构的幕后功臣

大家好,我是七七,欢迎来到我们的频道,一起见证ARM架构的崛起。今天,我们聊一下Rosetta 2(罗塞塔)。
不久前的苹果发布会,除了M2以外,还有一大看点,苹果macOS 13增加了一个非常酷炫的功能,把翻译工具Rosetta 2带到了ARM Linux虚拟机上。Rosetta 2是如何工作的?这个Rosetta 2对于苹果而言,意义在哪里?欢迎观看本期视频。

苹果将 Rosetta 2 引入 ARM Linux 虚拟机


1、Rosetta 2:解决Mac架构迁移背后的软件兼容问题
在M1发布之前,苹果的Msc电脑使用X86架构,应用软件也都是基于X86开发的。M1发布后,Mac芯片从X86迁移到了ARM架构。但是,遇到一个很大的问题,就是软件兼容问题。
原来在x86架构上的应用,开发者还没有及时做适配,可能没办法运行??Rosetta 2的推出,就是为了解决这一问题。Rosetta 2深入到技术层面很难解释,需要从指令集架构说起。这里,我们以施工队为例,尽可能通俗解释。
我们把智能设备完成一次功能操作比作建造一个房子的项目,这个过程中,CPU相当于工匠,他负责盖房子,但是要盖成什么样子,得听项目经理的。项目经理相当于系统,他告诉工匠需要把房子盖成什么样,传达的指令就相当于指令集。


项目经理要告诉工匠需要盖什么样的房子,他们怎么传达指令呢?为了更高效地和工匠沟通,他们彼此间通常会约定一些只有他们听得懂 “行话”组成 “指令库”。
复杂指令集这边的项目经理,叫 “小复”,他和工匠沟通的 “行话”,包括具体每块砖砌在哪里这样简单直接的指令,也包含 “砌一个围墙”、“搭一个柱子”这样的复杂指令。


而精简指令集这边的项目经理,叫 “小简”,他就不一样了,他这边的工匠比较 “笨”,听不懂复杂的话,所以它下达的指令都比较简单,像“这块砖砌在哪里”、“这块砖砌在这里”……


小复团队,能力强,干活快,但是体系比较臃肿复杂;
小简团队,虽然接收的都是很简单的指令,处理复杂工作能力差,但是工人一块砖一块砖地干,也能把房子盖好。
苹果从X86切换到ARM架构以后,现在苹果的问题是,“小复”团队原来的 “工匠 “被调走了,转岗过来的是“小简”的“工匠”。而 “小复”操着一口复杂的“行话”,新来的工匠听不懂。


怎么办呢?对的,安排一个翻译,让工匠们能听懂 “小复”说的话。这个 “翻译”的角色叫“小 R”,就是苹果的“Rosetta 2”。
这个“小 R”怎么翻译呢?


当“小复”对工匠们说 “在这砌个围墙”时,工匠们不知道他说了些什么。“小 R”就帮工匠们把这句话分析、拆解,然后还是像“小简”那样,手把手告诉工匠每一块砖应该砌在什么地方。
有了它的帮助,用X86架构开发的APP,在搭载 M1芯片的Mac上,现在也能用了。
Rosetta 2是内置在mac OS系统里的,在幕后工作。用户第一次下载、打开x86应用时,系统会提示你安装 Rosetta 2。


安装后,它适用于任何其他需要它的 App,以后不用二次下载。换句话说,对于用户而言,Rosetta 2 几乎是无感的,悄悄做着翻译工作。
2、Rosetta 2:苹果从X86彻底转向ARM架构中的一环
其实,苹果转换架构不是第一次了。
1984年第一代麦金塔电脑采用的是摩托罗拉的68K处理器。在1994年,苹果将处理器更换为RISC架构的PowerPC。2005 年,苹果从PowerPC切换到了英特尔的x86芯片。当年,为了确保架构迁移顺利,苹果推出了Rosetta,如同一个内置虚拟机,可以让尚未适配新架构的软件能运行在新的机器上。
在上一次的架构迁移中,Rosetta为苹果立下了汗马功劳。Rosetta 2让采用M1芯片的Mac能兼容以前的X86软件,是苹果从X86彻底转向ARM架构中的关键一环。


6月7日,在最新更新的开发者文档中,苹果宣布更新到macOS 13及更高版本时,用户将可以通过Rosetta在ARM Linux虚拟机中运行Linux x86_64应用。
从2020年,Rosetta 2问世至今。两年时间,苹果已在 Intel(x86_64)平台的文件转译工作上取得了长足进步。目前,尚不清楚这一工具的效果如何。如果大多数软件可以正常翻译,那么苹果M1/M2 Mac电脑使用Linux将是一个巨大的体验改善。
谢谢大家,这期内容就先介绍到这里。
我们下期再见!

参考资料:
1、IT之家,一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事
2、WHYLAB,由PowerPC到Intel,苹果是这么做的?

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-07-21 21:42:18  更:2022-07-21 21:43:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 17:56:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计