点击上方蓝色“程序猿DD”,选择“设为星标”

回复“资源”获取独家整理的学习资料!

前言

上周五,我们分享了关于苹果最新的 M1 芯片不支持 Docker 容器的相关内容。如果还没读过,可以点这里:“最新的苹果M1芯片电脑别急着买,Docker容器还未能支持!”

Docker 官方也对此情况给出了回应,会努力适配。其实,除了 Docker,还有许多软件目前还无法在苹果最新的 M1 芯片上正常的运行。不少网友也只能在网络上宣泄自己的不满:

那为什么 M1 芯片会有这样的情况出现呢?

首先我们要知道在苹果自主研发设计的 M1 芯片之前,市面上大多数PC架构都是Intel的X86架构,也是因为INTEL的这个X86架构造就了INTEL行业霸主的地位。

在个人电脑开始流行的这30年间,X86系统由微软及Intel构建的Wintel联盟,垄断了个人电脑操作系统这一领域,在全世界范围内形成巨大的用户群,每个人的使用习惯几乎都被固化。

同样的,x86系统的普及,使得其在硬件和软件开发方面已经形成了世界范围内统一的标准,几乎所有基于x86的硬件平台,都可以无缝连接、直接使用微软的视窗系统及现在市面上主流的工具软件。

而苹果 M1 芯片是一款基于ARM架构的产品,在 M1 芯片面世之前,市面上虽然存在一些搭载ARM架构的PC产品,但是相应的市场占有率完全无法和X86相比。搭载ARM架构的PC产品主要的缺点就是在兼容性上表现太差,这个正是X86系统的优势所在,导致很多日常常用的软件根本无法安装运行,极度影响用户体验。

现状

苹果自然考虑到这样的情况,在WWDC20开发者大会上已经公布了Rosetta 2,可自动转译现有Mac App,最终允许ARM架构的 M1 芯片运行x86_64架构指令的APP,看似可以使搭载 M1 芯片的Mac产品与intel版Mac应用完美兼容,但实际这种方式并不能保证性能和速度。Samuel Attard,Electron 项目的维护者之一 ,就曾指出 “尽管 x86_64 Electron 应用程序可在 Rosetta 2 下运行,但其性能将大大降低。” 他给出的终极解决方案就是构建 ARM64 的二进制版本。

除此之外,苹果早在7月份就被相关工程师爆料,阐述其正着手对30个常用软件构建 Apple Silicon Mac 支持,其中包括 Node,Python 3,Go,V8 等耳熟能详的名字。而作为现在主流的浏览器,谷歌Chrome浏览器也在周二发布了带有Apple Silicon 支持的 Chrome 87。

优势

ARM架构,虽然在兼容性上尚有很大提升的空间,但是其一直以来相比X86架构的优势在于功耗。尤其是近年来移动端业务的发展诉求,其在低功耗、低成本的优势逐渐显现。根据网络消息,苹果 M1 芯片的单位生产成本在40-50美元之间,而购买INTEL酷睿i5处理器的成本在175-250美元,同比增加5倍左右。如果继续采用INTEL处理器,苹果未来几年在MacBook Pro和MacBook Air的花费将达到32亿美元之多。但如果采用相同数量的M1 芯片,花费只有6.97亿美元,精明的库克肯定不会看着这个数字无动于衷。另外一个深层原因,苹果从此可以逐步脱离intel的限制,不用在看其脸色办事,或许这个才是苹果迫不及待推出M1 芯片的真实原因之一。

未来

正如本文开头所说,M1 芯片的路还很长,很多软件还未完成对他的支持。

例如:

甲骨文一直还没有决定,是否要将其开源的x86虚拟机 VirtualBox 移植过来。

MAC必备神器之一Homebrew还没有过渡到 Apple Silicon。Gradle,Maven 和 Jenkins 等大约十多种OpenJDK的软件包同样不支持 Apple Silicon。

而在某些领域被广泛使用的 Fortran 90 编译器,也还没有支持 Apple Silicon,导致依赖着该编译器的R 语言暂时还不能在Apple Silicon 上本地运行。

前文提到的Go,其开发团队在11周年庆中透露,要等到明年发布的1.16版本中,才会加入Apple Silicon 的支持

你觉得苹果 M1 芯片电脑的前景如何?你是否会去购买相关产品?欢迎留言进行讨论!

DD自研的沪牌代拍业务,点击直达

【往期推荐】

收入最高的 24 个开发人员职位

2020-11-22

索赔 100 万!只是因为一个开源插件?

2020-11-21

快速搞懂监控、链路追踪、日志三者的区别

2020-11-21

读完《Effective Java》后,总结了 50 条开发技巧

2020-11-20

35岁之后,你还会继续写代码吗?

