fbpx
วิกิพีเดีย

เอกซ์86-64

เอกซ์86-64 (x86-64) เป็นชื่อของสถาปัตยกรรมคอมพิวเตอร์สำหรับไมโครโพรเซสเซอร์แบบ 64 บิต และชุดคำสั่งที่ใช้งานด้วยกัน x86-64 เป็นส่วนขยายของสถาปัตยกรรมแบบ x86 ออกแบบโดยบริษัท AMD และใช้ชื่อทางการค้าว่า AMD64 ในภายหลังบริษัทอินเทลได้นำสถาปัตยกรรมนี้ไปใช้ใต้ชื่อการค้าว่า Intel 64 หรือ EM64T ซึ่งชื่อทั่วไปที่ใช้กันโดยไม่อิงกับชื่อการค้าคือ x86-64 หรือ x64

AMD64

ชุดคำสั่ง AMD64 ถูกนำไปใช้ในไมโครโพรเซสเซอร์ของ AMD ดังนี้ Athlon 64, Athlon 64 FX, Athlon 64 X2, Turion 64, Turion 64 X2, Opteron และ Sempron (เฉพาะรุ่นที่ผลิตในช่วงหลัง)

คุณสมบัติของสถาปัตยกรรม

AMD64 ถูกสร้างมาเพื่อเป็นคู่แข่งกับสถาปัตยกรรม IA64 ของบริษัทอินเทลและเอชพี ข้อแตกต่างที่สำคัญมีดังนี้

  • สนับสนุนจำนวนตัวเลข (integer) ขนาด 64 บิต โดยขยายขนาดของเรจิสเตอร์สำหรับงานทั่วไป general-purpose registers (GPRs) จาก 32 บิตเป็น 64 บิต และปรับปรุงส่วนคำสั่งอื่นๆ ให้สนับสนุนตัวเลขแบบ 64 บิตด้วย
  • เพิ่มจำนวนเรจิสเตอร์ เพิ่มจำนวนเรจิสเตอร์ทำงานทั่วไปจาก 8 ตัวในสถาปัตยกรรม x86 เดิม เป็น 16 ตัว ซึ่งทำให้เก็บค่าตัวแปรไว้ในเรจิสเตอร์ได้มากขึ้น และส่งผลให้การทำงานของระบบรวดเร็วขึ้น
  • เพิ่มเรจิสเตอร์สำหรับ XMM (SSE) เพิ่มจำนวนของเรจิสเตอร์สำหรับงาน XMM จาก 8 ตัวเป็น 16 ตัว
  • ขยายขนาดตำแหน่งหน่วยความจำแบบ virtual ตามทฤษฎีแล้วสถาปัตยกรรมแบบ AMD64 สนับสนุนการอ้างตำแหน่งหน่วยความจำแบบ virtual ได้มากถึง 16 exbibyte (264 ไบต์) เมื่อเทียบกับ x86 แบบเดิมที่อ้างได้เพียง 4 gibibyte (ซีพียูแบบ AMD64 ที่วางขายในปัจจุบัน ยังอ้างได้เพียง 256 tebibyte หรือ 248 ไบต์ แต่สามารถปรับเพิ่มได้ในอนาคต)
  • ขยายขนาดตำแหน่งหน่วยความจำแบบ physical ตามทฤษฎีแล้วสถาปัตยกรรมแบบ AMD64 สนับสนุนการอ้างตำแหน่งหน่วยความจำแบบ physcial ได้มากถึง 4 petibyte (252 ไบต์) (ซีพียูแบบ AMD64 ที่วางขายในปัจจุบัน ยังอ้างได้เพียง 1 tebibyte หรือ 240 ไบต์ แต่สามารถปรับเพิ่มได้ในอนาคต)
  • พอยเตอร์ของชุดคำสั่งสามารถอ้างตำแหน่งข้อมูลแบบสัมพัทธ์ (relative) ทำให้ชุดคำสั่งสามารถเป็นอิสระจากตำแหน่งอ้างอิงแบบคงที่ได้
  • สนับสนุนชุดคำสั่ง SSE เดิม AMD64 สนับสนุนเฉพาะ SSE และ SSE2 เท่านั้น ในภายหลังได้สนับสนุนชุดคำสั่ง SSE3 เพิ่มเติม
  • No-Execute bit หรือชื่อย่อ NX บิต (บิตที่ 63 ตามตาราง) จะช่วยบอกระบบปฏิบัติการว่าตำแหน่งใดบนหน่วยความจำสามารถทำงาน (execute) ได้ ถ้า NX บิตไม่ทำงาน ตำแหน่งนั้นจะสามารถอ่านได้อย่างเดียว ซึ่งจะช่วยป้องกันการเขียนโปรแกรมที่ทำความเสียหายให้ระบบด้วยวิธี Buffer overflow ได้

โหมดการทำงาน

Operating modes

โหมดการทำงาน ระบบปฏิบัติการ ที่ต้องการ แปลงโปรแกรมใหม่ ขนาดของตำแหน่ง ขนาดตัว operand ขยายขนาดเรจิสเตอร์ ขนาด GPR ปกติ
Long mode โหมด 64 บิต ระบบปํฎิบัติการรุ่นใหม่ที่สนับสนุน 64 บิต ต้อง 64 32 ต้อง 64
เข้ากันได้กับระบบเดิม ไม่ต้อง 32 32 ไม่ต้อง 32
16 16 16
Legacy mode Protected mode ระบบปฏิบัติการเดิมแบบ 16 หรือ 32 บิต ไม่ต้อง 32 32 ไม่ต้อง 32
16 16 16
จำลอง 8086 16 16 16
Real mode ระบบปฏิบัติการเดิมแบบ 16 บิต

อธิบายการทำงานของโหมด

โหมดหลักๆ แบ่งเป็น 2 ประเภทดังนี้

Long mode
เป็นโหมดการทำงานหลักของสถาปัตยกรรมนี้ โดยแบ่งเป็นโหมดย่อยคือ 64 บิตล้วน และสนับสนุนทั้ง 32/64 บิต โหมดนี้จะใช้ในระบบปฏิบัติการแบบ 64 บิต
เนื่องจากว่าชุดคำสั่งพื้นฐานของ x86 กับ x86-64 ไม่ต่างกัน ดังนั้นโปรแกรมที่เป็น x86 เดิมจะไม่เสียประสิทธิภาพในการทำงานไป ซึ่งต่างจากสถาปัตยกรรมแบบ IA-64 ที่การรันโปรแกรม 32 บิตจะเทียบเท่าการทำงานบนโพรเซสเซอร์ตัวอื่น
Legacy mode
โหมดนี้จะใช้สำหรับระบบปฏิบัติการแบบ 16 และ 32 บิตเดิม ซึ่งโพรเซสเซอร์จะทำงานเสมือนโพรเซสเซอร์แบบ 32 บิต และไม่สามารถนำโปรแกรมที่เป็น 64 บิตมาใช้งานได้ สนับสนุนเฉพาะโปรแกรมที่เป็น 16 หรือ 32 บิตเท่านั้น

Intel 64

ความแตกต่างของ AMD64 กับ Intel 64

ระบบปฏิบัติการที่สนับสนุน

  • DOS สามารถทำงานใน long mode ได้ผ่าน DOS extender
  • BSD
    • FreeBSD เริ่มสนับสนุนใน FreeBSD 5.1-RELEASE เมื่อปี 2003
    • NetBSD เริ่มสนับสนุนใน NetBSD 2.0 ปี 2004
    • OpenBSD เริ่มสนับสนุนใน OpenBSD 3.5 ปี 2004
  • ลินุกซ์ เป็นระบบปฏิบัติการตัวแรกที่สนับสนุน AMD64 โดยเริ่มในรุ่น Kernel 2.4 ก่อนที่โพรเซสเซอร์จริงจะวางจำหน่าย
  • Mac OS X บริษัทแอปเปิลระบุว่า Mac OS X v10.5 จะสนับสนุนสถาปัตยกรรม Intel 64
  • MenuetOS MenuetOS เริ่มสนับสนุนปี 2005
  • Solaris สนับสนุนตั้งแต่ Solaris 10 เป็นต้นมา
  • วินโดวส์ เริ่มสนับสนุนใน Windows XP Professional x64 Edition และ Windows Server 2003 SP1 x64 Edition ซึ่งวางจำหน่ายในปี 2005 วินโดวส์วิสตา x64 ทุก Edition ยกเว้น รุ่น Starter และ Windows Server 2008

