Misplaced Pages

IA-32 Execution Layer

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
(Redirected from IA-32 EL)
IA-32 Execution Layer
Original author(s)Intel
Stable release5336 / 5.3.81.31.21
Operating systemLinux, Windows Server
TypeEmulator
LicenseLGPL, Proprietary

The IA-32 Execution Layer (IA-32 EL) is a software emulator in the form of a software driver that improves performance of 32-bit applications running on 64-bit Intel Itanium-based systems, particularly those running Linux and Windows Server 2003 (it is included in Windows Server 2003 SP1 and later and in most Linux distributions for Itanium). The IA-32 EL bypasses the slow x86 hardware emulation which is available on pre-Montecito Itanium models.

The IA-32 EL used a two-phase (later three-phase) approach: initially it quickly translated every piece of code at a basic block level, adding certain instrumentation for detecting hot code; then hot code was dynamically optimized at a super-block level, and the optimized translated code replaced cold code on the fly. Later interpretation engine was added that allowed to avoid altogether translation of code executed just a few times - cold non-optimized translation became thus the second phase, and hot optimized translation became the third phase. IA-32 Execution Layer supported self-modifying code, and could even optimize it quite well.

Part of the software is under the LGPL and part is under an Intel proprietary license.

See also

References

  1. The IA-32 Execution Layer 4.3 Software Driver (microsoft.com)
  2. "IA-32 Execution Layer: Technical Whitepaper". Intel.
  3. "Intel Software Development Products". Intel. Archived from the original on April 23, 2007.

External links

Intel
Subsidiaries
Joint venture4Group Holdings (50% owned by Vantiva)
Products
Intel processors
Lists
Microarchitectures
IA-32 (32-bit x86)
x86-64 (64-bit)
x86 ULV
Current products
x86-64 (64-bit)
Discontinued
BCD oriented (4-bit)
pre-x86 (8-bit)
Early x86 (16-bit)
x87 (external FPUs)
8/16-bit databus
8087 (1980)
16-bit databus
80C187
80287
80387SX
32-bit databus
80387DX
80487
IA-32 (32-bit x86)
x86-64 (64-bit)
Other
CISC
iAPX 432
EPIC
Itanium
RISC
i860
i960
StrongARM
XScale
Related
Litigation
People
Founders
CEOs
Related


Stub icon

This emulation-related article is a stub. You can help Misplaced Pages by expanding it.

Categories: