Hardware & PC

Windows XP e il trucco invisibile che faceva girare (quasi) tutti i programmi

Windows XP e il trucco invisibile che faceva girare (quasi) tutti i programmi Fonte: Hardware Upgrade
Ascolta questo articolo
Durata stimata: ~3
Dietro la leggendaria compatibilità di Windows XP c'era un database segreto di shim e correzioni: ecco come il sistema 'mentiva' ai programmi per farli funzionare

Windows XP, lanciato il 25 ottobre 2001, è ancora oggi ricordato come uno dei sistemi operativi più compatibili di sempre. Riusciva a eseguire senza problemi gran parte del software scritto per Windows 95 e 98, nonostante il passaggio al kernel Windows NT. Dietro questa apparente magia, però, c'era un lavoro enorme fatto di correzioni mirate, progettate da Microsoft per non rendere inutilizzabile il parco software esistente.

Il database segreto in C:\WINDOWS\AppPatch

Il cuore del meccanismo era l'Application Compatibility Database, una raccolta di file binari con estensione .sdb conservati nella cartella C:\WINDOWS\AppPatch. Raymond Chen, storico ingegnere Microsoft, spiegò già nel 2003 che il formato binario serviva per scansionare le informazioni in modo rapidissimo. Al debutto di XP, il database principale Sysmain.sdb conteneva circa 200 correzioni di compatibilità. Il sistema non si limitava a controllare il nome dell'eseguibile: per identificare con precisione un programma usava dimensione, checksum, versione, data e persino la presenza di altri file nella cartella.

Quando trovava una corrispondenza, Windows attivava uno shim, un piccolo strato software interposto tra l'applicazione e il sistema operativo. Lo shim intercettava le chiamate alle API di Windows e poteva modificarne i parametri, alterare il risultato restituito o eseguire codice aggiuntivo. Un esempio classico era Win98VersionLie: se un programma pretendeva di girare solo su Windows 98, XP gli restituiva le informazioni di Windows 98 pur eseguendolo su XP. In pratica, il sistema mentiva deliberatamente all'applicazione. Anche le modalità di compatibilità non erano versioni ridotte di vecchi Windows, ma combinazioni di shim: la modalità Windows 95 in XP raggruppava circa 50 correzioni comuni.

La filosofia 'compatibilità bug per bug'

Il meccanismo poteva spingersi molto più a fondo. Tra gli shim preferiti da Chen c'era EmulateHeap, capace di sostituire l'heap di Windows XP con una replica del gestore di memoria di Windows 95. Alcuni programmi dipendevano da comportamenti non documentati del vecchio sistema, come usare memoria appena liberata o fare supposizioni sugli indirizzi restituiti. Invece di bloccare l'esecuzione, Microsoft forniva al processo un comportamento compatibile con quello a cui era abituato. Chen ha definito questa strategia 'compatibilità bug per bug'. Gli shim, però, non risolvevano tutto: non potevano modificare i confini di sicurezza né correggere incompatibilità dei driver in modalità kernel.

La ragione di tanto impegno era anche economica: ogni applicazione bloccata rappresentava un motivo per non aggiornare Windows. 'Basta un solo programma incompatibile per rovinare un aggiornamento', ha spiegato Chen. Nelle aziende il problema era sentito: quasi ogni organizzazione aveva almeno un'applicazione 'deal-breaker', spesso un software interno in Visual Basic il cui sviluppatore aveva lasciato l'azienda. Il database continuò a essere aggiornato anche dopo il lancio: nell'aprile 2011, un update per XP SP3 portò Sysmain.sdb a 1.206.508 byte, circa 1,2 MB. Per l'utente tutto restava invisibile: doppio clic sull'icona e il programma partiva. Dietro quel gesto c'era una strategia pragmatica che contribuì in modo decisivo alla reputazione di XP come sistema capace di far funzionare quasi tutto.

Approfondimento completo su Hardware Upgrade

Questa notizia è stata originariamente pubblicata e verificata dalla redazione di Hardware Upgrade. Per consultare il report integrale, i benchmark dettagliati, le interviste o i commenti della community, visita l'articolo originale.

Leggi l'articolo originale su Hardware Upgrade
Tutte le notizie di Hardware & PC Torna alla Home

Altre notizie su Hardware & PC

Mostra tutte
Novità Hardware & PC Smart TV Metz 4K su AliExpress a 216€: qualità sorprendente a prezzo record Tom's Hardware Italia
A cura di NewsUp.it Oggi, 15:13

Smart TV Metz 4K su AliExpress a 216€: qualità sorprendente a prezzo record

Su AliExpress la Smart TV Metz 4K UHD con Google TV parte da 216€: HDR10, MEMC, Dolby Audio e controllo vocale in 43 o 55 pollici. Un rapporto qualità-prezzo difficile da battere

Leggi
Novità Hardware & PC Mini PC MLLSE M3 Pro a 100€: la soluzione economica per navigare e lavorare Tom's Hardware Italia
A cura di NewsUp.it Oggi, 15:08

Mini PC MLLSE M3 Pro a 100€: la soluzione economica per navigare e lavorare

Su AliExpress spunta un mini PC da 100€ con Intel Core i5-4310U, 8GB di RAM, SSD da 128GB e Windows 11: non sarà un fulmine, ma per l'uso quotidiano basta e avanza

Leggi
Novità Hardware & PC Windows 11 26H2 avviato con 128 MB di RAM: esperimento riuscito ma con limiti Tom's Hardware Italia
A cura di NewsUp.it Oggi, 14:50

Windows 11 26H2 avviato con 128 MB di RAM: esperimento riuscito ma con limiti

Lo sviluppatore NTDEV ha avviato Windows 11 26H2 con soli 128 MB di RAM, mantenendo desktop, Esplora file e Blocco note. Un esperimento che spinge al limite il sistema operativo di Microsoft

Leggi
Novità Hardware & PC Spunta un prototipo AMD con quattro Radeon RX 470 e 32 GB di memoria Hardware Upgrade
A cura di NewsUp.it 10 min fa

Spunta un prototipo AMD con quattro Radeon RX 470 e 32 GB di memoria

Online emerge un insolito PCB con quattro GPU Radeon RX 470 da 8 GB ciascuna: 32 GB totali di GDDR5 e quattro connettori a 8 pin. L'ipotesi più accreditata è il mining di criptovalute

Leggi

Accesso Richiesto

Per votare le notizie devi essere registrato e aver effettuato l'accesso con il tuo account.

Accedi Ora