อ้างอิง

  • เทคโนโลยี AMD64
  • เทคโนโลยี Intel 64

เอกซ, เป, นช, อของสถาป, ตยกรรมคอมพ, วเตอร, สำหร, บไมโครโพรเซสเซอร, แบบ, และช, ดคำส, งท, ใช, งานด, วยก, เป, นส, วนขยายของสถาป, ตยกรรมแบบ, ออกแบบโดยบร, และใช, อทางการค, าว, amd64, ในภายหล, งบร, ทอ, นเทลได, นำสถาป, ตยกรรมน, ไปใช, ใต, อการค, าว, intel, หร, em64t, . exks86 64 x86 64 epnchuxkhxngsthaptykrrmkhxmphiwetxrsahrbimokhrophressesxraebb 64 bit aelachudkhasngthiichngandwykn x86 64 epnswnkhyaykhxngsthaptykrrmaebb x86 xxkaebbodybristh AMD aelaichchuxthangkarkhawa AMD64 inphayhlngbristhxinethlidnasthaptykrrmniipichitchuxkarkhawa Intel 64 hrux EM64T sungchuxthwipthiichknodyimxingkbchuxkarkhakhux x86 64 hrux x64 enuxha 1 AMD64 1 1 khunsmbtikhxngsthaptykrrm 1 2 ohmdkarthangan 1 3 Operating modes 1 3 1 xthibaykarthangankhxngohmd 2 Intel 64 3 khwamaetktangkhxng AMD64 kb Intel 64 4 rabbptibtikarthisnbsnun 5 xangxingAMD64 aekikhchudkhasng AMD64 thuknaipichinimokhrophressesxrkhxng AMD dngni Athlon 64 Athlon 64 FX Athlon 64 X2 Turion 64 Turion 64 X2 Opteron aela Sempron echphaarunthiphlitinchwnghlng khunsmbtikhxngsthaptykrrm aekikh AMD64 thuksrangmaephuxepnkhuaekhngkbsthaptykrrm IA64 khxngbristhxinethlaelaexchphi khxaetktangthisakhymidngni snbsnuncanwntwelkh integer khnad 64 bit odykhyaykhnadkhxngercisetxrsahrbnganthwip general purpose registers GPRs cak 32 bitepn 64 bit aelaprbprungswnkhasngxun ihsnbsnuntwelkhaebb 64 bitdwy ephimcanwnercisetxr ephimcanwnercisetxrthanganthwipcak 8 twinsthaptykrrm x86 edim epn 16 tw sungthaihekbkhatwaepriwinercisetxridmakkhun aelasngphlihkarthangankhxngrabbrwderwkhun ephimercisetxrsahrb XMM SSE ephimcanwnkhxngercisetxrsahrbngan XMM cak 8 twepn 16 tw khyaykhnadtaaehnnghnwykhwamcaaebb virtual tamthvsdiaelwsthaptykrrmaebb AMD64 snbsnunkarxangtaaehnnghnwykhwamcaaebb virtual idmakthung 16 exbibyte 264 ibt emuxethiybkb x86 aebbedimthixangidephiyng 4 gibibyte siphiyuaebb AMD64 thiwangkhayinpccubn yngxangidephiyng 256 tebibyte hrux 248 ibt aetsamarthprbephimidinxnakht khyaykhnadtaaehnnghnwykhwamcaaebb physical tamthvsdiaelwsthaptykrrmaebb AMD64 snbsnunkarxangtaaehnnghnwykhwamcaaebb physcial idmakthung 4 petibyte 252 ibt siphiyuaebb AMD64 thiwangkhayinpccubn yngxangidephiyng 1 tebibyte hrux 240 ibt aetsamarthprbephimidinxnakht phxyetxrkhxngchudkhasngsamarthxangtaaehnngkhxmulaebbsmphthth relative thaihchudkhasngsamarthepnxisracaktaaehnngxangxingaebbkhngthiid snbsnunchudkhasng SSE edim AMD64 snbsnunechphaa SSE aela SSE2 ethann inphayhlngidsnbsnunchudkhasng SSE3 ephimetim No Execute bit hruxchuxyx NX bit bitthi 63 tamtarang cachwybxkrabbptibtikarwataaehnngidbnhnwykhwamcasamarththangan execute id tha NX bitimthangan taaehnngnncasamarthxanidxyangediyw sungcachwypxngknkarekhiynopraekrmthithakhwamesiyhayihrabbdwywithi Buffer overflow idohmdkarthangan aekikh Operating modes aekikh ohmdkarthangan rabbptibtikar thitxngkar aeplngopraekrmihm khnadkhxngtaaehnng khnadtw operand khyaykhnadercisetxr khnad GPR pktiLong mode ohmd 64 bit rabbpdibtikarrunihmthisnbsnun 64 bit txng 64 32 txng 64ekhaknidkbrabbedim imtxng 32 32 imtxng 3216 16 16Legacy mode Protected mode rabbptibtikaredimaebb 16 hrux 32 bit imtxng 32 32 imtxng 3216 16 16calxng 8086 16 16 16Real mode rabbptibtikaredimaebb 16 bitxthibaykarthangankhxngohmd aekikh ohmdhlk aebngepn 2 praephthdngni Long mode epnohmdkarthanganhlkkhxngsthaptykrrmni odyaebngepnohmdyxykhux 64 bitlwn aelasnbsnunthng 32 64 bit ohmdnicaichinrabbptibtikaraebb 64 bitenuxngcakwachudkhasngphunthankhxng x86 kb x86 64 imtangkn dngnnopraekrmthiepn x86 edimcaimesiyprasiththiphaphinkarthanganip sungtangcaksthaptykrrmaebb IA 64 thikarrnopraekrm 32 bitcaethiybethakarthanganbnophressesxrtwxunLegacy mode ohmdnicaichsahrbrabbptibtikaraebb 16 aela 32 bitedim sungophressesxrcathanganesmuxnophressesxraebb 32 bit aelaimsamarthnaopraekrmthiepn 64 bitmaichnganid snbsnunechphaaopraekrmthiepn 16 hrux 32 bitethannIntel 64 aekikhswnnirxephimetimkhxmul khunsamarthchwyephimkhxmulswnniidkhwamaetktangkhxng AMD64 kb Intel 64 aekikhrabbptibtikarthisnbsnun aekikhDOS samarththanganin long mode idphan DOS extender BSD FreeBSD erimsnbsnunin FreeBSD 5 1 RELEASE emuxpi 2003 NetBSD erimsnbsnunin NetBSD 2 0 pi 2004 OpenBSD erimsnbsnunin OpenBSD 3 5 pi 2004 linuks epnrabbptibtikartwaerkthisnbsnun AMD64 odyeriminrun Kernel 2 4 kxnthiophressesxrcringcawangcahnay Mac OS X bristhaexpepilrabuwa Mac OS X v10 5 casnbsnunsthaptykrrm Intel 64 MenuetOS MenuetOS erimsnbsnunpi 2005 Solaris snbsnuntngaet Solaris 10 epntnma winodws erimsnbsnunin Windows XP Professional x64 Edition aela Windows Server 2003 SP1 x64 Edition sungwangcahnayinpi 2005 winodwswista x64 thuk Edition ykewn run Starter aela Windows Server 2008xangxing aekikhethkhonolyi AMD64 ethkhonolyi Intel 64ekhathungcak https th wikipedia org w index php title exks86 64 amp oldid 8810105, wikipedia, วิกิ หนังสือ, หนังสือ, ห้องสมุด,

บทความ

, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม