Win7 test via qemu su sistema con 2GB d ram

Area di discussione libera.

Moderatore: Staff

Regole del forum
1) Rispettare le idee altrui.
2) Evitare le offese dirette.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3797
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Win7 test via qemu su sistema con 2GB d ram

Messaggio da joe »

Ho copiato l'immagine ISO di un DVD di Win7/64bit e vorrei testarne la procedura d'installazione su una macchina virtuale prima di metterlo su un HDD, anche per verificare che la iso sia funzionante. Il tutto su slackware 14.0 a 32bit. Il problema è che il vecchio PC che ho sotto mano al momento ha 2GB di ram, mentre da MS i requisiti pare siano 2GB per W7.

Quindi in teoria dovrei lanciare qemu con l'opzione "-m 2G" in modo da dedicare ala macchina virtuale 2GB di memoria, Tuttavia questo non funziona funziona e qemu si lamenta che il massimo di memoria utilizzabile è 2047 MB. Il che ha anche un certo senso.
Passando meno memoria alla macchina ( ho provato anche il valore limite 2047) virtuale si ottiene una schermata Blu con errore 0x0000005D.

Il comando che ho utilizzato, in diverse salse è:

Codice: Seleziona tutto

qemu-system-x86_64 -hda win7.img -cdrom w7-universal-GSP1RMCPRXFREO_IT_DVD.iso -boot d -m 2047

Codice: Seleziona tutto

qemu-system-x86_64 -hda win7.img -cdrom w7-universal-GSP1RMCPRXFREO_IT_DVD.iso -boot d -m 2047 -cpu kvm64

Codice: Seleziona tutto

qemu-system-x86_64 -hda win7.img -cdrom w7-universal-GSP1RMCPRXFREO_IT_DVD.iso -boot d -m 2047 -no-kvm
In tutti i casi ottengo l'errore di cui sopra. Mi sto chiedendo se sia un problema dovuto al mix delle architetture:

Codice: Seleziona tutto

Host a 32 bit
Guest a 64bit
Oppure se possa dipendere semplicemente dalla memoria della macchina virtuale inferiore ai requisiti minimi di W7/64bit.
O ancora se sia eventualmente la ISO ad avere problemi, ma dubito...

La prova del nove più rapida la posso fare anche installando su un portatile fisico che dovrà ospitare poi il sistema, ma prima di buttarmi a pesce vorrei chiedere un parere anche a voi.
Cosa ne pensate?

Avatar utente
ponce
Iper Master
Iper Master
Messaggi: 3026
Iscritto il: mer 5 mar 2008, 16:45
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 6.6.16
Desktop: lxde
Località: Pisa
Contatta:

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da ponce »

i miei 2 centesimi di euro:
- non puoi far girare un sistema operativo a 64bit con kernel e qemu a 32bit;
- windows 7 gira anche con un giga di ram (in ufficio abbiamo diverse macchine riciclate che avevano solo quella disponibile).

rik70
Iper Master
Iper Master
Messaggi: 2492
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 15.0
Kernel: 5.15.x-generic
Desktop: Sway
Distribuzione: Arch Linux

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da rik70 »

ponce ha scritto:windows 7 gira anche con un giga di ram
Scusate se son sempre in mezzo alle scatole, ma confermo e anche di più:
Win7 starter 32bit ad es. gira con VirtualBox su un pentium4 2.8Ghz, 1 giga di ram e 496MB allocati per la macchina virtuale.

Offtopic: @joe
Se è per il laptop con 2GB di ram, lascia perdere i 64bit e installa la versione a 32.

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3797
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da joe »

Ma allora quanto scritto qui da MS non conta nulla?
LÌ dice che per W7/64bit il minimo di RAM è 2GB (mentre per la versione a 32bit, 1GB).

Però Rik se dici che tu fai girare W7/32bit su una macchina virtuale con mezzo giga di ram allora i limiti MS forse sono solo dei consigli non stringenti.
E quindi il fato che io non riesca a far girare il SO su qemu, potrebbe essere dovuto a quanto dice Ponce.
Però pensavo che col seguente comando fosse pssibile... nota il -no-kvm (lentezza a parte, tanto a me non interessava altro che un test).

Codice: Seleziona tutto

qemu-system-x86_64 -hda win7.img -cdrom w7-universal-GSP1RMCPRXFREO_IT_DVD.iso -boot d -m 2047 -no-kvm[/quote]


