Win7 64 con programmi 32 bit

enryeffe 18-02-15 23.37
Salve a tutti, avrei un quesito; Ho installato windows 7 ultimate 64 bit. Facendo girare cubase a 32 bit, e quindi vst a 32 bit, riesco ad avere dei vantaggi rispetto a farlo girare su windows a 32 bit? ho installato 8 giga di RAM .
FranzBraile 19-02-15 00.04
Secondo me.... nessun vantaggio!
Hai un'autostrada a 64 corsie.... ma solo 32 auto che procedono affiancate e dietro ci sono altre 32 e poi altre 32 e cosi via.....
In altre parole la metà della "autostrada" usando programmi a 32bit su sistema a 64 rimane vuota.
mima85 19-02-15 09.31
No, nessun vantaggio. Gira esattamente come se girasse su un sistema operativo a 32 bit.
Spirit 19-02-15 09.39
l'unico vantaggio dei 64bit e che la memoria ram viene vista tutta e non è ridotta ai 3GB dei sistemi operativi a 32 bit. Questo dovrebbe tornare utile nell'utilizzo di vsti con librerie di campioni.
JoelFan 19-02-15 09.57
@ FranzBraile
Secondo me.... nessun vantaggio!
Hai un'autostrada a 64 corsie.... ma solo 32 auto che procedono affiancate e dietro ci sono altre 32 e poi altre 32 e cosi via.....
In altre parole la metà della "autostrada" usando programmi a 32bit su sistema a 64 rimane vuota.
In realtà qualche piccolo vantaggio c'è.

Ad esempio il Kernel del sistema operativo può non ingombrare i 3 GB, liberando spazio per la DAW a 32 bit. Se poi hai qualche altro programma a 64 bit, Antivirus, Office, etc.. che usi contemporaneamente, questo può andare ad occupare memoria sopra quella indirizzabile dai 32 bit, ancora liberando spazio per la DAW a 32 bit.
mima85 19-02-15 10.19
Ah beh in questo senso si, se si ha tanta RAM a disposizione.

In ogni caso da quel che so il programma a 32 bit non può indirizzare più memoria di quei 3 e rotti GB, anche se sulla macchina di memoria ne sono installati 16 GB. Il vantaggio è che avendo tanta RAM ed il sistema operativo a 64 bit, il programma a 32 bit si può prendere la sua partizione di RAM di 3 giga e rotti con comodità, senza andare a rompere le balle ad altra roba che gira in multitasking.

Altri vantaggi che io sappia non ce ne sono (tanti per esempio pensano che a far girare programmi a 32 bit su sistemi a 64 bit questi si velocizzino, ma non è vero).
Edited 19 Feb. 2015 9:20
enryeffe 19-02-15 23.32
Era in effetti il ragionamento che ho fatto io. Però, la gestione della RAM non dovrebbe essere fatta dal sistema operativo? cioè, se il sistema è a 32 bit, dei 3 giga di RAM farà utilizzare a CUBASE quello che è libero. Se il sistema è a 64 bit, e quindi mi legge gli 8 giga di RAM non dovrebbe far gestire a CUBASE nello stesso modo la RAM che rimane?
mha , esiste qualche programma per controllare questa gestione della memoria ?
ziokiller 19-02-15 23.56
Un sistema a 32 bit non prende "3 Giga e rotti" ma esattamente 4 Gb, ovvero 2^32 (si legge due elevato alla trentaduesima) che fa 4294967296 (quattro miliardi duecentonovantaquattro milioni seicentosessantasette mila duecentonovantasei) che diviso 1024 e diviso ancora 1024 fa esattamente 4096 Megabyte, cioè 4 Gb.

Il discorso dei "3 Giga e rotti" non è un limite dei 32 bit ma era una caratteristica di Windows che alloca parte della RAM per... una cosa troppo difficile da spiegare, comunque per i fatti suoi, lasciandone liberi "3 e rotti" per l'utente.

