ทำไมรุ่น 64 บิตชื่อ AMD64 และรุ่น 32 บิตชื่อ i386 [ซ้ำ]


14

ฉันไม่เคยเข้าใจสิ่งนี้

นี่คือสิ่งที่ฉันรู้: ระบบปฏิบัติการ 64 บิตหากคุณต้องการจัดการมากกว่า 2GB RAM อื่นระบบปฏิบัติการ 32 บิต

ดังนั้นในหน้าแรกของ Ubuntu คุณสามารถดาวน์โหลด 64 บิตหรือ 32 บิต แต่ 64 บิตเรียกว่า amd64 และ 32 บิตเรียกว่า i386

ดังนั้นฉันต้องมีตัวประมวลผลของ AMD เพื่อเรียกใช้ amd64 และ intel จะเรียกใช้ i386?

และถ้ามีคนรหัสซอฟต์แวร์ (สมมติว่า Apache) เขาต้องใช้รหัสหนึ่ง 32 บิตและ 64 บิตหรือไม่ ซอฟต์แวร์บางโปรแกรมมีอยู่เฉพาะสำหรับ 32 และไม่ใช่ 64 และในทางกลับกัน?

ขอบคุณล่วงหน้า!


คำตอบ:


23

โดยทั่วไปแล้วรุ่น 64 บิตจะเรียกว่า 'amd64' เนื่องจาก AMD พัฒนาส่วนขยายคำสั่ง 64 บิต (AMD ขยายสถาปัตยกรรม x86 เป็น 64 บิตในขณะที่ Intel กำลังทำงานกับ Itanium แต่ Intel ได้ปรับใช้คำสั่งเดียวกันเหล่านั้นในภายหลัง)

รุ่น 32 บิตเรียกว่า i386 เนื่องจาก Intel ได้สร้างชุดคำสั่ง 32 บิตที่ใช้กับชิปเหล่านี้

คุณสามารถเรียกใช้รุ่น 64 บิตบนชิปที่รองรับ x86 ที่มีความสามารถ 64 บิตใด ๆ และรุ่น 32 บิตบนชิปที่รองรับ x86 ที่ทันสมัยใด ๆ

ขึ้นอยู่กับว่าคุณเขียนซอฟต์แวร์ของคุณอย่างไรมันอาจจะหรืออาจไม่จำเป็นต้องเขียนใหม่เป็น 64 บิต (โดยทั่วไปแล้วซอฟต์แวร์ที่รวบรวมจะต้องมีการเปลี่ยนแปลง แต่ไม่ใช่ซอฟต์แวร์ที่ตีความทั้งหมดเช่น Python หรือ Perl จะต้องมีการเปลี่ยนแปลง)


คุณบอกว่าพ่อของคำสั่ง 32 บิตคือ Intel และสำหรับ 64 บิต AMD หรือไม่?
alhelal

4

ฉันอธิบายที่มาของชื่อในการตอบคำถามที่คล้ายกันของคุณเมื่อไม่กี่นาทีที่ผ่านมา


โอ้ฉันต้องมีหน่วยความจำรั่ว ไม่รู้ว่าฉันโพสต์ไว้เกือบจะเท่าไหร่ เป็นเวลานาน 2 วัน =)
ajsie

4

AMD ออกมาพร้อมกับใช้ ISA 64 บิตดังนั้นจึงเรียกว่า AMD64 Intel มีรุ่นของตัวเอง EM64T ซึ่งส่วนใหญ่เข้ากันได้ ในทำนองเดียวกัน Intel ก็มี ISA 32 บิตเป็นอันดับแรกโดยใช้ i80386 หรือ i386 สั้น ๆ AMD ได้รับอนุญาตจากพวกเขามานานแล้ว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.