Newsgroup: it.comp.lang.c
Titolo: Programmazione a 32 3 64bit

Salve,
ho una curiosita'.
Si sente spesso parlare di applicazione a 32 o a 64 bit.
Mi chiedo: a livello di codice sorgente come si fa a creare un apps a 32 o
un apps a 64 bit? Quali sono le differenze?
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ha scritto nel messaggio
news:bu8kd7$k7m$1...@news.newsland.it...


 del calcolo scientifico.
aspetta che arrivi il prossimo Windows_XP_superfronzolo_megaIntergalattic
che impiegherà 3 min a fare il boot anche su un dual opteron e vedrai che
serve....
E poi sono molti che seguono la moda, anche nel mondo informatico, ed ora la
moda sono i 64 bit...
Ciao

 del calcolo scientifico.
Mah.. stando alla politica di mercato AMD ed del successo del Opteron (e ora
di Athnlon XP 64) mi sento di dire che credo proprio che nel giro di un paio
di anni i processori 64bits sui pc di casa saranno mooooolto comuni.
Tommy

 wrote


capisco quello che dici ma ricordati che quando si stava per passare ai 32
bits c'era molta gente che diceva che era solo una moda e non era affatto un
passaggio indispensabile.....
Detto questo un sistema *realmente* a 32 bits non puo' indirizzare piu' di
4GB di memoria e... siamo davvero vicino a quel punto coni PC di casa e...
abbiamo raggiunto quel punto con i servers.
Dico *realmente* in quanto intel dal pentium pro in poi ha un physical
address space di 36 bits e puo' indirizzare fino a 64GB. Come vedi, gia' nel
1995, al tempo del Pentium pro si accorsero che 32 bits non sarebbero
bastati a lungo ;-)
Ora il Pentium 4 ha sempre 36bits...
C'e' da aggiungere che nonostante il P4 puo' indirizzare fino a 64GB molti
sistemi operativi non sfruttano questa cosa... anche quelli che esistono in
versione 32 e 64 bits... Insomma cercano di evitare questa via di mezzo dei
36 bits.
Altri O.S. che supportano questa cosa, come windows ad esempio hanno dei
nomi strani "Address Windowing Extension" e per abilitarla bisogna
sovrascrivere alcuni files con altri files e configurare in modo diverso il
boot.ini.
Ricordo inoltre che in molti casi 4GB di memoria significa avere solo 2GB
per applicazione.
Oltre al discorso della memoria c'e' ovviamente anche il discorso che si
faceva prima, ovvero che per ogni ciclo di clock si possono processare 64
bits invece che 32. Se uno usa strutture dati a 64bits la cosa e' molto
vantaggiosa.
Ad esempio un programma di scacchi che usi "rotated bitboards" come
struttura dati principale puo' praticamente raddoppiare il numero di nodi al
secondo che vengono calcolati a parita' di Mhz solo per il passaggio ad un
processore a 64bits invece che a 32.
Tommy

... certamente!
Con un po' di fantasia si possono creare
campi di bit lunghi quanto si vuole, ma
se il computer è in grado di processare 
solo 32 bit alla volta, fisicamente non
cambia niente.
... pensate davvero che in futuro i 64b
soppianteranno i 32b? Chissà in termini
di prezzi di mercato come si svolgerà la
faccenda.
luke


 faccenda.
C'è poco da pensare: i piani di AMD prevedono
la produzione di athlon 64 e opteron negli stessi
volumi dell'athlon XP attuale (7-8 milioni di pezzi)
entro la fine di questa estate: significa che
avrai sul mercato Athlon64 allo stesso prezzo
dell'athlon XP (prima che scompaia: è previsto
infatti l'uso delle stesse linee di produzione
che ora sfornano XP). Quindi, dovendo scegliere
fra un 32 bit e un 64 bit allo stesso prezzo, la
scelta è facile...

 scelta č facile...
Si, anche perche' la nuova architettura AMD64 (opteron, athlon 64 o athlon
FX) ha altri vantaggi oltre a quello di essere 64bits. Ad esempio, ha piu'
registri general purpose e quindi anche le applicazioni che non sfrutteranno
i 64bits andranno comunque piu' veloci grazie al radoppiato numero di
registri (bisognera' ri-compilare l'applicazione per architettura AMD64 per
poter utilizzare tutti i registri).
E poi qua in Inghilterra un AMD Athlon XP 64 3000+ si trova a 160 pounds
(circa 220 euro), mi sembra che per essere uscito da poco e poco comune
ancora abbia prezzi molto ragionevoli. Ad esempio mi sembra molto meno
ragionevole (sempre sullo stesso sito) un Pentium 4 2.8Ghz sempre a 160
pounds oppure un Athlon XP 32 3200+ a 170 pounds.
Insomma AMD sta davvero abbassando i prezzi per lanciare il prodotto, poi
ovvio che la versione  64-3200+ (che ha lo stesso clock ma piu' cache) costa
di piu' e ... ovvio che la FX-51 (che e' di fatto un opteron 1-way) costa
molto molto di piu'!
Tommy

 per applicazione.
Questo  e`  molto aleatorio  :)  Dipende  dall'OS. Windows Server  EE[1]
permette di avere uno split 1/3 (kernel space/userspace). Sotto linux la
cosa e` configurabile e si puo`  ottenere uno split 4GB/4GB (due address
space  separati) con  una patch  di Ingo  Molnar. La limitazione  non e`
hardware.
f/up su un gruppo piu` appropriato.
ciao,
Luca
[1] Expensive Edition
-- 
Home: 
http://kronoz.cjb.net
"La mia teoria scientifica preferita e` quella secondo la quale gli 
 anelli di Saturno sarebbero interamente composti dai bagagli andati 
 persi nei viaggi aerei." -- Mark Russel

 permette di avere uno split 1/3 (kernel space/userspace).
Si... non importa, il mio era un esempio (ho detto in molti casi...) il
punto era che che un address space di 4GB presto non bastera piu'....
Poi ovvio che questo non e' il NG adatto ed ho toccato argomenti in modo
veloce ed impreciso.... quindi ha ragione a riprendermi kronos.... ma io
volevo buttare li un paio di cose senza approfondire troppo!
Se volete potete ovviamente approfondirli meglio sul followup che avevi
impostato... ma io non ho voglia di seguire anche un altro NG e quindi
rispondo per l'ultima volta su questo thread in quest NG.... e credo che
questi 4 scambi, anche se un po' OT, siano stati interessanti per tutti ;-)
Tommy