30Jul
De meeste mensen upgraden van 32-bits computergebruik naar 64-bits computergebruik om door de limiet van 4 GB RAM te blazen, maar hoe ver van kan je die limiet doorlopen zodra je het rijk van 64-bits computers bent binnengegaan?
De vraag van vandaag &Antwoord sessie komt naar ons met dank aan SuperUser-een onderverdeling van Stack Exchange, een community-gestuurde groepering van Q & A-websites. Afbeelding door Petr Kratochvil.
De vraag
SuperUser-lezer KingNestor is nieuwsgierig naar hoeveel RAM een 64-bit computer kan bevatten:
Ik lees mijn computerarchitectuurboek door en ik zie dat in een x86, 32bit CPU, de programmateller 32 bit is.
Dus, het aantal bytes dat het kan adresseren is 2 ^ 32 bytes of 4GB.Het is dus logisch dat de meeste 32-bits machines de hoeveelheid ram beperken tot 4 gb( waarbij PAE wordt genegeerd).
Heb ik gelijk als ik aanneem dat een 64bit machine in theorie 2 ^ 64 bytes zou kunnen adresseren, of 16 exabytes van ram? !
Exabytes u zegt? Laten we nu niet hebzuchtig zijn. We beginnen graag met een terabyte of twee.
Het antwoord
De antwoorden op het onderzoek van KingNestor zijn een interessante mix van praktische en theoretische overwegingen. Matt Ball springt meteen in met het theoretische antwoord:
Theoretisch: 16,8 miljoen terabytes. In de praktijk: uw computerbehuizing is iets te klein om in al die RAM te passen.
http: //en.wikipedia.org/wiki/ 64-bit # Limitations_of_practical_processors
Conrad Dean springt in met een opmerking over hoe volledig onpraktisch het zou zijn om de theoretische RAM-limiet te maximaliseren met behulp van de technologie van vandaag:
Om het antwoord van Matt Ball aan te vullen, kan de momenteel grootste hoeveelheid RAM ikvinden op een bepaalde online retailer is 32 GB.Het zou 32 hiervan kosten om 1 terabyte te bereiken. Op ongeveer een halve inch per stick brengt dit ons naar een toegewijde 16 inch ruimte op je moederbord voor een terabyte aan commerciële ram. Om 16.8 miljoen terabytes te bereiken zou een moederbord nodig zijn van 4.242.42 mijl. De afstand van LA naar NYC is ongeveer 2141 mijl, dus het moederbord zou zich over het land uitstrekken en terug om zoveel RAM te ontvangen.
Het is duidelijk dat dit onpraktisch is.
Hoe zit het met het plaatsen van ons RAM-geheugen in één rij, zoals op de meeste moederborden, maar in plaats daarvan naast elkaar geplaatst? Ik wil zeggen dat de gemiddelde stok van de ram ongeveer zes centimeter lang is, dus als we een halve inch breed toestaan, kun je een vierkante eenheid van 12 stokken ram in een vierkant van 6 inch hebben. Laten we dit vierkant een RAM-tegel noemen. Een RAM-tegel bevat dan 384 GB RAM.Om de vereiste 16,8 miljoen terabytes in 384 GB tegels te krijgen, zou 44,8 miljoen tegels nodig zijn. Laten we rommelig zijn en gebruik de vierkantswortel ervan om te concluderen dat dit in een vierkant van 6693 bij 6694 tegels past, of 13,386 bij 13,388 voet, wat dicht genoeg bij 2,5 voet in het kwadraat is, genoeg om het centrum van Seattle in de schaduw te bedekken, alsofze hadden niet al genoeg om over te klagen.
Ten slotte merkt David Schwartz op dat zelfs de theoretische limiet verzandt door de huidige CPU-architectuur:
Merk op dat geen enkele bestaande x86 64-bit processor dit kan doen. Hun caches hebben niet genoeg tag-bits, hun adresbussen hebben niet genoeg breedte, enzovoort.46-bits( 8TB) is het maximum voor veel moderne x86-CPU's.
Heeft u iets toe te voegen aan de uitleg? Geluid uit in de opmerkingen. Wilt u meer antwoorden van andere technisch onderlegde Stack Exchange-gebruikers lezen? Bekijk de volledige discussiethread hier.