Ero sivun ”AMD64” versioiden välillä

Wikipediasta
Siirry navigaatioon Siirry hakuun
[katsottu versio][katsottu versio]
Poistettu sisältö Lisätty sisältö
Pelastettu 1 lähde(ttä) ja merkitty 0 kuolleeksi.) #IABot (v2.0.8.8
Ipr1 (keskustelu | muokkaukset)
Rivi 39: Rivi 39:
* '''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 | arkisto = https://web.archive.org/web/20160303230732/http://developer.amd.com/wordpress/media/2012/10/24593_APM_v21.pdf | arkistoitu = 3.3.2016 }}</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>
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>

Versio 5. lokakuuta 2022 kello 17.18

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.[2]

AMD ilmoitti arkkitehtuurista vuonna 1999[3] ja julkaisi määrittelyn vuonna 2000.[4]

Lisensointi

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.[5][6]

Vuonna 2009 AMD ja Intel sopivat useita lakikiistoja ja erimielisyyksiä jatkaen ristiinlisensointisopimuksia.[7][8]

Arkkitehtuurin eroja x86:een nähden

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

  • Enemmän rekistereitä. Yleiskäyttöisten rekisterien määrä on nostettu IA-32:n kahdeksasta kuuteentoista.[9]
  • Suurempi osoiteavaruus. Virtuaalisen osoiteavaruuden kokoa on kasvatettu 32 bitistä 48 bittiin.[9] 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.[9] Tämä mahdollístaa osoiteriippumattoman koodin.
  • SSE-käskykanta. AMD64-arkkitehtuuri sisältää SSE2-käskykantalaajennuksen x87- ja MMX-käskyjen lisäksi.[9]
  • 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.[10][11][12]
  • Segmentoitu muisti ei ole enää tuettu. Muistisivujen käyttö on tyypillisempää ja mahdollistaa yksinkertaisemman ohjelmoinnin sekä tehokkaamman moniprosessoinnin.[13]

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

Toimintatilat

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ä

Lähteet

  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. AMD Discloses New Technologies At Microporcessor Forum amd.com. 5.10.1999. Arkistoitu Viitattu 19.9.2020. (englanniksi)
  4. 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)
  5. AMD plays antitrust poker for Intel's X86 licence 3.2.2009. Incisive Media Limited. Arkistoitu 28.2.2009. Viitattu 26.2.2009.
  6. Patent Cross License Agreement Between AMD and Intel contracts.corporate.findlaw.com. 1.1.2001. Arkistoitu June 21, 2007. Viitattu 23.8.2009.
  7. AMD Intel Settlement Agreement sec.gov.
  8. Stephen Shankland and Jonathan E. Skillings: Intel to pay AMD $1.25 billion in antitrust settlement 12.11.2009. CNET. Viitattu 24.4.2012.
  9. a b c d e Porting Linux to x86-64 (PDF) SuSE Labs. Viitattu 12.1.2017. (englanniksi) 
  10. AMD, Intel put antivirus tech into chips zdnet.com. 8.1.2004. Viitattu 19.9.2020. (englanniksi)
  11. Data Execution Prevention (PDF) h10032.www1.hp.com. Viitattu 19.9.2020. (englanniksi)
  12. x86 NX support lwn.net. 2.6.2004. Viitattu 20.9.2020. (englanniksi)
  13. AMD64 Technology AMD64 Architecture Programmer’s Manual Volume 2: System Programming AMD. Arkistoitu 3.3.2016. Viitattu 12.1.2017.
  14. System V Application Binary Interface (PDF) refspecs.linuxbase.org. 2.7.2012. Viitattu 20.9.2020. (englanniksi) 

Aiheesta muualla

Tämä tietotekniikkaan liittyvä artikkeli on tynkä. Voit auttaa Wikipediaa laajentamalla artikkelia.