Perbedaan antara unduhan i386 dan amd64?

164

Apa perbedaan antara unduhan standar i386 dan unduhan amd64 dari Ubuntu 11.04? Saat ini saya menjalankan i386 pada mesin amd, apakah sistem saya akan bekerja lebih baik dengan unduhan amd64? (Mesin saya menjalankan Windows 7 64bit, tapi saya lalai melihat itu sebelum menginstal Ubuntu).

rampok
sumber

Jawaban:

165

i386 merujuk pada edisi 32-bit dan amd64 (atau x86_64) mengacu pada edisi 64-bit untuk prosesor Intel dan AMD.

Entri i386 Wikipedia:

Intel 80386, juga dikenal sebagai i386, atau hanya 386, adalah mikroprosesor 32-bit yang diperkenalkan oleh Intel pada tahun 1985 ... Ini disebut x86, IA-32, atau arsitektur i386, tergantung pada konteksnya.

Entri x86_64 Wikipedia:

x86-64 adalah ekstensi dari set instruksi x86. Ini mendukung ruang alamat virtual dan fisik yang jauh lebih besar daripada yang dimungkinkan pada x86, sehingga memungkinkan programmer untuk dengan mudah bekerja dengan set data yang lebih besar ... Setelah meluncurkan arsitektur dengan nama "x86-64", AMD menamainya AMD64 ... x86 -64 masih digunakan oleh banyak orang di industri sebagai istilah vendor-netral, sementara yang lain, terutama Sun Microsystems (sekarang Oracle Corporation) dan Microsoft, menggunakan x64.

Bahkan jika Anda memiliki intel CPU, Anda harus menggunakan AMD64 untuk menginstal 64-bit di komputer Anda (menggunakan set instruksi yang sama).

Saya sangat merekomendasikan menggunakannya. Sebagian besar Anda tidak akan melihat perbedaan tetapi untuk beban kerja yang besar (seperti mengedit video, bermain game, dll), komputer akan bekerja lebih cepat (komputer memiliki kemampuan untuk menghitung 2 + 2 + 2 = 6 daripada harus melakukan 2 + 2 = 4 + 2 = 6 dalam contoh). Di dunia Windows, OS 32-bit tidak akan membiarkan Anda menggunakan lebih dari 3,5 Gigs RAM di komputer Anda (bahkan jika Anda memiliki 8!). Anda harus menggunakan OS 64-bit agar dapat sepenuhnya menggunakan semua RAM. Untuk Linux, bagaimanapun, tidak ada batasan seperti itu (terima kasih, Uri).

Apapun, dunia telah bergeser dari 32 bit dan hanya ada di sana untuk mendukung mesin yang lebih tua yang tidak mampu menjalankan 64 bit.

Jeremy Bicha
sumber
Bagian terakhir, sekarang (di Linux tentu saja). Tidak benar, Anda BISA menggunakan lebih dari 3.5GB RAM dengan kernel PAE dalam 32 bit.
Uri Herrera
bukankah 3.5gb pembatasan ram 32bit menjadi 4gb- <memori kartu grafis>?
Chriskin
3
Demi kesederhanaan, saya telah menghilangkan teknis seperti memori kartu grafis. Tujuan saya adalah untuk mengatakan "jika Anda memiliki lebih dari 3,5-4 pertunjukan, gunakan 64 bit".
1
@ Treefroginc Apa tepatnya Tweaks?
Uri Herrera
1
64 bit setiap bit dapat digunakan dan stabil 32 bit dengan pengecualian Flash yang hampir dapat diabaikan dalam keadaan tertentu selama waktu tertentu dalam sehari dan jika planet-planet menyelaraskan memberikan sinar kosmik.
41

Arsitektur ini dinamai AMD karena AMD menciptakannya, dengan Athlon 64. Demikian pula, arsitektur i386 32-bit dinamai prosesor Intel 386, karena itu adalah yang pertama dari jenisnya, tetapi i386 juga akan bekerja pada prosesor AMD. Jadi ya Anda bisa menggunakan gambar ISO itu.

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

