Differenza tra download di i386 e amd64?


164

Qual è la differenza tra il download i386 standard e il download amd64 di Ubuntu 11.04? Attualmente sto utilizzando l'i386 su una macchina AMD, il mio sistema funzionerebbe meglio con il download AMD64? (la mia macchina funzionava con Windows 7 a 64 bit, ma ho trascurato di guardarlo prima di installare Ubuntu).



Risposte:


165

i386 si riferisce all'edizione a 32 bit e amd64 (o x86_64) si riferisce all'edizione a 64 bit per processori Intel e AMD.

Voce i386 di Wikipedia:

L'Intel 80386, noto anche come i386, o solo 386, era un microprocessore a 32 bit introdotto da Intel nel 1985 ... Questo è chiamato architettura x86, IA-32 o i386, a seconda del contesto.

Voce x86_64 di Wikipedia:

x86-64 è un'estensione del set di istruzioni x86. Supporta spazi di indirizzi fisici e virtuali molto più grandi di quelli possibili su x86, consentendo così ai programmatori di lavorare comodamente con set di dati molto più grandi ... Dopo aver avviato l'architettura con il nome "x86-64", AMD l'ha ribattezzata AMD64 ... x86 -64 è ancora usato da molti nel settore come termine neutrale rispetto al fornitore, mentre altri, in particolare Sun Microsystems (ora Oracle Corporation) e Microsoft, usano x64.

Anche se hai una CPU Intel, dovresti usare AMD64 per installare 64 bit sul tuo computer (usa gli stessi set di istruzioni).

Consiglio vivamente di usarlo. Per la maggior parte non noterai alcuna differenza ma per grandi carichi di lavoro (come editing video, giochi, ecc.), Il computer funzionerà più velocemente (il computer ha la capacità di calcolare 2 + 2 + 2 = 6 invece di dover fare 2 + 2 = 4 + 2 = 6 in un esempio). Nel mondo Windows, un sistema operativo a 32 bit non ti consentirà di utilizzare più di 3,5 GB di RAM sul tuo computer (anche se ne hai 8!). Dovresti utilizzare un sistema operativo a 64 bit per utilizzare completamente tutta la RAM. Per Linux, tuttavia, non esiste un limite del genere (grazie, Uri).

Indipendentemente da ciò, il mondo è passato da 32 bit ed è lì solo per supportare macchine più vecchie che non sono in grado di eseguire 64 bit.


L'ultima parte, ora è (ovviamente in Linux) Proprio non vera, PUOI usare più di 3,5 GB di RAM con il kernel PAE a 32 bit.
Uri Herrera,

la limitazione della RAM di 3,5 gb a 32 bit non sarebbe 4 gb- <memoria della scheda grafica>?
Chriskin,

3
Per semplicità ho omesso tecnicismi come la memoria della scheda grafica. Il mio obiettivo era quello di dire "se hai più di 3,5-4 concerti, usa 64 bit".

1
@Treefroginc What Tweaks esatti?
Uri Herrera,

1
64 bit è utilizzabile e stabile quanto 32 bit con l'eccezione quasi trascurabile di Flash in determinate circostanze durante una certa ora del giorno e se i pianeti si allineano emettendo raggi cosmici.

41

L'architettura prende il nome da AMD perché AMD l'ha inventata, con l'Athlon 64. Allo stesso modo, l'architettura i386 a 32 bit prende il nome dal processore Intel 386, perché era il primo del suo genere, ma i386 funzionerà anche con i processori AMD. Quindi sì, puoi usare quell'immagine ISO.

Fonte: https://superuser.com/questions/128482/ubuntu-amd64-vs-i386


10

Sì, è possibile installare amd64 bit nel processore Intel a 64 bit. AMD ha inventato il processore set di istruzioni x86-64 bit, quindi il nome è solo un omaggio a AMD.


Grazie per aver chiarito questo. So che era una domanda semplice, ma non sono riuscito a trovare la risposta da nessuna parte.
Dave Wolover,

8

La differenza tra amd64 e i386 è che amd64 è a 64 bit mentre i386 è a 32 bit . Questa è la larghezza (in bit) dei registri disponibili nel core.

Fondamentalmente il numero più grande che un core della CPU a 32 bit può gestire in una sola volta è di poco superiore a 4,29 miliardi, mentre un core a 64 bit può gestire un numero di oltre 18,44 miliardi di miliardi.

I core nei PC moderni sono in grado di comportarsi come un processore a 64 o 32 bit a seconda della versione del sistema operativo installata.

Il codice a 64 bit tende a funzionare più velocemente del codice a 32 bit o perché può gestire numeri più grandi in movimento o perché i core a 64 bit hanno più registri in modo da poter archiviare più cose senza bisogno di metterle nella memoria esterna. Sebbene non vi sia alcuna garanzia che il codice a 64 bit verrà eseguito più velocemente se il codice non è stato scritto per sfruttare le funzionalità extra del processore.

La compilazione su un sistema a 32 bit produrrà un codice diverso rispetto a un sistema a 64 bit. È possibile dimostrarlo compilando il codice assembly sui due sistemi. Supponendo che il tuo file C sia myfile.c, prova gcc -S myfile.csu entrambi i sistemi e confronta myfile.s

Il codice ben scritto per un sistema a 32 bit dovrebbe essere compilato ed eseguito su un sistema a 64 bit, ma non tutto il codice è ben scritto. Molti programmatori fanno ipotesi sul sistema che potrebbero non essere vere: come la larghezza del registro o l'ordine dei byte.

Senza l'accesso al codice sorgente è difficile capire quale sia il problema, ma segmenation faultindica che è stato effettuato un tentativo di accedere alla memoria che non appartiene al programma. Ciò può, ad esempio, indicare che mem_ptr è un puntatore a 32 bit che va bene su un sistema a 32 bit ma deve essere un puntatore a 64 bit su un sistema a 64 bit.


lo controllerò e tornerò su questo ...
Grazie

La realloc(mem_ptr, 0)funzione sta liberando memoria precedentemente allocata con malloc, callocecc. Se quel puntatore è stato corrotto in qualche modo, allora stai cercando di liberare memoria che non possiedi e questo genera un errore di segmentazione
Warren Hill

6

Sì, puoi usarlo .ISO. amd64 si riferisce all'architettura. AMD è stato il primo a creare una CPU a 64 bit, quindi credo che sia stato chiamato in quel momento, e il nome è rimasto bloccato. Sembra un po 'confuso, ma amd64 significa solo 64 bit.


10
Non sono stati i primi a creare una CPU a 64 bit. Intel ne aveva una prima ma non era compatibile con le versioni precedenti, quindi non era ampiamente adottata. Il nome amd64 era di differenziare l'architettura AMD da Intel IA64, che ora è stata interrotta.
psusi
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.