„X86-64” változatai közötti eltérés

[nem ellenőrzött változat][ellenőrzött változat]
Tartalom törölve Tartalom hozzáadva
Nincs szerkesztési összefoglaló
a Visszaállítottam a lap korábbi változatát: 188.6.206.156 (vita) szerkesztéséről Syp szerkesztésére
21. sor:
 
Az első AMD64-en alapuló processzor, az Opteron, 2003 áprilisában jelent meg.
 
=== Az architektúra jellegzetességei ===
Az AMD64 legfontosabb jellemzői a 64 bites általános célú regiszterek támogatása, 64 bites egészekkel történő aritmetikai és logikai műveletek elvégzése, és a 64 bites virtuális címek. A tervezők természetesen megragadták az alkalmat egyéb fejlesztések végrehajtására is. A legfontosabb változtatások például:
 
* '''A 64 bites egész típus teljes támogatása:''' Mindegyik általános felhasználású regiszter 32 bitesről 64 bitesre lett növelve, mindegyik aritmetikai és logikai művelet, a memóriából regiszterbe és regiszterből memóriába típusú műveletek, mind közvetlenül támogatják a 64 bites egészeket.
 
* '''További [[regiszter (számítástechnika)|regiszterek]]:''' Az általános célú regiszterek méretének növelése mellett az x86-32-ben lévő névvel ellátott, általános célú regiszterek (eax, ebx, ecx, edx, ebp, esp, esi, edi) száma 8-ról 16-ra növekedett. Ezáltal lehetővé vált a lokális változóknak a verem helyett a regiszterekben történő tárolása, valamint a gyakran használt konstansok is helyet kaphatnak a regiszterekben. A gyors és kisméretű szubrutinok argumentumainak tárolására is nagyobb tárhely áll rendelkezésre. Mind a 16 regisztert lehet használni 64 bitesként (rax, rbx, rcx, rdx, rbp, rsp, rsi, rdi, r8..r15 néven), 32 bitesként (eax, esi, r8d stb), 16 bitesként (ax, si, r8w stb), 8 bitesként (al, sil, r8b stb). Ezen felül az ah, bh, ch, dh továbbra is használható. A több regiszter használatának hátránya, hogy magával hozza a több regisztermentést és -visszaállítást. Az AMD64-nek még így is kevesebb regisztere van, mint a legtöbb átlagos RISC processzornak (amelyeknek általában 32-64 regiszterük van) vagy mint a [[VLIW]]-típusú gépeknek, mint például az [[IA-64]], amelynek 128 regisztere van.
 
* '''További XMM (SSE) regiszterek:''' Hasonlóképpen a 128 bites XMM regiszterek (Streaming SIMD ([[SSE]])-utasítások) tárolására használatos) száma is 8-ról 16-ra növekedett.
 
* '''Nagyobb virtuális címtér:''' Az AMD64 architektúrára épülő jelenlegi processzormodellek legfeljebb 256 [[tebibájt]] (2<sup>48</sup> bájt) virtuális címteret tudnak megcímezni. Ez a határ a későbbi megvalósítások során 16 [[exibájt]]ra (2<sup>64</sup> bájt ) növekedhet. A 32 bites x86-os ezzel szemben csak 4 [[gibibájt]]ot tud kezelni. Ez azt jelenti, hogy lehetőség nyílik nagyon nagy fájlok kezelésére is oly módon, hogy az egész fájlt leképezzük a folyamat (eljárás) címterébe (ami általában gyorsabb, mint fájlszintű írás/olvasás-hívásokkal dolgozni), és nem kell a fájl részleteit külön-külön be- és kiírni a címtérbe.
 
* '''Nagyobb fizikai címtér:''' Az AMD64 architektúrára épülő jelenlegi processzorok legfeljebb 1 [[tebibájt]] (2<sup>40</sup> bájt) RAM-memóriát tudnak megcímezni; az architektúra engedélyezi ennek kiterjesztését 4 [[pebibájt]]ra (2<sup>52</sup> bájt) a jövőben. [[Emuláció|Emulált]] módban, a Fizikai Cím Kiterjesztés (''Physical Address Extension, PAE'') támogatva van, ez támogatva van a legújabb 32 bites x86-os processzorokban is, engedélyezve a legfeljebb 64 gibibájthoz való hozzáférést.
 
* '''Utasításmutató-relatív adathozzáférés:''' Az utasítások hivatkozhatnak adattól függően az utasításpointerre (Relative Instruction Pointer - RIP regiszter). Ez pozíciófüggetlen kódot eredményez, ami gyakran használatos megosztott könyvtárakban, és valós időben történő hatékony kódbetöltésre.
 
* '''SSE utasítások:''' Az eredeti AMD64 architektúra átvette az Inteltől az [[SSE]]-t és az [[SSE2]]-t, mint mag-utasításokat. Az SSE3 utasítások 2005 áprilisában lettek hozzáadva. Az [[SSE2]] helyettesíti az x87-es utasításkészlet IEEE 80 bites számítási pontosságát, az IEEE 32 és 64 bites lebegőpontos számítási pontosságának választási lehetőségével. Ez lehetővé teszi a lebegőpontos számítások kompatibilitását más modern CPU-kkal. Az [[SSE]] és az [[SSE2]] utasítások is ki lettek egészítve, hogy támogassák a 8 új XMM regisztert. Az [[SSE]]-t és az [[SSE2]]-t támogatják az újabb 32 bites x86-os processzorok. Azok a 32 bites programok, amelyek [[SSE]]-t és [[SSE2]]-t igényelnek, csak akkor fognak működni, ha megfelelő processzorral rendelkezik a rendszer. Ez a probléma nem jelentkezik 64 bites programoknál, mert minden AMD64-et támogató processzor támogatja az [[SSE]]-t és az [[SSE2]]-t is. Az [[SSE]] és [[SSE2]] utasítások használata az x87-es utasítások használata helyett nem csökkenti azon gépek számát, amelyeken a programok futni fognak. Az [[SSE]] és az [[SSE2]] gyorsabbak, és hasonlóak a hagyományos x87-es utasításokhoz, az MMX-hez és a 3Dnow!-hoz, ez utóbbiak használata felesleges AMD64 alatt.
 
* '''A No-eXecute bit:''' Az [[NX bit]] (a laptáblázat 63. bitje) lehetővé teszi az operációs rendszer számára, hogy meghatározza, a virtuális címtérnek mely részei tartalmazhatnak végrehajtható kódot, és melyek nem. Amennyiben olyan területről történik kódvégrehajtási kísérlet, ahol ez nem engedélyezett, akkor memória hozzáférési hiba keletkezik, olyan, mint például amikor egy csak olvasható helyre akarnánk írni. Ez hivatott megnehezíteni a rosszindulatú kódoknak, hogy átvegyék a rendszer feletti uralmat „puffer-túlcsordulás” típusú támadásokkal. Szegmensleíró tulajdonságként ehhez hasonló védelem van az x86-os processzorokban is a [[Intel 80286|80286]]-os óta. Ez a típusú védelem csak akkor működik, ha egy egész szegmensre vonatkoztatjuk. Az AMD volt az első, amely az [[x86]]-os processzorokban használta a ''no-execute bit''-et a lineáris címzési módnál. Ez a tulajdonság elérhető AMD64 processzorokban is emulált üzemmódban, és a jelenlegi Intel x86 processzorokban is, ha a PAE használatban van.
 
* '''A régi tulajdonságok eltávolítása:''' Az x86-os architektúra számos „rendszer-programozó” tulajdonsága nincs használatban a modern operációs rendszerekben, és nem elérhető az AMD64-en long (64 bites és kompatibilitás) üzemmódban. Ezek közé tartozik például a szegmentált címzés (habár az FS és a GS szegmens meg lett tartva valamilyen formában a Windows-kóddal való kompatibilitás érdekében), a feladat állapot váltás és a virtuális 8086-mód. Ezek a szolgáltatások természetesen megmaradtak az emulált módban, ami lehetővé teszi e processzoroknak, hogy 32 bites és 16 bites operációs rendszereket futtassanak módosítás nélkül.
 
=== Megvalósítások ===
A következő processzorok épülnek az AMD64 architektúrára:
* AMD [[Athlon 64]]
* AMD [[Athlon 64 X2]]
* AMD [[Athlon 64|Athlon 64 FX]]
* AMD [[Opteron]]
* AMD [[Turion 64]]
* AMD [[Turion 64 X2]]
* AMD [[Sempron]] ("Palermo" E6-os változat és mindegyik "Manila" modell)
* AMD [[AMD Phenom|Phenom]]
* AMD [[Phenom II]]
 
== Intel 64 ==
{{csonk-szakasz}}
 
== Lásd még ==
* [[NX bit]]
 
== Források ==
* {{fordítás|en|Amd64|n=az|4=angol}}
 
== Jegyzetek ==
{{források}}
 
== További információk ==
* [http://www.viva64.com/articles/20_issues_of_porting_C++_code_on_the_64-bit_platform.html Article: 20 issues of porting C++ code on the 64-bit platform]
* [http://www.amd.com/us-en/Processors/DevelopWithAMD/0,,30_2252_875_7044,00.html AMD's free technical documentation for the AMD64 architecture]
* [http://www.amd.com/us-en/Processors/ProductInformation/0,,30_118_4699_7980%5E875%5E4622,00.html AMD's AMD64 documentation on CD-ROM (U.S. and Canada only) and downloadable PDF format]
* [http://www.amd.com/us-en/Processors/ProductInformation/0,,30_118_4699_7980%5E875%5E4622,00.html AMD64 Technology: Overview of the AMD64 Architecture] ([[PDF]])
* [http://www.xbitlabs.com/news/other/display/20041227094638.html AMD's "Enhanced Virus Protection"]
* [http://www.theregister.co.uk/2005/08/23/intel_fixes_em64t/ Intel tweaks EM64T for full AMD64 compatibility]
* [http://www.extremetech.com/article2/0,3973,1561875,00.asp?kc=ETRSS02129TX1K0000532 Analyst: Intel Reverse-Engineered AMD64]
* [http://marc.info/?l=linux-kernel&m=107766481408468&w=2 Early report of differences between Intel IA32e and AMD64]
* [http://techreport.com/reviews/2005q1/64-bits/index.x?pg=1 Tech Report article: 64-bit computing in theory and practice]
* [http://www.intel.com/technology/architecture-silicon/intel64/index.htm Intel 64 Architecture]
 
[[Kategória:Utasításkészlet-architektúrák]]<!-- elsődleges! -->
[[Kategória:CPU-architektúrák]]
A lap eredeti címe: „https://hu.wikipedia.org/wiki/X86-64