A livello di codice di programmazione, una singola funzione può raccontare molto: sulle scelte progettuali del passato, sui limiti dei compilatori e perfino sul lavoro degli sviluppatori che realizzano emulatori e sistemi di compatibilità. Una curiosa vicenda ricordata da Raymond Chen, storico ingegnere Microsoft e autore del blog The Old New Thing, riporta l’attenzione sugli anni in cui Windows doveva eseguire software x86 a 32 bit su processori completamente differenti. In quel periodo Microsoft sviluppò più volte tecnologie di emulazione e traduzione binaria per garantire la compatibilità applicativa, una necessità che ha accompagnato l’evoluzione di Windows dai processori MIPS e Alpha fino alle piattaforme ARM più recenti.

La compatibilità con il software esistente rappresenta da decenni uno dei principali fattori di successo di Windows. Per raggiungere l’obiettivo, però, non basta interpretare le istruzioni della CPU originale: servono prestazioni accettabili. Così nacquero sofisticati sistemi di traduzione dinamica del codice macchina, capaci di convertire istruzioni x86 in codice nativo eseguibile dalla piattaforma ospite. Una tecnica che oggi appare normale, ma che già negli anni ’90 richiedeva soluzioni ingegneristiche notevoli.