Wine è un emulatore o un livello di compatibilità?


8

Ieri ho avuto una discussione accesa con uno dei miei amici (utente di Windows). Ha detto che Wine è solo un emulatore. Ho detto che nessun vino viene letto come "Il vino non è un emulatore". Poi mi ha dato molti link tra cui la pagina wiki di WineHQ . "Il vino non è quel tipo di emulatore" è scritto lì.

Quindi voglio chiedere se Wine è un emulatore perché si definisce "Wine non è un emulatore"?


7
Wine sta per " W ine I s N ot an E mulator".

1
Fagli leggere cosa c'è sotto la voce "Il vino non è quel tipo di emulatore".
Oxwivi,

È chiaramente scritto 'Wine non esegue alcuna emulazione della CPU, da cui il nome "Wine Is Not an Emulator".
Oxwivi,

Il vino non è quel tipo di emulatore ma è comunque un po 'emulatore ?? Wine non esegue alcuna emulazione della CPU, quindi cosa emula Wine?
puneet

emula solo le librerie di Windows . Quindi le chiamate API da un software vengono emulate, il resto del codice software non lo è, viene eseguito in modo nativo.
MestreLion,

Risposte:


14

Un programma in Windows fa ampio uso delle librerie standard che appartengono a Microsoft Windows. Queste librerie vengono riscritte e implementate in Wine in modo che facciano lo stesso. Più un programma è ben scritto e le librerie standard, maggiore è la possibilità che il programma funzioni in Wine.

Il codice di un programma viene prima esaminato per chiamare le librerie di Windows. Queste chiamate vengono tradotte in modo tale da richiamare le librerie di Wine. Quindi il codice del programma eseguito alla massima velocità. Non esiste un codice emulato, ma vengono tradotte solo le chiamate alle librerie.

Pertanto, in teoria. un programma dovrebbe funzionare alla stessa velocità di Microsoft Windows. In pratica, il programma potrebbe essere più lento, perché la traduzione è stata fatta. Ma esiste la possibilità che un programma funzioni più velocemente perché le librerie di Wine sono più semplici e perché l'accesso al disco è spesso più veloce in Linux.

Poiché Linux utilizza OpenGL, i programmi Windows che utilizzano OpenGL spesso funzionano bene in Wine. Linux non utilizza DirectX, tuttavia i giochi DirectX funzionano in Wine perché le chiamate DirectX possono essere tradotte da Wine in chiamate OpenGL.


4
In conclusione: Wine è un livello di compatibilità, non un emulatore.
Marco Ceppi

4

Dallo stesso link che hai indicato "Wine non esegue alcuna emulazione della CPU" Questo è ciò che fanno di solito gli emulatori (wii, psx, n64, ecc.)

Per una risposta più completa puoi leggere il primo paragrafo del link che hai fornito: non credo che nessuno possa spiegarlo in modo migliore.

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.