อะไรคือจำนวนสูงสุดของ ram ที่เครื่อง 64 บิตสามารถใช้ตามหลักวิชาได้?


21

ฉันอ่านหนังสือสถาปัตยกรรมคอมพิวเตอร์ของฉันและฉันเห็นว่าใน x86, 32 บิต CPU ตัวนับโปรแกรมเป็น 32 บิต

ดังนั้นจำนวนไบต์ที่สามารถระบุได้คือ 2 ^ 32 ไบต์หรือ 4GB สำหรับฉันแล้วมันก็สมเหตุสมผลแล้วที่เครื่อง 32 บิตส่วนใหญ่ จำกัด จำนวน ram ไว้ที่ 4gb (ไม่สนใจ PAE)

ฉันถูกสมมติว่าเครื่อง 64 บิตตามหลักวิชาสามารถจัดการกับ 2 ^ 64 ไบต์หรือRAM 16 เมกะไบต์ได้หรือไม่!


4
โปรดทราบว่าไม่มีตัวประมวลผล x86 64- บิตที่มีอยู่สามารถทำได้ แคชของพวกเขามีแท็กบิตไม่เพียงพอรถประจำทางที่อยู่ของพวกเขามีความกว้างไม่เพียงพอและอื่น ๆ 46-bits (8TB) เป็นจำนวนสูงสุดสำหรับซีพียู x86 ที่ทันสมัยหลายรุ่น
David Schwartz

4
ในทางทฤษฎีไม่มีข้อ จำกัด แม้แต่ CPU แบบ 32 บิตสามารถมีพื้นที่ที่อยู่สูงกว่า 4 GiB ขึ้นอยู่กับวิธีการนำระบบการจัดการหน่วยความจำไปใช้ในฮาร์ดแวร์ซึ่งมักจะไม่ขึ้นอยู่กับความยาวของ CPU ตัวชี้ในโปรแกรมมักจะมีความยาวของคำ แต่ที่อยู่เหล่านี้เป็นที่อยู่เสมือนจริง ๆ (ไม่ใช่ที่อยู่จริง) ดังนั้นพวกเขาจึงถูกแมปไปยังพื้นที่ที่อยู่อื่น
Breakthrough

นี่เป็นคำถามที่มีคำตอบเก่าเก่า แต่ฉันรู้สึกเหมือนคำตอบ upvoted ที่สุดกับคำถามนี้จะทำให้เข้าใจผิดมากและพวกเขาเป็นคำตอบวิธี RAM มากสามารถเครื่องที่มีอยู่รถบัสที่อยู่กว้าง ดังที่ David และ Breakthrough ชี้ให้เห็นข้างต้น"การเป็นพยาน"ของสถาปัตยกรรมสะท้อนถึงขนาดของการลงทะเบียนหลักไม่ใช่ขนาดของบัสที่อยู่
Sebi

ทำไมคุณไม่สนใจ PAE
เจมี่ Hanrahan

คำตอบ:


28

ตามหลักวิชา: 16.8 ล้านเทราไบต์ ในทางปฏิบัติ: เคสคอมพิวเตอร์ของคุณเล็กไปหน่อยที่จะพอดีกับแรมทั้งหมด

http://en.wikipedia.org/wiki/64-bit#Limitations_of_practical_processors


13
เล็กเกินไป .... วันนี้ !!!!
snicker

2
16.777216 ล้าน tebibyte หากคุณต้องการความแม่นยำ
totymedli

ฉันอ่านในแหล่งข้อมูลอื่น ๆ ที่หน่วยประมวลผลไม่สามารถใช้ทุก ๆ บิตเพื่อเข้าถึงหน่วยความจำได้นี่เป็นคำตอบของคุณหรือไม่?
Andrey

17

เพื่อเสริมคำตอบของ Matt Ball, RAM ที่ใหญ่ที่สุดในปัจจุบันที่ฉันสามารถหาได้จากร้านค้าปลีกออนไลน์รายหนึ่งคือ 32GB ใช้เวลา 32 ในการเข้าถึง 1 เทราไบต์ ที่ประมาณครึ่งนิ้วต่อแท่งนี่ทำให้เรามีพื้นที่ 16 นิ้วบนเมนบอร์ดของคุณสำหรับหน่วยความจำเทราไบต์ ในการเข้าถึง 16.8 ล้านเทราไบต์นั้นจะต้องใช้เมนบอร์ด 4,242.42 ไมล์ ระยะทางจาก LA ไปยัง NYC อยู่ที่ประมาณ 2,241 ไมล์ดังนั้นเมนบอร์ดจะแผ่ขยายไปทั่วประเทศและกลับมารองรับ RAM ขนาดนั้น

