Perché Windows 7 a 64 bit non può eseguire programmi a 32 bit?


9

Da quello che ho capito, l'architettura non è cambiata tanto quanto è passata da 16 bit a 32 bit, quindi perché abbiamo bisogno della modalità XP e simili per eseguire app a 32 bit in Windows 7 a 64 bit?

O ho capito male?


Avevamo un programma che non gli piaceva molto. Il vero problema alla fine si è ridotto a 64 bit di Office (avevamo un plugin di Office).
Giosuè,

Risposte:


16

può eseguire bene programmi a 32 bit. Non può eseguire programmi a 16 bit.

La modalità XP è un po 'assicurativa - se un particolare software non funziona su 7 (32 OR 64 bit - la modalità xp è disponibile per l'edizione professionale e su entrambi), è possibile eseguirlo in modalità XP. Questo non mi è ancora successo, ma probabilmente è per la folla "puoi prendere XP dalla mia mano morente".

Nella maggior parte dei casi, la modalità di compatibilità lo farà


Dang! Ho avuto problemi con l'esecuzione di alcune app come Visual Studio 6, Guitar Pro, ecc. E tutta la ricerca mi ha portato a vincere la modalità XP senza dire davvero perché. Grazie mille!
Oscar

2
Alcune app si lamentano, ma in teoria non c'è motivo per cui non è possibile eseguire app a 32 bit.
Shinrai,

@Oscar VS6 richiede MS Java.
Kinokijuf,

5

Spero che questo faccia luce sulle incompatibilità:

Microsoft ha deciso di rafforzare il kernel con le versioni a 64 bit. I driver di dispositivo hanno lo stesso livello di accesso all'hardware del kernel, quindi alcune cose specifiche che sono state modificate nelle versioni a 64 bit in nome della sicurezza sono:

  • I driver devono essere firmati da Microsoft per il caricamento.
  • Non so se tecnicamente i driver a 32 bit possono funzionare con un kernel a 64 bit (improbabile) ma Microsoft non sta firmando nuovi driver a 32 bit con la chiave richiesta dal kernel a 64 bit. Pertanto, tutti i driver XP a 32 bit esistenti non funzioneranno su Vista / 7 a 64 bit.
  • I driver non possono sovrascrivere o patchare il kernel.

Anche Microsoft è passato a un nuovo modello di driver di visualizzazione video (LDDM), ma ha mantenuto quello vecchio (XDDM). XDDM, il vecchio modello, non supporta Aero.

Alcuni programmi caricano i driver di dispositivo personalizzati al volo per svolgere le loro attività. Questi sicuramente non funzioneranno su Vista / 7.

Microsoft ha aggiornato alcuni componenti in Vista / 7. Ciò potrebbe significare un cambiamento nel comportamento non documentato di tali componenti. Anche i programmi che si basano su bug all'interno di questi componenti o funzioni DLL non documentate avrebbero un problema.


+1 per informazioni dettagliate sui driver di Windows a 32 e 64 bit. Ho un vecchio hardware audio (SW1000XG, UR-80) che funzionerà solo sulla mia installazione a 32 bit di Windows 7 ma non sulla mia installazione a 64 bit. È un vero peccato perché sono un bel kit classico.
therobyouknow,

"Non so se tecnicamente i driver a 32 bit possono funzionare con un kernel a 64 bit (improbabile)" . Non è impossibile nei sistemi operativi in ​​generale, ma farlo in Windows richiederebbe a tutti i driver di conformarsi ai modelli di driver con un isolamento molto più rigoroso dai vari dettagli interni del sistema operativo. Non vedo come si possa fare, ad esempio con il modello di driver di Windows o con i driver pre-WDM. WDF sarebbe più facile, ma non ancora una schiacciata.
Jamie Hanrahan,

2

I programmi a 32 bit dovrebbero funzionare bene con Windows a 64 bit.

La modalità XP è per programmi incompatibili con Windows Vista e Windows 7 di entrambi i tipi.

Vedi questo articolo Ars Technica per maggiori informazioni.

Il problema è arrivato al culmine con il rilascio di Windows Vista. La compatibilità di Vista con XP era molto buona, ma non era perfetta. Microsoft ha lavorato molto su Vista per indurirlo contro gli attacchi (UAC, ovviamente, ma anche altre cose, come vietare ai servizi di avere l'interazione dell'utente), e insieme queste modifiche e miglioramenti, insieme a cose più banali come l'aggiornamento del numero di versione che Windows ha cospirato per rompere alcuni vecchi software.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.