Un programma a 32 bit eseguito su WOW64 in un sistema con più di 4 Gb può usufruire di esattamente 4 Gb di spazio RAM.
enryeffe 20-02-15 14.43
Grazie ziokiller
mima85 20-02-15 15.10
@ ziokiller
Un sistema a 32 bit non prende "3 Giga e rotti" ma esattamente 4 Gb, ovvero 2^32 (si legge due elevato alla trentaduesima) che fa 4294967296 (quattro miliardi duecentonovantaquattro milioni seicentosessantasette mila duecentonovantasei) che diviso 1024 e diviso ancora 1024 fa esattamente 4096 Megabyte, cioè 4 Gb.

Il discorso dei "3 Giga e rotti" non è un limite dei 32 bit ma era una caratteristica di Windows che alloca parte della RAM per... una cosa troppo difficile da spiegare, comunque per i fatti suoi, lasciandone liberi "3 e rotti" per l'utente.

Un programma a 32 bit eseguito su WOW64 in un sistema con più di 4 Gb può usufruire di esattamente 4 Gb di spazio RAM.
Che 2^32 faccia 4 GB lo so, più che altro pensavo che quella dei 3.25 GB massimi indirizzabili fosse una limitazione dell'architettura di Windows a 32 bit. Non credevo che invece fosse dovuta ad una porzione di memoria che Windows si prende per i fatti suoi e non mette a disposizione delle applicazioni.

Così a grandissime linee, per non farti entrare troppo nei dettagli visto che dici che è una roba difficile da spiegare, a cosa sarebbe dovuta questa riserva di memoria di cui Windows si appropria?

EDIT: niente lascia perdere, ho trovato questa pagina. Mo me la leggo.
Edited 20 Feb. 2015 14:15
ziokiller 20-02-15 16.29
Eh mi ricordavo che era una cosa complicata, in effetti è ancora più complicata di quanto ricordassi emo

andrew1 20-02-15 16.57
Per rimanere sul semplice emoemo vi dico che sono passato dai SO Linux e W7 a 32 bit a quelli a 64 bit sulla STESSA macchina (con 6GB di RAM) e devo dire che la velocità non è che sia raddoppiata.

E' migliorata in entrambi i casi, ma non di molto, forse di un 40-50% ( e linux ha le appl a 64 bit).

Molto meglio quando ho sostituito il disco tradizionale con uno SSD.

Anche perchè alla fine dipende anche da altre cose oltre al so ed alle appl, come ad esempio dalla velocità della ram e dalla velocità del bus.
Edited 20 Feb. 2015 16:00
mima85 20-02-15 17.10
@ ziokiller
Eh mi ricordavo che era una cosa complicata, in effetti è ancora più complicata di quanto ricordassi emo