เห็นได้ชัดว่านี่เป็นสิ่งที่ทำไม่ได้

แล้วเราไม่ได้ใส่ RAM ทั้งหมดในแถวเดียวบนมาเธอร์บอร์ดส่วนใหญ่ แต่แทนที่จะวางไว้ข้างๆ ฉันอยากจะบอกว่าไม้ ram โดยเฉลี่ยนั้นยาวประมาณหกนิ้วดังนั้นถ้าเราให้ความกว้างครึ่งนิ้วคุณสามารถมีหน่วยสี่เหลี่ยม 12 แท่งของ ram ในสี่เหลี่ยม 6 นิ้ว ลองเรียกสี่เหลี่ยมจัตุรัส RAM ตัวนี้ว่า ไทล์แรมจะมี RAM ขนาด 384GB ในการเข้าถึง 16.8 ล้านเทราไบต์ที่ต้องการในไทล์ 384GB จะใช้เวลา 44.8 ล้านไทล์ มายุ่งกันและใช้สแควร์รูทของมันเพื่อสรุปว่ามันจะพอดีกับสี่เหลี่ยม 6693 คูณ 6694 แผ่นหรือ 13,386 คูณ 13,388 ฟุตซึ่งอยู่ใกล้พอถึง 2.5 ไมล์ยกกำลังสองเพื่อให้ครอบคลุมเมืองซีแอตเทิลในเงาราวกับว่า พวกเขามีไม่เพียงพอที่จะบ่น


2
มีขนาดใหญ่เกินไป. ทำไมคุณถึงนอนราบ? คุณสามารถรับได้ทั้งหมดในคิวบ์ 100 ' คุณอาจต้องการไนโตรเจนเหลวเพื่อทำให้มันเย็นอยู่เสมอ!
Loren Pechtel

1
ปริมาณของก๊าซไนโตรเจนที่จะทำให้เดือดจะก่อให้เกิดความเสี่ยงด้านความปลอดภัยต่อผู้ยิ่งใหญ่ของซีแอตเทิล
คอนราด

หนึ่งการแก้ไขที่เป็นไปได้ เนื่องจากไทล์เป็น 6 "คูณ 6" จะไม่ทำให้พื้นที่ 3346.5 คูณ 3347 ฟุต (นับครึ่งกระเบื้อง) แทนที่จะอ้างถึง 13,386 ซึ่งนับเป็นสองเท่าของจำนวนไทล์ นอกจากนี้ยังมีอีกประเด็นที่ไม่มีใครพูดถึง สมมติว่ามีการจัดเรียงที่ดีที่สุด: วงกลมรัศมีจะต้องประมาณ 1,890 ฟุตเพื่อล้อมรอบพื้นที่ที่ต้องการ ในฐานะที่เป็น Adm, เกรซฮอปเปอร์ชี้ให้เห็นว่าความล่าช้าในการส่งผ่านทองแดงอยู่ที่ประมาณหนึ่งนาโนวินาที / ฟุต นั่นหมายถึงเวลาในการเดินทางไปกลับรอบวงแหวนรอบนอกจะอยู่ที่ประมาณ 3.78 ไมโครวินาที นั่นเป็นเพียงเล็กน้อยในด้านช้าสำหรับหน่วยความจำหลัก IMEHO
dgnuff

4

ในทางทฤษฎีแล้วกระบวนการได้อย่างมีประสิทธิภาพสามารถระบุที่อยู่ 2 ^ 64 ไบต์ของหน่วยความจำได้ แต่เมื่อคุณชี้ให้เห็นว่ามีวิธีรอบขีด จำกัด นี้


3

