周二,Linux内核主要开发者Linus Torvalds宣布候选版本Linux 5.13现在可以进行公开测试。

而这次的最新版本引入了对苹果 M1系统芯片的支持

根据commit信息,Linux 5.13对苹果M1芯片的初始支持已被合并到Linux SoC代码树中,预计 Linux Kernel 5.13 将带来 M1 芯片支持

mac 下打包arm架构docker 镜像 arm mac._驱动程序

commit信息可以看到,在Linux内核实现对M1初始支持的开发者是Arnd Bergmann和Hector Martin. 他们的commit已在以下设备通过测试:

Mac mini (M1, 2020)

MacBook Pro (13-inch, M1, 2020)

MacBook Air (M1, 2020)

初步的M1支持包含UART、中断、SMP和设备树位,以提供基本功能。此外还有一个基于SimpleFB的帧缓冲器,不过要实现良好支持的3D/视频加速显然是一项艰巨挑战。

为了让M1 Mac运行Linux,开发者发起众筹

去年12月, 被称为「Linux移植专家」的Hector Martin还曾经发起为M1版Mac移植Linux系统的众筹。

这位自称Marcan的开发者一直致力于将Linux移植到各种不同的平台,根据他的介绍:

自2000年代初以来,我一生中有一半以上的时间都在使用逆向工程设备。我曾致力于为一些平台构建非官方的开放软件支持,比如任天堂 Wii (我是其中一个最大的硬件文档、开放库、“越狱”软件(The Homebrew Channel)、恢复工具(BootMii)等)、索尼 PS3(我编写了AsbestOS和一个 Linux补丁集,以便在 PS3 Slim 上运行 Linux,以及在最初的Linux支持被移除之后使用最新的PS3单元)、 PS4(我将 Linux 移植到了 PS4上,以便能够运行带有全面OpenGL/Vulkan 图形支持的Steam游戏) ,以及其他一些较小的平台。

 

但是,让Linux在苹果M1上运行很难,这也需要全身心的投入,用Marcan的话,这是一份全职工作,所以他就发起了这项众筹,希望得到每月4000美元的支持。

mac 下打包arm架构docker 镜像 arm mac._Mac_02

这个项目没有得到苹果的批准,但是只要Marcan不使用 macOS 的代码来构建Linux支持,他说他向用户发布是合法的。

苹果还允许在其自研芯片上引导自定义内核,这为Linux支持铺平了道路,但是Martin需要对苹果的驱动程序进行逆向工程。

Linus Torvalds也曾表示,如果M1 Mac运行Linux,他会很喜欢,但他觉得没有苹果的合作是不可能的。

Torvalds说: 「对我来说,M1的主要问题是它的GPU和周围的其他设备,因为这可能会阻碍我使用它,因为除非苹果公司开放,否则它不会有任何Linux支持。

他还认为苹果「似乎不太可能」公开其芯片组,但「你总是可以希望」。

万一有一天实现了呢?

GPU部分仍不可用

当然Linux 5.13只是初步的,仅仅是能够启动,能够简单用用而已,GPU部分就还完全不可用

mac 下打包arm架构docker 镜像 arm mac._开发者_03

若需全面支持 M1还要解决许多关键问题,特别是让Mac的图形系统在Linux下完全正常运行以供日常使用

Linus Torvlds表示,这需要大量的工作,但还好目前看起来进展比较顺利。

除了对苹果自研芯片的支持,Linux 5.13还引入了大量新的驱动程序,还有此前驱动程序的更新,以及对文件系统、体系架构、工具和进程处理等方面的其他改进。

据外媒9to5Linux消息,Linux 5.13的最终版本将在6月底或7月初向公众发布。这将取决于Torvalds在开发周期中决定发布多少个候选版本。