7 ms·
Are the limitations on x86_64 virtualization likely to be for technical reasons, or patent reasons? I read a comment on here alluding to some patents on x86_64
by tomduncalf 6y ago
Are the limitations on x86_64 virtualization likely to be for technical reasons, or patent reasons? I read a comment on here alluding to some patents on x86_64 virtualization expiring later this year: https://news.ycombinator.com/item?id=23612256 https://news.ycombinator.com/item?id=23612256 - could that mean that there is a chance this might happen and they are keeping it quiet for now, or are patents likely unrelated?
- unicornfinder 6y agoIf I had to guess it's because Rosetta isn't fully emulating an x86_64 instruction set but rather dynamically translating API calls for the most part.
- mkl 6y agoI think it's neither of those things. The x86_64 machine code instructions are translated into ARM instructions, so there's no emulation and the API calls don't need to change.
- monocasa 6y ago> The x86_64 machine code instructions are translated into ARM instructions, so there's no emulation That's what emulation is.
- mkl 6y agoI think emulation would be interpreting the instructions one by one and doing what they say in software (a bit like Python's byte code interpreter). Rosetta translates the binary to another (now native) binary, and then runs it like normal, and much of the time this will be an ahead-of-time once off translation.
- monocasa 6y agoRecompilation is a valid emulation strategy. You're just amortizing client instruction decode by doing it ahead of time. Last time I checked, that's how RPCS3 worked for instance, since PS3's GameOS didn't generally allow JITs anyway.
- monocasa 6y agoThose are two different concerns. Rosetta isn't emulating x86_64 kernel mode. Microsoft isn't emulating x86_64 at all. I imagine Apple has enough patents that Intel infringes on to be able to cross licence.
- mrpippy 6y agoMicrosoft is working on it.
- fsflyer 6y agoApple spent $1B buying Intel's modem business last year. https://www.apple.com/newsroom/2019/07/apple-to-acquire-the-majority-of-intels-smartphone-modem-business/ https://www.apple.com/newsroom/2019/07/apple-to-acquire-the-... Apple knew this transition was coming. They could have easily slipped in other terms to deal with any IP licensing issues around implementing the x86_64 instruction set.
- osy 6y agoExcept AMD owns x86_64 https://en.wikipedia.org/wiki/X86-64#Licensing https://en.wikipedia.org/wiki/X86-64#Licensing Rosetta doesn't translate i386 btw.
- monocasa 6y agox86_64 is obviously derived from original x86 and is a rats nest of who owns what. The SSE3/4 extensions (which are supported by Rosetta 2) are obviously in Intel's camp.