ไม่มีความสัมพันธ์ที่แน่นอนโดยเฉพาะระหว่างขนาดบิตของโปรเซสเซอร์และจำนวนหน่วยความจำที่แอดเดรสได้ เครื่อง 8 บิตส่วนใหญ่ของช่วงปลายปี 1970 สามารถเข้าถึง 65,536 ไบต์โดยตรงโดยตรงส่วน 16-bit 8088 และ 8086 สามารถเข้าถึง 1,048,576 ไบต์ได้โดยตรง นอกจากนี้ยังเป็นไปได้ที่จะเพิ่มฮาร์ดแวร์เพื่อให้เครื่องสามารถเข้าถึง RAM จำนวนใด ๆ ทางอ้อม เครื่องจำนวนมากที่มีโปรเซสเซอร์ 8 บิตมี 128K ขึ้นไปและหน่วยขยายหน่วยความจำสำหรับพีซีที่ใช้ 8088 สามารถเข้าถึงได้มากกว่า 16 เมกะไบต์ แม้ว่า Microsoft จะเปิดใช้งานคุณลักษณะดังกล่าวใน Windows "เซิร์ฟเวอร์" เท่านั้น แต่เป็นไปได้ที่รหัส 32 บิตในการเข้าถึงหน่วยความจำที่นอกเหนือจากเครื่องหมาย 4GiB โดยใช้วิธีการที่คล้ายกัน


2

คุณจะถูกต้อง คุณสามารถระบุ RAM ได้มากถึง 16 Exabytes ตอนนี้ .. ไม่ว่าระบบปฏิบัติการจะสามารถจัดการได้หรือไม่จะเป็นอีกคำถามหนึ่ง ...


2

จะเป็นการดีที่จะทราบว่าระบบปฏิบัติการมีข้อ จำกัด ของตัวเองเกี่ยวกับหน่วยความจำในสถาปัตยกรรม 64 บิต

ตัวอย่างเช่นวิกิพีเดียมีอะไรเกี่ยวกับ Windows Vista 64:

ขณะนี้ระบบปฏิบัติการ Microsoft รุ่น 64 บิตทั้งหมดกำหนดขีด จำกัด 16 TB สำหรับพื้นที่ที่อยู่ กระบวนการที่สร้างขึ้นใน Windows Vista รุ่น 64 บิตสามารถมี 8 TB ในหน่วยความจำเสมือนสำหรับกระบวนการผู้ใช้และ 8 TB สำหรับกระบวนการเคอร์เนลเพื่อสร้างหน่วยความจำเสมือนที่ 16 TB [29] ในแง่ของหน่วยความจำกายภาพ Windows Vista 64-Bit Basic รองรับ RAM สูงสุด 8 GB, Windows Vista 64-Bit Home Premium รองรับ RAM สูงสุด 16 GB, และ Windows Vista 64-Bit Business / Enterprise / Ultimate / รองรับสูงสุด 128 GB ของ RAM [8]


รายละเอียดล่าสุดสำหรับ Windows: msdn.microsoft.com/en-us/library/windows/desktop/aa366778.aspx
Arjan

1

ข้อได้เปรียบที่ใหญ่ที่สุดถึง 64 บิตไม่ใช่ RAM ที่สามารถจัดการได้ แต่เป็นอย่างอื่น คุณสามารถกำหนดที่อยู่สำหรับทุกไบต์บนดิสก์ตัวอย่างเช่นและการเพิ่มความจุของดิสก์จะไม่ทำให้สิ่งนี้ใช้ไม่ได้มานานหลายทศวรรษ


แน่นอนว่าเนื่องจากซีพียูปัจจุบันมีพื้นที่ที่อยู่นี้ จำกัด อย่างแน่นอนมันอาจจะเป็นเพียงทศวรรษก่อนที่จะมีบิตไม่เพียงพอที่จะจัดการกับทุกไบต์บนดิสก์ได้อีกต่อไป หวังว่าในขั้นตอนนั้นจะมีการเพิ่มขีด จำกัด เช่นเดียวกับที่ SSD กำลังดำเนินไปทำให้ดิสก์ทั้งหมดปรากฏเป็นส่วนหนึ่งของหน่วยความจำที่สามารถปรับปรุงประสิทธิภาพได้อย่างมาก ฉันไม่รังเกียจที่จะเสียบ SSD เข้ากับสล็อต RAM แทนที่จะเป็นสายเคเบิล SATA!
Malvineous

@Malvineous ฉันกำลังพูดถึงสิ่งที่พื้นฐานกว่าแม้ว่าคุณจะ จำกัด ตัวเองไว้ที่ 63 บิตคุณสามารถระบุที่อยู่ 9223372 TB ได้โดยตรง และ SSDs ในช่องเสียบแรมที่มีอยู่แล้วให้ดูSandisk
Mark Ransom

