• mindbleach@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    1
    ·
    1 year ago

    This doesn’t work out for ARM or Windows.

    As soon as virtualization is on the table… it’s gonna be a free-for-all. Android could’ve been there if they didn’t half-ass it with an ARM monoculture. Apple could’ve been there if they didn’t quarter-ass it with “universal” binaries for a universe of two platforms. Windows RT… no.

    Linux can already aaalmost force Windows programs to run on anything, thanks to “user-mode emulators” like FEX-emu / box86 / qemu-user. And Wine, obviously. Wine splits the program into system code and machine code. FEX-emu intercepts the latter. So if the stars align, you can run Crysis.exe on a $50 tablet.

    Microsoft embracing that approach, differing only in using Windows instead of Wine, means a lot more eyes on the problem, and much wider recognition that this is even possible, and shortly very little reason to use Windows instead of Wine. Because they’re not gonna nail it on the first go. Microsoft’s obsession with compatibility is admirable and commendable, but they will sell buggy Windows gizmos that sorta-kinda run your Steam library, and those will cost more than buggy Linux gizmos that sorta-kinda run your Steam library.

    And of course nobody’s going to have any damn reason to run x86 anymore. Intel’s gonna have the most power money can buy, for a good while longer. (Apple does not count because Apple does not sell chips.) AMD’s gonna keep metastasizing cores for server applications, and presumably remain competitive on price-per-oomph. Both will survive if they transition toward massively parallel GPGPU designs. But that IP duopoly is screwed.

    The real surprise for all involved is that ARM won’t matter nearly as much. Android and iOS will keep it going… all the way to a sudden dropoff, because old software on those platforms gets sucked down the memory hole. Apple will presumably stick with it for the coming decade because they have a perpetual license. But RISC-V has no licensing terms. It’s already in some good-luck-have-fun experimental laptops. It’s the microcontroller for some FPGA products. It’s gonna wind up in every disk drive, industrial controller, and SOC that’s either pushing the limits of 16-bit relics or scraping razor-thin margins versus ARM fees. And the same way ARM went from the battery-powered low-end wonder in the Game Boy Advance to ostensibly the best CPU in the world (for an OS nobody runs), a metric shitload of money will pour into making RISC-V better, with game theory pushing for cooperation among assorted greedy bastards.

    Really, Apple deserves a lot of credit for this, despite not wanting it and being basically screwed. LLVM as an intermediate layer seems more likely than .NET / Mono. Whichever user-mode solution takes off is likely to dissolve x86 into an intermediate representation and then let some hardware-specific back-end consume it. It’s gonna be great for Apple users, but only insofar as Mac OS will run Windows programs in spite of whatever Apple Inc. wants. Nobody gives a shit about running Mac OS programs elsewhere. Darling, the Wine equivalent that obviously should’ve been Dine, is just barely a thing as of this year. I’d feel down about their prospects if not for iOS’s petit monopoly being the worst fucking thing ever to happen to computing.