X32 ABI

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 25. december 2021; checks kræver 3 redigeringer .

x32 ABI  er et under udvikling binært applikationsgrænsefladeprojekt til Linux , der gør det muligt at kompilere programmer til x32 ABI og køre i x86-64 64-bit tilstand ved hjælp af 32-bit pointere og datafelter [1] [2] [3] . Selvom dette begrænser programmets virtuelle adresserum til maksimalt 4 GB, reducerer det også mængden af ​​hukommelse, som programmer optager, og kan i nogle tilfælde få dem til at køre hurtigere [1] [2] [3] . De bedste resultater under test blev opnået i 181.mcf SPEC CPU 2000-testen, hvor resultatet for x32-versionen af ​​ABI var 32 % hurtigere end for x86-64-versionen [3] [4] . Med andre ord er x32 ABI praktisk til programmer, der ikke bruger mere end 4 GB virtuel hukommelse.

Historie

Adskillige mennesker har diskuteret fordelene ved x86-64 ABI med 32-bit pointere siden udgivelsen af ​​Athlon 64 i 2003 (især Donald Knuth i 2008 [5] ). Derefter var der kun få offentligt synlige fremskridt med at implementere sådan en tilstand indtil den 27. august 2011, hvor H. Peter Anvin annoncerede på Linux-kernens mailingliste, at han og HJ Lu arbejdede på x32-ABI [6] .

Samme dag udtrykte Linus Torvalds bekymring for, at brug af en 32-bit tidsværdi i x32 ABI kunne føre til problemer i fremtiden [7] [8] . Dette skyldes, at brug af en 32-bit tidsværdi vil overløbe tidsværdien i 2038 [7] [8] . x32 ABI-udviklerne planlægger at ændre tiderne til 64-bit [3] [9] .

x32 ABI var inkluderet i Linux-kerneudgivelsen 3.4. [ti]

Fra december 2018 blev x32 ABI betragtet som forældet og var i forberedelse til fuldstændig fjernelse af support fra linux-kernen. [elleve]

Noter

  1. 12 Thorsten Leemhuis . Kernel Log: x32 ABI får omkring 64-bit ulemper , www.h-online.com (13. september 2011). Arkiveret fra originalen den 28. oktober 2011. Hentet 1. november 2011.
  2. 1 2 x32 - en indbygget 32-bit ABI til x86-64 , linuxplumbersconf.org. Arkiveret fra originalen den 5. maj 2012. Hentet 12. juni 2012.
  3. 1 2 3 4 x32-abi , Google Sites. Arkiveret fra originalen den 30. oktober 2011. Hentet 1. november 2011.
  4. 181.mcf SPEC CPU2000 Benchmark Description File , Standard Performance Evaluation Corporation (14. oktober 1999). Arkiveret fra originalen den 8. september 2018. Hentet 1. november 2011.
  5. Donald Knuth. Seneste nyheder: En flamme om 64-bit pointere (februar 2008). Hentet 15. maj 2012. Arkiveret fra originalen 26. september 2012.
  6. H. Peter Anvin. RFD: x32 ABI-systemopkaldsnumre (27. august 2012). Hentet 15. maj 2012. Arkiveret fra originalen 26. september 2012.
  7. 12 Jonathan Corbet . x32-systemet kalder ABI , LWN.net (29. august 2011). Arkiveret fra originalen den 7. maj 2022. Hentet 1. november 2011.
  8. 12 Linus Torvalds . Ad: RFD: x32 ABI-systemopkaldsnumre , LWN.net (26. august 2011). Arkiveret fra originalen den 1. december 2017. Hentet 1. november 2011.
  9. H. Peter Anvin . Ad: RFD: x32 ABI-systemopkaldsnumre , LWN.net (29. august 2011). Arkiveret fra originalen den 16. november 2011. Hentet 1. november 2011.
  10. Linux 3.4 - Linux-kernenybegyndere . Hentet 12. august 2012. Arkiveret fra originalen 15. august 2012.
  11. LKML: Andy Lutomirski: Kan vi droppe upstream Linux x32 support? . Hentet 12. maj 2020. Arkiveret fra originalen 8. november 2020.

Links