ฉันไม่เห็นด้วยกับคุณฉันแค่ชี้ให้เห็นว่าด้วยเทคโนโลยีในปัจจุบันมีข้อ จำกัด ในสิ่งที่คุณแนะนำ (เช่นที่อยู่ 48 หรือ 51 บิตเท่านั้นที่นำออกสู่บัสจริง) หาก DIMM-SSDs เหล่านั้นสะดุดเราอาจใช้ที่อยู่หน่วยความจำหมดเร็วกว่าที่คุณแนะนำเว้นแต่ว่าข้อ จำกัด เหล่านี้จะสามารถเพิ่มหรือลบได้ ฉันยอมรับว่า 64 บิตเต็มมีให้ใช้งานแล้วมันจะเป็นทศวรรษก่อนที่จะกลายเป็นปัญหา
Malvineous

สำหรับบันทึกฉันดูที่ลิงก์ SanDisk UlltraDIMM แต่น่าเสียดายที่นี่ไม่ใช่เทคนิค SSD-as-RAM มันเป็น SSD ขนาด 6Gbps ที่มาพร้อมกับอะแดปเตอร์ DDR3-to-SATA ทำให้สามารถเข้าถึงได้ราวกับว่าเป็นหน่วยความจำ การแปลงคำขอหน่วยความจำเพิ่มเติมลงในโปรโตคอล SATA จะทำให้เกิดความหน่วงแฝงและดูยุ่งเหยิงไปหน่อย หวังว่าใครบางคนจะเห็นประโยชน์ของสิ่งนี้และปล่อยอินเทอร์เฟซหน่วยความจำที่แท้จริงให้แฟลชโดยไม่ต้องใช้อะแดปเตอร์ที่ไม่จำเป็นระหว่างนี้!
Malvineous

0

ตัวประมวลผลปัจจุบันส่วนใหญ่ในปัจจุบันมีขีด จำกัด เทียมบางอย่างตามขนาดที่อยู่ ตัวอย่างเช่นสถาปัตยกรรม AMD64 มีขีด จำกัด 52 บิตบนหน่วยความจำกายภาพและปัจจุบันรองรับพื้นที่ที่อยู่เสมือน 48 บิตเท่านั้น (ผ่านทาง Wikipedia) อย่างไรก็ตามสามารถทำได้ ~ 16.4 ล้านเทราไบต์


-1

สำหรับคำตอบทางกายภาพที่สมจริง 1536 กิกะไบต์พร้อมการ์ดหน่วยความจำ 48 การ์ดกำลังทำงานแท่งเดี่ยว 32 กิกะไบต์และ 4x lga2011 xeons

นี้สำหรับพีซี esayist ใครบางคนสามารถซื้อโดยไม่ต้องเจาะไม่ยอมใครง่ายๆ severs ที่ซ่อนอยู่คิดว่ามี stics 64gb เดียวนำมา .... 3072gb 128gb เป็น 6144gb 256gb เป็น 12288gb

เพียงแค่โยนออกมีที่มีวิธีที่จะได้รับรอบข้อ จำกัด ของระบบปฏิบัติการด้วย ram ถ้า ur OS สามารถเห็น RAM 4GB เปลี่ยนที่เหลือเป็นไดรฟ์แรมและใช้ไดรฟ์แรมเป็นไฟล์หน้า XD XD XD XD เพียงเรื่องของการสร้าง preboot os ระบบบางสิ่งที่คล้ายคลึงกันถูกทำขึ้นในช่วงต้นของ dos / windows 3.11 เป็นต้น

และอาจมีแฮ็กน้อยอื่น ๆ สำหรับการ จำกัด ซีพียู

เกียร์เราสามารถเห็นว่าวัดเบญจมบพิตรออกมีวิธีสิ่งที่มีประสิทธิภาพมากขึ้นฉันมีเครื่องคอมพิวเตอร์จาก 98 runing 8 proccessors และ somethink เช่น 32gb ram แต่นี่แพงเซิร์ฟเวอร์ hi end

ฉันกำลังมองหาเซิร์ฟเวอร์เป็นเดสก์ท็อปเพราะฉันเบื่อคอมพิวเตอร์สำหรับ XD สาธารณะ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.