Jump to content

IA-32 Execution Layer

From Wikipedia, the free encyclopedia
IA-32 Execution Layer
Original author(s)Intel
Stable release
5336 / 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[1] 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.[2] 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.[3]

See also

[edit]

References

[edit]
  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.
[edit]


pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy