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 645495
To view parent comment, click here.
To read all comments associated with this story, please click here.
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

FlyingJester Member since:
2016-05-11

Yeah, I would not call that emulation since the machine code runs on the host CPU, just with trapped instructions. Whether this happens beforehand with a recompilation (similar to a linker) or at runtime with traps is not so important.

Reply Parent Score: 2