Ero sivun ”AMD64” versioiden välillä

Wikipediasta
Siirry navigaatioon Siirry hakuun
[katsottu versio][katsottu versio]
Poistettu sisältö Lisätty sisältö
Ipr1 (keskustelu | muokkaukset)
Ei muokkausyhteenvetoa
 
(27 välissä olevaa versiota 6 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
[[Tiedosto:AMD64 Logo.png|pienoiskuva|AMD64 -logo.]]
[[Tiedosto:AMD64 Logo.png|pienoiskuva|AMD64 -logo.]]
'''AMD64''' (myös nimillä '''x86-64''', '''x86_64''' ja '''x64''') on [[AMD]]:n kehittämä 64-[[bitti]]nen [[suoritin]]arkkitehtuuri, joka suunniteltiin kehitysaskeleeksi 32-bittisestä [[x86]]-arkkitehtuurista.<ref name="hwsaa">{{Verkkoviite | osoite = https://www.hardwaresecrets.com/amd-64-bit-architecture-x86-64/ | nimeke = AMD 64-bit architecture (x86-64) | ajankohta = 27.10.2004 | viitattu = 20.9.2020 | kieli = {{en}} }}</ref> Vanhoja 16- ja 32-bittisiä ''real mode''- ja ''protected mode''-ohjelmia varten suorittimessa on vielä mukana niille tukea säilyttäen yhteensopivuuden vanhoille ohjelmille.<ref name="hwsaa" /> 64-bittiset ohjelmat suoritetaan ''long mode'' -tilassa.<ref name="hwsaa" />
[[Intel]]illä oli kilpaileva [[EM64T]]-arkkitehtuuri, jota Intel muokkasi täyteen AMD64-yhteensopivuuteen lisäämällä LAHF- ja SAHF-käskyt.<ref>{{verkkoviite | osoite = https://www.hardwaresecrets.com/intel-em64t-technology-explained/ | nimeke = Intel EM64T Technology Explained | ajankohta = 15.12.2005 | viitattu = 19.9.2020 | kieli = {{en}} }}</ref><ref>{{Verkkoviite | osoite = https://www.theregister.com/2005/08/23/intel_fixes_em64t/ | nimeke = Intel tweaks EM64T for full AMD64 compatibility | tekijä = Tony Smith | ajankohta = 23.8.2005 | viitattu = 7.1.2024 | kieli = {{en}} }}</ref>


==Historia==
'''AMD64''' (myös nimillä '''x86-64''', '''x86_64''' ja '''x64''') on [[AMD]]:n kehittämä 64-bittinen [[suoritin]]arkkitehtuuri. AMD64 rinnastetaan yleisesti [[Intel]]in vastaavan 64-bittisen [[EM64T]]-arkkitehtuurin kanssa.
Vanhoja [[IA-32]]-tilan ohjelmia varten piirillä on mukana niitä tukeva käskykanta säilyttäen yhteensopivuuden vanhempien ohjelmistojen kanssa.


AMD ilmoitti arkkitehtuurista vuonna 1999<ref>{{Verkkoviite | osoite = http://www.amd.com/us/press-releases/Pages/Press_Release_751.aspx | arkisto = https://web.archive.org/web/20120308030806/http://www.amd.com/us/press-releases/Pages/Press_Release_751.aspx | nimeke = AMD Discloses New Technologies At Microporcessor Forum | ajankohta = 5.10.1999 | viitattu = 19.9.2020 | kieli = {{en}} }}</ref> ja julkaisi määrittelyn vuonna 2000.<ref>{{Verkkoviite | osoite = http://www.amd.com/us/press-releases/Pages/Press_Release_715.aspx | arkisto = https://web.archive.org/web/20120308025559/http://www.amd.com/us/press-releases/Pages/Press_Release_715.aspx | nimeke = AMD Releases x86-64™ Architectural Specification; Enables Market Driven Migration to 64-Bit Computing | ajankohta = 10.8.2000 | viitattu = 19.9.2020 | kieli = {{en}} }}</ref>
AMD ilmoitti arkkitehtuurista vuonna 1999<ref>{{Verkkoviite | osoite = http://www.amd.com/us/press-releases/Pages/Press_Release_751.aspx | arkisto = https://web.archive.org/web/20120308030806/http://www.amd.com/us/press-releases/Pages/Press_Release_751.aspx | nimeke = AMD Discloses New Technologies At Microporcessor Forum | ajankohta = 5.10.1999 | viitattu = 19.9.2020 | kieli = {{en}} }}</ref> ja julkaisi määrittelyn vuonna 2000.<ref>{{Verkkoviite | osoite = http://www.amd.com/us/press-releases/Pages/Press_Release_715.aspx | arkisto = https://web.archive.org/web/20120308025559/http://www.amd.com/us/press-releases/Pages/Press_Release_715.aspx | nimeke = AMD Releases x86-64™ Architectural Specification; Enables Market Driven Migration to 64-Bit Computing | ajankohta = 10.8.2000 | viitattu = 19.9.2020 | kieli = {{en}} }}</ref>
Se toteutettiin ensimmäisen kerran vuonna 2003 julkaistuissa AMD Opteron ja [[AMD Athlon 64]] -suorittimissa. AMD64 -käskykanta oli ensimmäinen merkittävä lisäys x86-arkkitehtuuriin, joka oli jonkun muun yhtiön kuin Intelin tekemä. Intelin oma strategia 64-bittisyyteen siirtymiseksi oli julkaista [[Intel Itanium]] -arkkitehtuuri [[IA-64]]-käskykannalla, joka ei ollut alaspäin yhteensopiva ja jossa aikaisemmat PC:n käyttöjärjestelmät ja ohjelmat eivät siis toimineet.<ref>https://www.custompc.com/intel/pentium-4 </ref><ref>https://www.informit.com/articles/article.aspx?p=366538 </ref>
Intel joutui myös ottamaan käyttöön AMD64 -käskykannan, ensi kertaa vuonna 2004 [[NetBurst]]-mikroarkkitehtuurin Prescott-versiossa ([[Pentium 4]]). Intel käytti tästä kuitenkin nimeä EM64T ja Microsoft neutraalia x64-nimeä.<ref>https://www.informit.com/articles/article.aspx?p=366538 </ref>
VIA Technologies käytti AMD64-käskykantaa VIA Isaiah -arkkitehtuurissaan (VIA Nano -prosessori).


== Lisensointi ==
== Lisensointi ==
Rivi 10: Rivi 14:


Intel lisensoi AMD:lle oikeuden käyttää alkuperäistä x86 arkkitehtuuria.<ref>{{cite web
Intel lisensoi AMD:lle oikeuden käyttää alkuperäistä x86 arkkitehtuuria.<ref>{{cite web
|url = http://www.theinquirer.net/inquirer/opinion/759/1050759/amd-plays-antitrust-poker-intel-x86-licence
|url = http://www.theinquirer.net/inquirer/opinion/759/1050759/amd-plays-antitrust-poker-intel-x86-licence
|title = AMD plays antitrust poker for Intel's X86 licence
|title = AMD plays antitrust poker for Intel's X86 licence
|accessdate= 2009-02-26
|accessdate = 2009-02-26
|date = 2009-02-03
|date = 2009-02-03
|publisher = Incisive Media Limited
|publisher = Incisive Media Limited
|arkisto = https://web.archive.org/web/20090228183742/http://www.theinquirer.net/inquirer/opinion/759/1050759/amd-plays-antitrust-poker-intel-x86-licence
|arkistoitu = 2009-02-28
}}</ref><ref>{{cite web
}}</ref><ref>{{cite web
|url=http://contracts.corporate.findlaw.com/agreements/amd/intel.license.2001.01.01.html
|url=http://contracts.corporate.findlaw.com/agreements/amd/intel.license.2001.01.01.html
Rivi 25: Rivi 31:
}}</ref>
}}</ref>


Vuonna 2009 AMD ja Intel sopivat useita lakikiistoja ja erimielisyyksiä jatkaen ristiinlisensointisopimuksia.<ref>{{cite web |url = http://www.sec.gov/Archives/edgar/data/2488/000119312509236705/dex101.htm |title = AMD Intel Settlement Agreement}}</ref><ref>{{cite web |url= http://news.cnet.com/8301-1001_3-10396188-92.html |publisher= CNET |author= Stephen Shankland and Jonathan E. Skillings |title= Intel to pay AMD $1.25 billion in antitrust settlement |date= 2009-11-12 |accessdate= 2012-04-24}}</ref>
Vuonna 2009 AMD ja Intel sopivat useita lakikiistoja ja erimielisyyksiä jatkaen ristiinlisensointisopimuksia.<ref>{{cite web |url = http://www.sec.gov/Archives/edgar/data/2488/000119312509236705/dex101.htm |title = AMD Intel Settlement Agreement}}</ref><ref>{{cite web |url= http://news.cnet.com/8301-1001_3-10396188-92.html |publisher= CNET |author= Stephen Shankland and Jonathan E. Skillings |title= Intel to pay AMD $1.25 billion in antitrust settlement |date= 2009-11-12 |accessdate= 2012-04-24 |arkisto= https://web.archive.org/web/20121108032512/http://news.cnet.com/8301-1001_3-10396188-92.html |arkistoitu= 2012-11-08 }}</ref>


== Arkkitehtuurin eroja x86:een nähden ==
== Arkkitehtuurin eroja x86:een nähden ==
Rivi 33: Rivi 39:


* '''Enemmän [[rekisteri (tietokonetekniikka)|rekistereitä]]'''. Yleiskäyttöisten rekisterien määrä on nostettu IA-32:n kahdeksasta kuuteentoista.<ref name="suse" />
* '''Enemmän [[rekisteri (tietokonetekniikka)|rekistereitä]]'''. Yleiskäyttöisten rekisterien määrä on nostettu IA-32:n kahdeksasta kuuteentoista.<ref name="suse" />
* '''Suurempi osoiteavaruus'''. Virtuaalisen osoiteavaruuden kokoa on kasvatettu 32 bitistä 48 bittiin.<ref name="suse" /> AMD64-arkkitehtuurissa suurin osoitettava muistin määrä on siis 256 [[Tavu (tietotekniikka)|teratavua]], kun ''x86-32''-arkkitehtuurissa se oli 4 [[Tavu (tietotekniikka)|gigatavua]]. Lisäksi osoittimien käyttämättömien bittien käyttöä on rajoitettu siten, että arkkitehtuuria on helppo myöhemmin laajentaa 64-bittiseen osoiteavaruuteen säilyttäen yhteensopivuus vanhoihin käyttäjätason ohjelmiin, vaatien muutoksia vain käyttöjärjestelmän muistinhallinnalta.
* '''Suurempi osoiteavaruus'''. Virtuaalisen osoiteavaruuden kokoa on kasvatettu 32 bitistä 48 bittiin.<ref name="suse" /> AMD64-arkkitehtuurissa suurin osoitettava muistin määrä on siis 256 [[Tavu (tietotekniikka)|teratavua]], kun ''x86-32''-arkkitehtuurissa se oli 4 [[Tavu (tietotekniikka)|gigatavua]]. Lisäksi osoittimien käyttämättömien bittien käyttöä on rajoitettu siten, että arkkitehtuuria on helppo myöhemmin laajentaa 64-bittiseen osoiteavaruuteen säilyttäen yhteensopivuus vanhoihin käyttäjätason ohjelmiin, vaatien muutoksia vain käyttöjärjestelmän [[muistinhallinta|muistinhallinnalta]].
* '''Muistin osoittaminen suhteessa [[ohjelmalaskuri]]in''' (englanniksi ''instruction pointer relative data access'' – lyhyemmin ''RIP relative data access''). Muistiin pystyy AMD64-arkkitehtuurissa viittaamaan myös suhteessa ohjelmalaskuriin.<ref name="suse" /> Tämä mahdollístaa osoiteriippumattoman koodin.
* '''Muistin osoittaminen suhteessa [[ohjelmalaskuri]]in''' (englanniksi ''instruction pointer relative data access'' – lyhyemmin ''RIP relative data access''). Muistiin pystyy AMD64-arkkitehtuurissa viittaamaan myös suhteessa ohjelmalaskuriin.<ref name="suse" /> Tämä mahdollístaa osoiteriippumattoman koodin.
* '''SSE-käskykanta'''. AMD64-arkkitehtuuri sisältää [[SSE2]]-käskykantalaajennuksen [[x87]]- ja [[x86#MMX|MMX]]-käskyjen lisäksi.<ref name="suse" />
* '''SSE-käskykanta'''. AMD64-arkkitehtuuri sisältää [[SSE2]]-käskykantalaajennuksen [[x87]]- ja [[x86#MMX|MMX]]-käskyjen lisäksi.<ref name="suse" />
* '''[[NX-bitti]]'''. NX-bitti on suojausteknologia, joka mahdollistaa tiettyjen muistialueiden merkitsemisen suorituskieltoon. Näin pyritään ehkäisemään [[Puskurin ylivuotovirhe|puskuriylivuoto]]haavoittuvuuksien aiheuttamia haittoja. AMD julkaisi tuen Athlon 64 -suorittimissa ja Intel Prescott-ytimellisissä Pentium 4 -suorittimissa.<ref>{{Verkkoviite | osoite = https://www.zdnet.com/article/amd-intel-put-antivirus-tech-into-chips/ | nimeke = AMD, Intel put antivirus tech into chips | ajankohta = 8.1.2004 | viitattu = 19.9.2020 | kieli = {{en}} }}</ref><ref>{{Verkkoviite | osoite = http://h10032.www1.hp.com/ctg/Manual/c00387685.pdf | nimeke = Data Execution Prevention | tiedostomuoto = PDF | viitattu = 19.9.2020 | kieli = {{en}} }}</ref><ref>{{Verkkoviite | osoite = https://lwn.net/Articles/87814/ | nimeke = x86 NX support | ajankohta = 2.6.2004 | viitattu = 20.9.2020 | kieli = {{en}} }}</ref>
* '''[[NX-bitti]]'''. NX-bitti on suojausteknologia, joka mahdollistaa tiettyjen muistialueiden merkitsemisen suorituskieltoon. Näin pyritään ehkäisemään [[Puskurin ylivuotovirhe|puskuriylivuoto]]haavoittuvuuksien aiheuttamia haittoja. AMD julkaisi tuen Athlon 64 -suorittimissa ja Intel Prescott-ytimellisissä Pentium 4 -suorittimissa.<ref>{{Verkkoviite | osoite = https://www.zdnet.com/article/amd-intel-put-antivirus-tech-into-chips/ | nimeke = AMD, Intel put antivirus tech into chips | ajankohta = 8.1.2004 | viitattu = 19.9.2020 | kieli = {{en}} }}</ref><ref>{{Verkkoviite | osoite = http://h10032.www1.hp.com/ctg/Manual/c00387685.pdf | nimeke = Data Execution Prevention | tiedostomuoto = PDF | viitattu = 19.9.2020 | kieli = {{en}} }}</ref><ref>{{Verkkoviite | osoite = https://lwn.net/Articles/87814/ | nimeke = x86 NX support | ajankohta = 2.6.2004 | viitattu = 20.9.2020 | kieli = {{en}} }}</ref>
* Segmentoitu muisti ei ole enää tuettu. [[Muistisivu]]jen käyttö on tyypillisempää ja mahdollistaa yksinkertaisemman ohjelmoinnin sekä tehokkaamman [[moniprosessointi|moniprosessoinnin]].<ref name="amd64">{{Verkkoviite | osoite = http://developer.amd.com/wordpress/media/2012/10/24593_APM_v21.pdf | nimeke = AMD64 Technology AMD64 Architecture Programmer’s Manual Volume 2: System Programming | julkaisija = AMD | viitattu = 12.1.2017}}</ref>
* [[Segmentoitu muisti]] ei ole enää tuettu. [[Muistisivu]]jen käyttö on tyypillisempää ja mahdollistaa yksinkertaisemman ohjelmoinnin sekä tehokkaamman [[moniprosessointi|moniprosessoinnin]].<ref name="amd64">{{Verkkoviite | osoite = http://developer.amd.com/wordpress/media/2012/10/24593_APM_v21.pdf | nimeke = AMD64 Technology AMD64 Architecture Programmer’s Manual Volume 2: System Programming | julkaisija = AMD | viitattu = 12.1.2017 | arkisto = https://web.archive.org/web/20160303230732/http://developer.amd.com/wordpress/media/2012/10/24593_APM_v21.pdf | arkistoitu = 3.3.2016 }}</ref>

Ohjelmien suorituksessa ''long mode'' -tilassa on käytössä uusi [[ABI]], muutoin käytössä on vanha yhteensopivuustila.<ref>{{Verkkoviite | osoite = https://refspecs.linuxbase.org/elf/x86_64-abi-0.99.pdf | nimeke = System V Application Binary Interface | sivu = 9 | tiedostomuoto = PDF | ajankohta = 2.7.2012 | viitattu = 20.9.2020 | kieli = {{en}} }}</ref>

==Jatkokehitys==

AMD64-yhteensopiva 64-bittinen käskykanta vaati jo määritelmien mukaan [[SSE]] ja [[SSE2]] -tuen. 32-bittistä liukulukukäskykantaa [[x87]] tai MMX-käskyjä ei vaadita, mutta kaikki suorittimet toteuttavat ne silti.<ref>https://walbourn.github.io/directxmath-sse-sse2-and-arm-neon/ </ref>

Käskykantaa on sittemmin laajennettu vielä SSE3- ja SSE4-käskyillä ja AVX-käskyillä laajentamalla [[SIMD]]-rekisterit 256-bittisiksi, joilla voi laskea neljää 64-bittistä [[liukuluku]]a tai kahdeksaa 32-bittistä liukulukua rinnan. AVX2 eli Haswell New Instructions mahdollisti kokonaislukujen käsittelyn 256-bittisissä SIMD-rekistereissä.

AVX/AVX2-käskyt toteuttavaa käskykantaa on nimitetty x86-64-v3 -mikroarkkitehtuuriksi. On tehty suunnitelmia, että tämä vuonna 2013 Intelin "Haswell"-prosessorissa julkaistu ja [[AMD_Bulldozer#Excavator|AMD Excavator]]issa toteutettu käskykanta otettaisiin pienimmäksi vaadituksi käskykannaksi, etenkin palvelimiin suunnatuissa käyttöjärjestelmissä.<ref>https://www.phoronix.com/news/RedHat-RHEL10-x86-64-v3-Explore </ref>


== Toimintatilat ==
== Toimintatilat ==
Rivi 105: Rivi 121:
{{AMD:n suorittimet}}
{{AMD:n suorittimet}}


{{Tynkä/Tietotekniikka}}
[[Luokka:Suoritinarkkitehtuurit]]
[[Luokka:Suoritinarkkitehtuurit]]
[[Luokka:AMD]]
[[Luokka:AMD]]

Nykyinen versio 2. maaliskuuta 2024 kello 09.59

AMD64 -logo.

AMD64 (myös nimillä x86-64, x86_64 ja x64) on AMD:n kehittämä 64-bittinen suoritinarkkitehtuuri, joka suunniteltiin kehitysaskeleeksi 32-bittisestä x86-arkkitehtuurista.[1] Vanhoja 16- ja 32-bittisiä real mode- ja protected mode-ohjelmia varten suorittimessa on vielä mukana niille tukea säilyttäen yhteensopivuuden vanhoille ohjelmille.[1] 64-bittiset ohjelmat suoritetaan long mode -tilassa.[1] Intelillä oli kilpaileva EM64T-arkkitehtuuri, jota Intel muokkasi täyteen AMD64-yhteensopivuuteen lisäämällä LAHF- ja SAHF-käskyt.[2][3]

AMD ilmoitti arkkitehtuurista vuonna 1999[4] ja julkaisi määrittelyn vuonna 2000.[5] Se toteutettiin ensimmäisen kerran vuonna 2003 julkaistuissa AMD Opteron ja AMD Athlon 64 -suorittimissa. AMD64 -käskykanta oli ensimmäinen merkittävä lisäys x86-arkkitehtuuriin, joka oli jonkun muun yhtiön kuin Intelin tekemä. Intelin oma strategia 64-bittisyyteen siirtymiseksi oli julkaista Intel Itanium -arkkitehtuuri IA-64-käskykannalla, joka ei ollut alaspäin yhteensopiva ja jossa aikaisemmat PC:n käyttöjärjestelmät ja ohjelmat eivät siis toimineet.[6][7] Intel joutui myös ottamaan käyttöön AMD64 -käskykannan, ensi kertaa vuonna 2004 NetBurst-mikroarkkitehtuurin Prescott-versiossa (Pentium 4). Intel käytti tästä kuitenkin nimeä EM64T ja Microsoft neutraalia x64-nimeä.[8] VIA Technologies käytti AMD64-käskykantaa VIA Isaiah -arkkitehtuurissaan (VIA Nano -prosessori).

Intel ja AMD ovat sopineet ristiin lisensoinnista, jolloin myös Intel käyttää AMD64-tilaa prosessoreissaan.

Intel lisensoi AMD:lle oikeuden käyttää alkuperäistä x86 arkkitehtuuria.[9][10]

Vuonna 2009 AMD ja Intel sopivat useita lakikiistoja ja erimielisyyksiä jatkaen ristiinlisensointisopimuksia.[11][12]

Arkkitehtuurin eroja x86:een nähden

[muokkaa | muokkaa wikitekstiä]

Samalla piirillä on legacy-mode tuki IA-32 käskykannalle. Kun prosessori toimii long-mode tilassa tietyt erot tulevat voimaan.[13]

  • Enemmän rekistereitä. Yleiskäyttöisten rekisterien määrä on nostettu IA-32:n kahdeksasta kuuteentoista.[13]
  • Suurempi osoiteavaruus. Virtuaalisen osoiteavaruuden kokoa on kasvatettu 32 bitistä 48 bittiin.[13] AMD64-arkkitehtuurissa suurin osoitettava muistin määrä on siis 256 teratavua, kun x86-32-arkkitehtuurissa se oli 4 gigatavua. Lisäksi osoittimien käyttämättömien bittien käyttöä on rajoitettu siten, että arkkitehtuuria on helppo myöhemmin laajentaa 64-bittiseen osoiteavaruuteen säilyttäen yhteensopivuus vanhoihin käyttäjätason ohjelmiin, vaatien muutoksia vain käyttöjärjestelmän muistinhallinnalta.
  • Muistin osoittaminen suhteessa ohjelmalaskuriin (englanniksi instruction pointer relative data access – lyhyemmin RIP relative data access). Muistiin pystyy AMD64-arkkitehtuurissa viittaamaan myös suhteessa ohjelmalaskuriin.[13] Tämä mahdollístaa osoiteriippumattoman koodin.
  • SSE-käskykanta. AMD64-arkkitehtuuri sisältää SSE2-käskykantalaajennuksen x87- ja MMX-käskyjen lisäksi.[13]
  • NX-bitti. NX-bitti on suojausteknologia, joka mahdollistaa tiettyjen muistialueiden merkitsemisen suorituskieltoon. Näin pyritään ehkäisemään puskuriylivuotohaavoittuvuuksien aiheuttamia haittoja. AMD julkaisi tuen Athlon 64 -suorittimissa ja Intel Prescott-ytimellisissä Pentium 4 -suorittimissa.[14][15][16]
  • Segmentoitu muisti ei ole enää tuettu. Muistisivujen käyttö on tyypillisempää ja mahdollistaa yksinkertaisemman ohjelmoinnin sekä tehokkaamman moniprosessoinnin.[17]

Ohjelmien suorituksessa long mode -tilassa on käytössä uusi ABI, muutoin käytössä on vanha yhteensopivuustila.[18]

AMD64-yhteensopiva 64-bittinen käskykanta vaati jo määritelmien mukaan SSE ja SSE2 -tuen. 32-bittistä liukulukukäskykantaa x87 tai MMX-käskyjä ei vaadita, mutta kaikki suorittimet toteuttavat ne silti.[19]

Käskykantaa on sittemmin laajennettu vielä SSE3- ja SSE4-käskyillä ja AVX-käskyillä laajentamalla SIMD-rekisterit 256-bittisiksi, joilla voi laskea neljää 64-bittistä liukulukua tai kahdeksaa 32-bittistä liukulukua rinnan. AVX2 eli Haswell New Instructions mahdollisti kokonaislukujen käsittelyn 256-bittisissä SIMD-rekistereissä.

AVX/AVX2-käskyt toteuttavaa käskykantaa on nimitetty x86-64-v3 -mikroarkkitehtuuriksi. On tehty suunnitelmia, että tämä vuonna 2013 Intelin "Haswell"-prosessorissa julkaistu ja AMD Excavatorissa toteutettu käskykanta otettaisiin pienimmäksi vaadituksi käskykannaksi, etenkin palvelimiin suunnatuissa käyttöjärjestelmissä.[20]

Toimintatilat

[muokkaa | muokkaa wikitekstiä]
Toimintatila Vaadittu käyttöjärjestelmän tyyppi Sovellusten uudelleenkääntäminen tarvitaan Osoitteen oletuskoko Operandin oletuskoko Rekisterilaajennukset Tyypillinen yleiskäyttöisen rekisterin koko
Long mode 64-bittinen tila Uusi 64-bittinen käyttöjärjestelmä kyllä 64 32 kyllä 64
Yhteensopivuustila ei 32 ei 32
16 16 16
Legacy
Mode
Suojattu tila Vanha 32-bittinen käyttöjärjestelmä ei 32 32 ei 32
16 16
Virtuaalinen 8086-tila 16 16 16
Reaalitila Vanha 16-bittinen käyttöjärjestelmä
  1. a b c AMD 64-bit architecture (x86-64) hardwaresecrets.com. 27.10.2004. Viitattu 20.9.2020. (englanniksi)
  2. Intel EM64T Technology Explained hardwaresecrets.com. 15.12.2005. Viitattu 19.9.2020. (englanniksi) 
  3. Tony Smith: Intel tweaks EM64T for full AMD64 compatibility theregister.com. 23.8.2005. Viitattu 7.1.2024. (englanniksi)
  4. AMD Discloses New Technologies At Microporcessor Forum amd.com. 5.10.1999. Arkistoitu Viitattu 19.9.2020. (englanniksi)
  5. AMD Releases x86-64™ Architectural Specification; Enables Market Driven Migration to 64-Bit Computing amd.com. 10.8.2000. Arkistoitu Viitattu 19.9.2020. (englanniksi)
  6. https://www.custompc.com/intel/pentium-4
  7. https://www.informit.com/articles/article.aspx?p=366538
  8. https://www.informit.com/articles/article.aspx?p=366538
  9. AMD plays antitrust poker for Intel's X86 licence 3.2.2009. Incisive Media Limited. Arkistoitu 28.2.2009. Viitattu 26.2.2009.
  10. Patent Cross License Agreement Between AMD and Intel contracts.corporate.findlaw.com. 1.1.2001. Arkistoitu June 21, 2007. Viitattu 23.8.2009.
  11. AMD Intel Settlement Agreement sec.gov.
  12. Stephen Shankland and Jonathan E. Skillings: Intel to pay AMD $1.25 billion in antitrust settlement 12.11.2009. CNET. Arkistoitu 8.11.2012. Viitattu 24.4.2012.
  13. a b c d e Porting Linux to x86-64 (PDF) SuSE Labs. Viitattu 12.1.2017. (englanniksi) 
  14. AMD, Intel put antivirus tech into chips zdnet.com. 8.1.2004. Viitattu 19.9.2020. (englanniksi)
  15. Data Execution Prevention (PDF) h10032.www1.hp.com. Viitattu 19.9.2020. (englanniksi)
  16. x86 NX support lwn.net. 2.6.2004. Viitattu 20.9.2020. (englanniksi)
  17. AMD64 Technology AMD64 Architecture Programmer’s Manual Volume 2: System Programming AMD. Arkistoitu 3.3.2016. Viitattu 12.1.2017.
  18. System V Application Binary Interface (PDF) refspecs.linuxbase.org. 2.7.2012. Viitattu 20.9.2020. (englanniksi) 
  19. https://walbourn.github.io/directxmath-sse-sse2-and-arm-neon/
  20. https://www.phoronix.com/news/RedHat-RHEL10-x86-64-v3-Explore

Aiheesta muualla

[muokkaa | muokkaa wikitekstiä]