Announcement

Collapse
No announcement yet.

macOS 13 Adding Ability To Use Rosetta In ARM Linux VMs For Speedy x86_64 Linux Binaries

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • macOS 13 Adding Ability To Use Rosetta In ARM Linux VMs For Speedy x86_64 Linux Binaries

    Phoronix: macOS 13 Adding Ability To Use Rosetta In ARM Linux VMs For Speedy x86_64 Linux Binaries

    In addition to announcing the M2 SoC, Apple used its WWDC keynote to also announce macOS 13 "Ventura". One of the interesting technical changes with macOS 13 is the ability to use Apple's Rosetta software for speedy execution of Linux x86_64 binaries running on ARM Linux VMs from Apple Silicon...

    https://www.phoronix.com/scan.php?pa...Linux-Binaries

  • #2
    Killing FEX and Box64 in one shot? No way!

    This Rosetta access is done using the macOS Virtualization Framework
    Oh, of course, under macOS only. Nice try.

    Comment


    • #3
      Originally posted by tildearrow View Post
      Killing FEX and Box64 in one shot? No way!

      Oh, of course, under macOS only. Nice try.
      Even if it ran on Linux it wouldn't kill neither of those, as Rosetta requires hardware extensions that aren't commonplace (namely, it seems to require memory ordering guarantees that the regular ARM ISA doesn't provide). It would replace them... On a Mac and nothing else that exists yet.

      Comment


      • #4
        Originally posted by sinepgib View Post

        Even if it ran on Linux it wouldn't kill neither of those, as Rosetta requires hardware extensions that aren't commonplace (namely, it seems to require memory ordering guarantees that the regular ARM ISA doesn't provide). It would replace them... On a Mac and nothing else that exists yet.
        Yeah, I know.

        Comment


        • #5
          If anyone is interested, Hector (one of the developers behind Ashai Linux) gave his thoughts on Rosetta on Linux.

          For my personal opinion, I think this is a cool option for Mac developers that need to rely x86 Linux binaries, but I agree with Hector in the sense that improving FEX/box86 is better in the long run (and avoid the legal issue of trying to run it on non-apple hardware, assuming that is even possible).
          Last edited by CuriousTommy; 07 June 2022, 09:11 AM.

          Comment


          • #6
            Originally posted by tildearrow View Post
            Killing FEX and Box64 in one shot? No way!

            Oh, of course, under macOS only. Nice try.
            Having it accessible trough a framework raises the chances that you can extract/reverse the necessary parts. So someone could grab the parts and make them run under Linux, which would be interesting for development and learning some tricks.

            Comment


            • #7
              Seems like someone figured out how to get it running on non-apple CPUs

              Comment


              • #8
                Kind of weird for them to do this but perhaps it's Apple's way of preventing people from dual booting or outright replacing MacOS. After all, if you run Linux, you're pretty much not going to use any of Apple's products, so they make no money. From what I understand, Apple doesn't see much profit in their hardware sales. Most of their profits come from iTunes and the App Store. So, by allowing people to run Linux software without leaving MacOS, Apple gets to keep users within their ecosystem.

                Also, with the recent trends of right-to-repair, Apple might have to deal with people bricking their devices in attempts at dual-booting. If they can incentivize people to not dual boot, it decreases the chances of such issues.


                Here's what I don't get though: why specifically x86-64 binaries, when Linux can do aarch64?

                Comment


                • #9
                  Originally posted by schmidtbag View Post
                  Here's what I don't get though: why specifically x86-64 binaries, when Linux can do aarch64?
                  Just guessing, but probably because aarch64 binaries are a subset of what's available on x86-64. I.e. there isn't any software that is only available on aarch64, but there is plenty (mainly closed source) that is unique to x86-64.

                  Plus historically, Apple's Rosetta product is specifically made for translating between different CPU architectures, whereas something like Wine is used when you want to run different OS binaries on same cpu arch.
                  Last edited by torsionbar28; 07 June 2022, 11:31 AM.

                  Comment


                  • #10
                    Originally posted by torsionbar28 View Post
                    Just guessing, but probably because aarch64 binaries are a subset of what's available on x86-64. I.e. there isn't any software that is only available on aarch64, but there is plenty (mainly closed source) that is unique to x86-64.

                    Plus historically, Apple's Rosetta product is specifically made for translating between different CPU architectures, whereas something like Wine is used when you want to run different OS binaries on same cpu arch.
                    Understood and that makes sense. I sort of misspoke:
                    Why doesn't apple support both x86-64 and aarch64? Running aarch64 binaries would be more efficient if given the choice.
                    Wine is an option but it's not supported by Apple and is also a bit of a pain to install on Macs. I assume it must be even harder on an M1 Mac. Wine also wouldn't help run Linux programs, if that's Apple's goal.

                    Comment

                    Working...
                    X