Ma alla fine nemmeno tanto (per chi mastica l'informatica intendo)... il problema sostanzialmente nasce dalla possibile sovrapposizione tra gli indirizzi I/O delle periferiche e gli indirizzi di memoria RAM.

Da quel che ho capito il bus PCI/AGP da specifiche indirizza a partire dalla locazione 2^32 - 1 (0xFFFFFFFF) a scendere, e con grossi quantitativi di memoria RAM c'è il rischio che la fascia di indirizzi occupata dalle periferiche (in particolar modo in presenza di schede grafiche con grosse quantità di memoria dedicata) vada a cozzare con gli indirizzi della memoria RAM di sistema. Questo genererebbe conflitti che farebbero piantare la macchina.

In realtà le CPU x86 a partire dal Pentium Pro - classe 1995 - sono in grado di indirizzare nativamente fino a 64 GB di memoria RAM, per via del bus indirizzi a 36 bit (ci sono proprio 36 pin fisici sul processore dedicati all'indirizzamento della memoria, quindi abbiamo 2^36 byte di memoria indirizzabili), di conseguenza il problema della sovrapposizione tra indirizzi di I/O delle periferiche e quelli della memoria RAM il sistema operativo lo risolve "saltando" la fascia occupata dagli indirizzi delle periferiche, nel caso sul sistema siano installati più di 4 GB di RAM (se il BIOS supporta questa funzione), e ripartendo ad usare la RAM dai 4 GB in su. In sostanza accade una cosa del genere:

.......................| <-- RAM oltre i 4 GB
.......................|
.......................|
--------------------- <-- Soglia dei 4 GB
************|
************| <-- Fascia degli indirizzi I/O delle periferiche
************|
.......................|
.......................|
.......................| <-- RAM sotto i 4 GB
.......................|
.......................|

Se invece sono installati 4 GB di RAM oppure il BIOS non supporta questa funzione, che si chiama "Memory Hole Remapping", il sistema operativo semplicemente interdice la parte di RAM che risiede nella fascia di indirizzi riservati agli I/O delle periferiche, proprio per evitare sovrapposizioni di indirizzi tra periferiche e memoria. Per questo qualsiasi OS a 32 bit, in presenza di 4 GB di RAM, ne fa vedere di meno.

Un OS a 32 bit quindi può effettivamente arrivare fino a 4 GB di RAM totali (non può superarli però per evidenti motivi) qualora sul sistema siano installati più di 4 GB, perché BIOS permettendo allocherebbe quella fascia di memoria dopo i 4 GB necessaria a raggiungere questo quantitativo, fascia della stessa dimensione di quella usata dall'indirizzamento delle periferiche, come tra l'altro si vede dallo schemino sopra (ci sono 3 righe di I/O periferiche, e 3 di RAM oltre i 4 GB). In effetti Linux e le versioni server di Windows a 32 bit ci arrivano a 4 GB, se sul computer ne sono installati di più, pur non andando oltre (anche con 32 GB di RAM il sistema ne indirizzerebbe sempre solo 4).

Perché la famiglia "client" di Windows a 32 bit (XP, Vista, 7, 8) non lo fa allora? Semplice, per ragioni di licenza. Per Microsoft questi sistemi operativi non devono essere in grado di indirizzare più di 4 GB di memoria, di conseguenza anche installando più di 4 GB di RAM per queste versioni di Windows sulla macchina saranno sempre installati solo 4 GB di RAM, e ne permetterà l'utilizzo solo di 3.25.

Thankso ZioKiller perché mi ha fatto venir curiosità e mi ha spinto ad approfondire la questione emo
Edited 20 Feb. 2015 16:37
Dantes 20-02-15 17.20
un plauso emo e thanks allo zio a mima per questa spiegazione definitiva!!
mima85 20-02-15 17.31
@ Dantes
un plauso emo e thanks allo zio a mima per questa spiegazione definitiva!!
Denghiu emo
maxpiano69 21-02-15 00.48
Anche io mando un thanks a mima che mi ha fatto venire voglia di rispolverare certi argomenti, comunque per amor di precisione non é vero che "qualsiasi" sistema operativo a 32 bit possa indirizzare al max 4Gb, come si legge dal link di wikipedia che hai postato versione in inglese ci sono degli OS (Linux, alcune versioni di Windows Server e Mac OS) in grado di gestire il PAE mode correttamente

[c](...)As the new physical addresses are above the 4 GB point, addressing this RAM does require that the operating system be able to use physical addresses larger than 232.[14] This capability is provided by PAE. Note that there is not necessarily a requirement for the operating system to support more than 4 GB total of RAM, as the total RAM might be only 4 GB
(...)Many x86 operating systems, including any version of Linux with a PAE kernel and some versions of Windows Server and Mac OS, support the use of PAE to address up to 64 GB of RAM on an x86 system.[/c]
Edited 21 Feb. 2015 9:50
enryeffe 21-02-15 10.16
Thanks inviato e strameritato
Edited 22 Feb. 2015 22:50
mima85 21-02-15 13.41
maxpiano69 ha scritto:
non é vero che "qualsiasi" sistema operativo a 32 bit possa indirizzare al max 4Gb, come si legge dal link di wikipedia che hai postato


maxpiano69 ha scritto:
ci sono degli OS (Linux, alcune versioni di Windows Server e Mac OS) in grado di gestire il PAE mode correttamente


Se sono a 32 bit, quegli OS devono gestire il PAE Mode per superare la barriera fisica dei 4 GB di RAM, ed andare a riprendersi la porzione di memoria sita oltre questa barriera (e non indirizzabile senza il driver PAE Mode), i cui indirizzi sotto i 4 GB sono stati riservati alle periferiche, e di conseguenza inibiti all'accesso verso la RAM. Ma la quantità di memoria che andranno a prendersi oltre quei 4 GB fisici sarà sempre solo quella necessaria per arrivare a 4 GB totali, come si evince da qui:

Wikipedia:
As the new physical addresses are above the 4 GB point, addressing this RAM does require that the operating system be able to use physical addresses larger than 2^32.[14] This capability is provided by PAE. Note that there is not necessarily a requirement for the operating system to support more than 4 GB total of RAM, as the total RAM might be only 4 GB


La RAM totale sarà sempre di 4 GB sui sistemi a 32 bit, non di più, anche se la porzione per arrivare a questa capacità sarà ricavata dalla parte di memoria oltre i primi 4 GB fisici, usando appunto il driver PAE.
Edited 21 Feb. 2015 12:44
mima85 21-02-15 13.41
@ enryeffe
Thanks inviato e strameritato
Edited 22 Feb. 2015 22:50
Urca... spero che quel trans non abbia il mio indirizzo di casa... emo

Grazie comunque emo
maxpiano69 21-02-15 13.56
@ mima85
maxpiano69 ha scritto:
non é vero che "qualsiasi" sistema operativo a 32 bit possa indirizzare al max 4Gb, come si legge dal link di wikipedia che hai postato


maxpiano69 ha scritto:
ci sono degli OS (Linux, alcune versioni di Windows Server e Mac OS) in grado di gestire il PAE mode correttamente


Se sono a 32 bit, quegli OS devono gestire il PAE Mode per superare la barriera fisica dei 4 GB di RAM, ed andare a riprendersi la porzione di memoria sita oltre questa barriera (e non indirizzabile senza il driver PAE Mode), i cui indirizzi sotto i 4 GB sono stati riservati alle periferiche, e di conseguenza inibiti all'accesso verso la RAM. Ma la quantità di memoria che andranno a prendersi oltre quei 4 GB fisici sarà sempre solo quella necessaria per arrivare a 4 GB totali, come si evince da qui:

Wikipedia:
As the new physical addresses are above the 4 GB point, addressing this RAM does require that the operating system be able to use physical addresses larger than 2^32.[14] This capability is provided by PAE. Note that there is not necessarily a requirement for the operating system to support more than 4 GB total of RAM, as the total RAM might be only 4 GB


La RAM totale sarà sempre di 4 GB sui sistemi a 32 bit, non di più, anche se la porzione per arrivare a questa capacità sarà ricavata dalla parte di memoria oltre i primi 4 GB fisici, usando appunto il driver PAE.
Edited 21 Feb. 2015 12:44
É scritto male quel secondo pezzo e stava ingannando anche me, ma non é cosí come puoi leggere meglio qui http://it.m.wikipedia.org/wiki/Physical_Address_Extension

Linux con kernel PAE a 32 bit puó gestire fino a 64GB ad esempio ed altri OS a 32 bit, di cui puoi leggere sempre in quella pagina, superano la barriera dei 4GB.
Server che gestivano piú di 4GB ce ne sono stati ben prima dell'avvento degli OS a 64 bit, non avrebbero potuto funzionare altrimenti.
Edited 21 Feb. 2015 13:00