Linked by Thom Holwerda on Mon 12th Jun 2017 20:31 UTC, submitted by dionicio
Intel

You'd expect with Microsoft adding x86 emulation to its upcoming ARM-based windows 10 PCs all the possible licensing issues would be sorted. As ubiquitous as x86 is, it's easy to forget it's still a patent minefield guarded by Intel. And surprise, surprise, with the chipmaker under pressure from AMD and ARM, it felt the need to make that very, very clear. Dangling at the end of a celebratory PR blog post about 40 years of x86, Intel writes:

However, there have been reports that some companies may try to emulate Intel's proprietary x86 ISA without Intel's authorization. Emulation is not a new technology, and Transmeta was notably the last company to claim to have produced a compatible x86 processor using emulation ("code morphing") techniques. Intel enforced patents relating to SIMD instruction set enhancements against Transmeta's x86 implementation even though it used emulation. In any event, Transmeta was not commercially successful, and it exited the microprocessor business 10 years ago.

Only time will tell if new attempts to emulate Intel's x86 ISA will meet a different fate. Intel welcomes lawful competition, and we are confident that Intel's microprocessors, which have been specifically optimized to implement Intel's x86 ISA for almost four decades, will deliver amazing experiences, consistency across applications, and a full breadth of consumer offerings, full manageability and IT integration for the enterprise. However, we do not welcome unlawful infringement of our patents, and we fully expect other companies to continue to respect Intel's intellectual property rights. Strong intellectual property protections make it possible for Intel to continue to invest the enormous resources required to advance Intel's dynamic x86 ISA, and Intel will maintain its vigilance to protect its innovations and investments.

I'm assuming Microsoft has all this stuff licensed nice and proper, but it's interesting that Intel felt the need to emphasize this as strongly as they do here. Which companies is Intel referring to here? Maybe Apple?

Thread beginning with comment 645491
To view parent comment, click here.
To read all comments associated with this story, please click here.
Milan Kerslager
Member since:
2009-11-20

VT-x is hardware (ie. CPU based) support for the virtualisation. Without VT-x you may still use software virtualisation based on i386 capabilities and this is just slow, but it works. It could be speeded up by modifications of the virtualised system, but it is impossible for Windows as you have no source code and Microsoft will do nothing to help you. .

Reply Parent Score: 1

FlyingJester Member since:
2016-05-11

Are you sure that "software virtualization" isn't just, you know, emulation? Or is there actual dynamic recompilation happening?

Reply Parent Score: 2

galvanash Member since:
2006-01-25

Are you sure that "software virtualization" isn't just, you know, emulation? Or is there actual dynamic recompilation happening?


There are various approaches, but in simple terms it is just trapping on all memory access instructions and rewriting the segment addresses in the instruction stream. Its an elaborate form of segmented mode + some privilege ring manipulation.

Call it what you will. I have heard the term binary translation used to describe it and that seems appropriate. I just think calling it emulation is a bit much...

Edited 2017-06-13 00:18 UTC

Reply Parent Score: 3

cb88 Member since:
2009-04-23

Why would you need to do dynamic recompilation on when running x86 on x86... you don't. You just need to trap hardware accesses and such.

Reply Parent Score: 2