Mitch
sumber
10

ya Anda dapat menginstal amd64 bit ke prosesor Intel 64 bit. AMD menemukan prosesor set instruksi x86-64 bit sehingga namanya hanyalah penghargaan untuk AMD.

Roney Thomas
sumber
Terima kasih sudah membereskan ini. Saya tahu itu adalah pertanyaan sederhana, tetapi saya tidak dapat menemukan jawabannya di mana pun.
Dave Wolover
8

Perbedaan antara amd64 dan i386 adalah bahwa amd64 adalah 64-bit sedangkan i386 adalah 32-bit . Ini adalah lebar (dalam bit) register yang tersedia di inti.

Pada dasarnya jumlah terbesar yang dapat ditangani oleh inti CPU 32-bit dalam sekali jalan adalah sedikit di atas 4,29 miliar sedangkan inti 64-bit dapat menangani jumlah sedikit di atas 18,44 miliar, miliar.

Core di PC modern mampu berperilaku sebagai prosesor 64-bit atau 32-bit tergantung pada versi sistem operasi yang Anda instal.

Kode 64-bit cenderung berjalan lebih cepat daripada kode 32-bit karena dapat menangani jumlah yang lebih besar saat bepergian atau karena inti 64-bit memiliki lebih banyak register sehingga dapat menyimpan lebih banyak hal tanpa perlu memasukkan sesuatu ke dalam memori eksternal. Meskipun tidak ada jaminan bahwa kode 64-bit akan berjalan lebih cepat jika kode tersebut belum ditulis untuk memanfaatkan fitur tambahan dari prosesor.

Kompilasi pada sistem 32-bit akan menghasilkan kode yang berbeda dari sistem 64-bit. Anda dapat membuktikan ini dengan mengkompilasi kode assembly pada kedua sistem. Dengan asumsi file C Anda adalah myfile.c coba gcc -S myfile.cdi kedua sistem dan bandingkan myfile.s

Kode yang ditulis dengan baik untuk sistem 32-bit harus dikompilasi dan dijalankan pada sistem 64-bit tetapi tidak semua kode ditulis dengan baik. Banyak pemrogram membuat asumsi tentang sistem yang mungkin tidak benar: seperti register width atau byte order.

Tanpa akses ke kode sumber Anda, sulit untuk melihat apa masalahnya tetapi segmenation faultmenunjukkan bahwa upaya telah dilakukan untuk mengakses memori yang bukan milik program. Ini mungkin, misalnya, menunjukkan bahwa mem_ptr adalah pointer 32-bit yang baik-baik saja pada sistem 32-bit tetapi perlu pointer 64-bit pada sistem 64-bit.

Warren Hill
sumber
Saya akan memeriksanya dan kembali pada ini ... Terima kasih
bikram990
The realloc(mem_ptr, 0)fungsi membebaskan memori yang sebelumnya dialokasikan dengan malloc, calloc, dll Jika pointer yang telah rusak dengan cara apapun maka Anda mencoba untuk memori Anda tidak memiliki dan ini menghasilkan kesalahan segmentasi
Warren Bukit
6

Ya, Anda bisa menggunakannya .ISO. amd64 mengacu pada arsitektur. AMD adalah yang pertama membuat CPU 64-bit, jadi saya percaya itu dinamai ini pada saat itu, dan namanya macet. Tampaknya sedikit membingungkan, tetapi amd64 hanya berarti 64-bit.

reverendj1
sumber
10
Mereka bukan yang pertama membuat cpu 64-bit. Intel memiliki satu sebelumnya tetapi itu tidak kompatibel ke belakang, jadi tidak banyak diadopsi. Nama amd64 adalah untuk membedakan arsitektur AMD dari Intel IA64, yang sekarang telah dihentikan.
psusi