PS.
Si rik il portatile di destinazione è sempre quello.
Su quel portatile c'era Windows 7 a 64 bit.
Anche perchè in origine montava 4GB di ram.
Inoltre io ho sottomano il DVD della versione a 64bit.
E ancora inoltre non vorrei aggiungere troppe differenze col sistema di origine e la product key che dovrà attivare il prodotto, non so se il codice COA funzionerebbe anche con una versione a 32 bits...

Quindi come potrei fare eventualmente per fare il test d'installazione su macchina virtuale?
Devo usare qualcosa di diverso da qemu? tipo con virtualbox potrebbe fungere???

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3797
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da joe »

Ma siamo poi sicurissimi che non sia possibile emulare un sistema guest a 64bit con qemu su host a 32bit?
Scusate se insisto ma avevo letto questa domanda e risposta e mi pareva di aver capito che lo switch -no-kvm potesse rendere la cosa fattibile...

EDIT:
Ho trovato anche questa discussione, dove pare dicano la stessa cosa:
https://forums.gentoo.org/viewtopic-t-866381.html

Ovvero aggiungendo lo switch "-no-kvm" ecco che si dovrebbe riuscire ad emulare un sistema a 64bit pur lavorando da un host a 32bit.

rik70
Iper Master
Iper Master
Messaggi: 2492
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 15.0
Kernel: 5.15.x-generic
Desktop: Sway
Distribuzione: Arch Linux

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da rik70 »

joe ha scritto: se dici che tu fai girare W7/32bit su una macchina virtuale con mezzo giga di ram allora i limiti MS forse sono solo dei consigli non stringenti.
Pare proprio così, anche perché qui non c'inventiamo nulla:
Immagine
Immagine

Sul resto:
anch'io provai con qemu a far girare OS a 64bit: leggendo un po di documentazione pensavo fosse fattibile, ma non ci sono mai riuscito. Ma forse dipendeva da me e ora non ricordo bene com'era la faccenda: forse c'era un'opzione per emulare l'intero sistema a 64bit? Comunque non andava proprio.

Quanto a VirtualBox, a me non da la possibilità di impostare la macchina a 64bit, quindi quantomeno per questo prendo per buono quanto detto da ponce.

Avatar utente
ponce
Iper Master
Iper Master
Messaggi: 3026
Iscritto il: mer 5 mar 2008, 16:45
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 6.6.16
Desktop: lxde
Località: Pisa
Contatta:

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da ponce »

ponce ha scritto:- non puoi far girare un sistema operativo a 64bit con kernel e qemu a 32bit;
joe ha scritto:Ma siamo poi sicurissimi che non sia possibile emulare un sistema guest a 64bit con qemu su host a 32bit?
no, te lo dico cosi' per passare il tempo e confonderti le idee. ;)
joe ha scritto:Ho trovato anche questa discussione, dove pare dicano la stessa cosa:
https://forums.gentoo.org/viewtopic-t-866381.html

Ovvero aggiungendo lo switch "-no-kvm" ecco che si dovrebbe riuscire ad emulare un sistema a 64bit pur lavorando da un host a 32bit.
se hai voglia prova e facci sapere come e' andata.

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3797
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da joe »

Eh, il fatto è che ho già provato.... :D

Codice: Seleziona tutto

qemu-system-x86_64 -hda win7.img -cdrom w7-universal-GSP1RMCPRXFREO_IT_DVD.iso -boot d -m 2047 -no-kvm
E pur aggiungendo l'opzione -no-kvm per disabilitare KVM ottengo sempre una penosa schermata blu con codice d'errore: 0x0000005D
... che poi cercando in rete vedo che deriva proprio dal fatto di far girare un sistema guest a 64bit su un sistema host a 32..

Ovviamente con la mia domanda non volevo certo mettere in dubbio la tua prima risposta, volevo solo capirci di più...
Infatti per esempio il comando "qemu-sistem-x86_64" praticamente possiamo dire che sul mio sistema a 32 bit non è di nessuna utilità dico bene?

Io credevo che qemu lanciato con l'opzione -no-kvm fosse slegato dal sistema host e in tal modo emulasse una macchina predisposta con una CPU a 64bit.
Però evidentemente ho capito male, perchè se fosse vero quello allora il sistema guest a 64bit dovrebbe riconoscere la macchina virtuale che sta emulando una cpu a 64bit e non dovrebbe avere problemi ad avviarsi.