2020-11-19

扫一扫,关注我

一起学习,一起进步

每周赠书,福利不断

深度内容

推荐加入

一文解读苹果 M1 芯片电脑上的开源软件相关推荐

  1. 21. 深度解读苹果M1芯片

    苹果在2020年作出的最重要举动就是推出了搭载自研M1芯片的全新系列笔记本电脑.相比英特尔的产品,苹果宣称这款名为M1的芯片拥有更为出色的效能和更低的电力消耗.随后的实测结果显示,苹果M1的确展示出了 ...

  2. 最新的苹果M1芯片电脑别急着买,Docker容器还未能支持!

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 骑士 来源 | https://www.ith ...

  3. m1芯片 mysql_苹果M1芯片各种不支持,但居然可以刷朋友圈!你会买单吗?

    上个月和大家一起分享过,最新的苹果M1芯片上支持的各种开源软件.什么?还没读过?赶紧点这里:一文解读苹果 M1 芯片电脑上的开源软件. 现在已经过去了半个月,想必有不少的同学都已经入手了最新的苹果M1 ...

  4. Linux登陆苹果M1芯片

    Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 来源丨安全牛 将Linux移植到苹果公司(以下简称& ...

  5. Linux系统适配苹果M1 芯片的项目有新进展

    苹果自研的 M1 芯片于 2020 年正式发布,从产品发布起,一些开发者便开始了将 Linux 系统适配 M1 芯片的项目. 近日消息 苹果自研的 M1 芯片于 2020 年正式发布,从产品发布起,一 ...

  6. 苹果M1芯片及新产品布局对ARM生态影响

    在PC领域,苹果在2005年之前采用IBM PowerPC芯片,从2005-2020年采用Intel x86芯片,最近则新发布了苹果M1芯片.M1是一款基于ARM架构的苹果自研芯片.本文简单介绍苹果M ...

  7. 苹果M1芯片其实没有那么好?英特尔做了套PPT官方反击

    点击上方"CVer",选择加"星标"置顶 重磅干货,第一时间送达 本文转载自:机器之心  |  编辑:泽南.蛋酱 苹果 M1 芯片的笔记本真的那么神奇吗?英特尔 ...

  8. 苹果M1芯片机器学习测评出炉!Mini比RTX 2080Ti快14%,Air好于Pro

    点击上方"CVer",选择加"星标"置顶 重磅干货,第一时间送达 来源:AI科技评论 作者 | 蒋宝尚 编辑 | 青暮 今年双十一,苹果发布了新Mac系列,拿出 ...

  9. rosetta软件_发布一个月后 苹果M1芯片Mac的常用软件体验怎么样了?

    国外一家网站实时统计应用支持M1芯片的情况 新浪数码 晓光 苏航 昨天,有"苹果优秀开发者"之称的微软公司,推送了其Microsoft 365新版本,这次更新的最主要变化,就是支持 ...

最新文章

  1. win10 无法打开 APICloud Studio 2 的解决方案
  2. python子类定制_在Python中实现可定制的Lexer类
  3. jzoj1252,P5194-天平【dfs,set】
  4. 我对STL的一些看法(五)初识关联容器
  5. 构建数据库云管平台 实现数据价值最大化
  6. Netty工作笔记0005---NIO介绍说明
  7. 修改centos6.5的时区
  8. Spring Boot 文件上传
  9. 算法入门经典-第七章 例题7-2 八皇后问题
  10. 【连载】穿越计算机的迷雾——读书笔记
  11. 华为路由器基本配置命令
  12. Vue2在使用Element-UI的分页组件遇到的问题(如PageSize,PageNum等)
  13. 王者荣耀背景故事整合
  14. Python dummy variable
  15. [翻译] Oracle Database 12c 新特性Multitenant - Cheney Shue
  16. linux配置ftp错误530,ubuntu16安装配置ftp服务(和530错误解决)
  17. Integer 和 int
  18. HDU 6555 The Fool (整除分块 / 打表找规律)
  19. QQ机器人思路理解(C++、CQ)
  20. JAAS配置介绍(转载)

热门文章

  1. python3 字符串替换 replace translate re.sub
  2. docker 挂载主机目录访问报错Permission denied 解决办法
  3. centos6.8无法安装锐速的解决方法
  4. PHP Memcache详解
  5. 查看文件的MD5/SHA1效验值
  6. 编程之美2.1 求二进制中1的个数
  7. Shell中read的常用方式
  8. Java 中的关键字 final
  9. blob转file对象_C++核心准则C.41:构造函数生成的对象应该被完全初始化
  10. bash: 无法为立即文档创建临时文件: 权限不够_世界顶级Linux大牛耗时三年总结出3000页Linux文档...