Per fare una prova ulteriore potrei provare un'altra iso di un qualche sistema a 64 bit, qualcosa di poco ingombrante da scaricare.. Avevo pensato a freedos-64 ma a quanto pare il sito di riferimento è ospitato su sourceforge che attualmente mi risulta fuori uso. Come dire... è un mondo difficile! :D

Mi sa che lascerò perdere e mi terrò la curiosità, non appena riesco a mettere mano al portatile proverò direttamente da là.

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3797
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da joe »

Per fare una prova ulteriore potrei provare un'altra iso di un qualche sistema a 64 bit, qualcosa di poco ingombrante da scaricare..
Tanto per la cronaca, questo comando ha funzionato:

Codice: Seleziona tutto

qemu-system-x86_64 -cdrom ~/Downloads/TinyCorePure64-6.3.iso -boot d -m 1.8G -no-kvm
La ISO in questione dovrebbe essere un sistema a 64 bit, tiny core appunto, si vede anche da quello che ritorna uname -a lanciato dallo stesso sistemino guest. In particolare io ho scaricato la versione a 64bit:
http://distro.ibiblio.org/tinycorelinux/ports.html
http://distro.ibiblio.org/tinycorelinux ... 64-6.3.iso

Prima ho provato senza aver caricato il modulo "kvm-intel" che dovrebbe attivare l'emulazione hardware o come si chiama... E senza l'opzione "-no-kvm". La ISO si avvia... e ritorna un prompt da cui lanciando "uname -a" si vede che siamo a 64 bit...
Poi ho provato lo stesso comando con l'opzione -no-kvm. Idem come sopra.
In questi due casi non stavo sfruttando la virtualizzazione "hardware", non avendo caricato il modulo necessario.. per con o senza l'opzione -no-kvm non dovrebbe cambiare nulla.
Dopo ho provato a caricare il modulo e lanciare il comando con l'opzione -no-kvm. Anche sta volta funziona.
Infine ho provato a lanciarlo senza l'opzione -no-kvm.
E mi aspettavo che non funzionasse perche "non si può eseguire un sistema guest a 64 bit su un host a 32, per di più usando la virtualizzazione 'hardware' ".
E invece il sistema tinycorepure64 si avvia anche sta volta.
Al che io non ci capisco più nulla come al solito...
So solo che se una cosa ti serve non funziona, mentre quando fai una prova al volo di utilità zero funziona tutto e anzi funziona anche quello che dovrebbe andare in crash. :evil:

A testimonianza di tutto ciò allego una schermata che ho fotografato:
http://s17.postimg.org/cweshyiov/tinycorepure64.jpg

Avatar utente
murdock
Linux 2.x
Linux 2.x
Messaggi: 477
Iscritto il: ven 25 mag 2007, 12:58
Slackware: 64 14.1
Kernel: 3.18.3
Desktop: KDE 4.14.3
Contatta:

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da murdock »

Pare sia un baco di QEMU, qui ne parlano : https://bugs.launchpad.net/qemu/+bug/921208
Per quanto ne so QEMU dovrebbe poter emulare la cpu 64 bit (come emula arm, mips, hppa etc.), inutile dire che questo incide parecchio sulle prestazioni.

Saluti,
MuRdOcK

Avatar utente
brg
Linux 3.x
Linux 3.x
Messaggi: 580
Iscritto il: sab 12 mar 2011, 14:20
Slackware: 15.0
Kernel: 5.15.117
Desktop: KDE5
Località: Montecatini
Contatta:

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da brg »

Ti sconsiglio di emulare un sistema operativo come Win7 senza KVM, ci invecchi solo a spostare il puntatore del mouse.

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3797
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da joe »

murdock ha scritto:Pare sia un baco di QEMU, qui ne parlano : https://bugs.launchpad.net/qemu/+bug/921208
Per quanto ne so QEMU dovrebbe poter emulare la cpu 64 bit (come emula arm, mips, hppa etc.), inutile dire che questo incide parecchio sulle prestazioni.
Grazie...
Non ho bene capito come si può quindi aggirare la cosa, ma mi pare che in fondo vi sia una patch da applicare per mettervi una pezza. In soldoni non hanno ancora risolto definitivamente il problema. Dal canto mio non ci penso neanche ad applicarla e mi fermo al bug con windows 7. E come dicevo se serve una cosa, di solito non funziona, per un motivo o per l'altro... :? Dev'essere un corollario di Murphy immagino... :roll:

Quello che conta è quanto affermi sul discorso architettura, che era anche quello che avevo capito io:
Qemu è in grado di emulare anche arm, mips, ecc ecc... Anche se non abbiamo sotto il cofano tali processori. Pertanto pur avendo un sistema operativo a 32bit non vedo perchè non sia possibile emulare un processore a 64bit quando si riesce ad emulare ARM o ALPHA...

D'altra parte per quet'emulazione cross architetturale se ho ben capito non si può utilizzare KVM perchè quello si basa sull'architettura per cui si è compilato il kernel, nel mio caso 32bit. E qui entrano in gioco le prestazioni compromesse. Ma a me non interessava questo discorso... Era solo per fare un test una tantum.

Invece continuo a non spiegarmi come sia possibile che una sistema a 64bit tinycorepure64 venga virtualizzato da qemu che gira su un host 32bit con KVM attivato.
Questo significa che non ho capito bene come gira il meccanismo... :|

Avatar utente
murdock
Linux 2.x
Linux 2.x
Messaggi: 477
Iscritto il: ven 25 mag 2007, 12:58
Slackware: 64 14.1
Kernel: 3.18.3
Desktop: KDE 4.14.3
Contatta:

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da murdock »

joe ha scritto:Invece continuo a non spiegarmi come sia possibile che una sistema a 64bit tinycorepure64 venga virtualizzato da qemu che gira su un host 32bit con KVM attivato.
Pare (dopo una veloce lettura) che QEMU prova ad attivare KVM considerando la macchina host e guest, se non riesce continua senza.

Saluti,
MuRdOcK

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3797
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da joe »

Mi hai dato il giusto hint! ;)
Infatti aggiungendo l'opzione -enable-kvm è come se si forzasse ad utilizzare KVM.

In quel modo effettivamente l'avvio non funziona come giustamente ci si aspetta: viene restituito l'errore:

Codice: Seleziona tutto

This kernel requires an x86_64 CPU but only detected an i386 CPU.
Unable to boot - please use a kernel appropriate for your CPU.
http://s4.postimg.org/99w4mcbq5/tinycor ... failed.jpg

Quindi ricapitolando.
  • La virtualizzazione kernel based o hardware che dir si voglia (KVM attivo per qemu ed equivalenti per altre applicazioni di virtualizzazione) non permette di far girare un sistema guest a 64bit su un host a 32bit.
    In qemu però è possibile virtualizzare in modo software una cpu a 64bit anche in ambiente host a 32bit, il tutto a scapito delle prestazioni.
    Questo comportamento è comunque automatico:
    Se si carica il modulo kvm del kernel (kvm-intel ad esempio) e si lancia qemu senza opzioni, KVM viene usato solo quando possibile (quindi tentando l'avvio di un guest a 64 da host a 32 viene automagicamente disabilitato e l'operazione riesce via emulazione software della CPU.
    Se si usano invece le opzioni -no-kvm oppure -enable-kvm si forza qemu a disabilitare o ad utilizzare forzatamente KVM (anche quando non possibile)... E in tal modo se l'operazione non è fattibile si ottiene un errore.

    Per quanto riguarda un guest windows 7 a 64 bit da un sistema host a 32 bit, non si riesce a causa di un bug come detto poco sopra.
La cosa sembra fattibile però da virtualbox:
Rik70 ha scritto:Quanto a VirtualBox, a me non da la possibilità di impostare la macchina a 64bit, quindi quantomeno per questo prendo per buono quanto detto da ponce.
http://superuser.com/questions/557888/e ... virtualbox
http://www.virtualbox.org/manual/ch03.h ... 4bitguests
Ultima modifica di joe il dom 26 lug 2015, 15:55, modificato 1 volta in totale.

rik70
Iper Master
Iper Master
Messaggi: 2492
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 15.0
Kernel: 5.15.x-generic
Desktop: Sway
Distribuzione: Arch Linux

Re: Win7 test via qemu su sistema con 2GB d ram

Messaggio da rik70 »

joe ha scritto:La cosa sembra fattibile però da virtualbox:
Rik70 ha scritto:Quanto a VirtualBox, a me non da la possibilità di impostare la macchina a 64bit, quindi quantomeno per questo prendo per buono quanto detto da ponce.
Ah bhe, dimenticavo di dire che io provavo su una cpu a 32 bit, ecco scoperto l'arcano.

A questo punto prova direttamente con virtualbox e preparati a una lunga serata ^^

Rispondi