ฉันเพิ่งอัพเกรด RAM คอมพิวเตอร์ของฉันเป็น 4 GB การติดตั้ง Windows แบบ 32 บิตของฉันแสดงหน่วยความจำเพียง 3574 MB ฉันจะทำให้ Windows ใช้ RAM เต็มจำนวนได้อย่างไร
ฉันเพิ่งอัพเกรด RAM คอมพิวเตอร์ของฉันเป็น 4 GB การติดตั้ง Windows แบบ 32 บิตของฉันแสดงหน่วยความจำเพียง 3574 MB ฉันจะทำให้ Windows ใช้ RAM เต็มจำนวนได้อย่างไร
คำตอบ:
คุณไม่สามารถ:
ดูDude, RAM 4 กิกะไบต์ของฉันอยู่ที่ไหน
หากคุณต้องการปรับหน่วยความจำและอุปกรณ์ให้อยู่ในช่วงที่อยู่แบบ 32 บิต: พื้นที่ที่อยู่ 4GB ที่มีอยู่ทั้งหมดไม่สามารถให้กับหน่วยความจำได้
จะเกิดอะไรขึ้นถ้าคุณออกไปซื้อหน่วยความจำ 4GB สำหรับพีซีของคุณ
มีรูในแผนที่หน่วยความจำของคุณสำหรับ IO (ตอนนี้เหลือเพียง 25% ของพื้นที่ที่อยู่ทั้งหมด แต่ก็ยังเป็นช่องใหญ่) ดังนั้นหน่วยความจำ 3GB ด้านล่างของคุณจะพร้อมใช้งาน แต่มีปัญหา 1GB ล่าสุด
ทางออกที่เป็นไปได้เพียงทางเดียวคือการติดตั้งระบบปฏิบัติการ 64 บิต ใน Windows Vista และใหม่กว่านั้นคีย์ใบอนุญาต 32- บิตและ 64- บิตนั้นสามารถใช้แทนกันได้ หากคุณสามารถรับสื่อการติดตั้ง Windows สำหรับระบบปฏิบัติการรุ่น 64 บิตคุณสามารถติดตั้งใหม่โดยใช้รหัสลิขสิทธิ์ดั้งเดิมของคุณ
ก่อนอื่น Windows XP (32 บิต) รองรับ 4 GB เท่านั้น ไม่เพียงแค่ใช้กับ Windows XP แต่จะใช้กับเดสก์ท็อป Windows แบบ 32 บิต - ระบบ Linux 32 บิตที่มี PAE และ Windows Server 32 บิตหลายรุ่นรองรับมากกว่า 4GB ต่อบทความที่เชื่อมโยง คุณจะไม่เห็นมากกว่า 4 GB หากคุณใช้ Windows XP แบบ 32 บิต อย่างไรก็ตามฉันพบเหตุผลรายละเอียดเพิ่มเติมว่าทำไมระบบของคุณจึงแสดง RAM น้อยกว่าที่ติดตั้งจริง
จากปัญหา RAM 3GB-not-4GB (บล็อก Microsoft MSDN):
เนื่องจากการตัดสินใจทางสถาปัตยกรรมเมื่อนานมาแล้วหากคุณมี RAM จริง 4GB ติดตั้ง Windows จะสามารถรายงาน RAM 4GB ได้เพียงบางส่วนเท่านั้น (ช่วงจาก 2.75GB ถึง 3.5GB ขึ้นอยู่กับอุปกรณ์ที่ติดตั้งชิปเซ็ตเมนบอร์ด & BIOS)
ลักษณะการทำงานนี้เกิดจาก "การจองหน่วยความจำที่แมป IO" การจองเหล่านั้นซ้อนทับพื้นที่ที่อยู่จริงและปกปิดที่อยู่ทางกายภาพเหล่านั้นเพื่อไม่ให้สามารถใช้สำหรับหน่วยความจำที่ใช้งานได้ สิ่งนี้ไม่ขึ้นอยู่กับระบบปฏิบัติการที่ทำงานบนเครื่อง
พื้นที่ว่างที่อยู่ต่ำกว่า 4GB (ที่อยู่สูงสุดสามารถเข้าถึงได้ผ่าน 32 บิต) ได้รับการสงวนไว้สำหรับการใช้งานโดยฮาร์ดแวร์ของระบบ:
- BIOS - รวมถึง ACPI และการรองรับวิดีโอแบบเดิม
- PCI บัสรวมถึงบริดจ์ ฯลฯ
- การสนับสนุน PCI Express จะสำรองอย่างน้อย 256MB สูงสุด 768MB ขึ้นอยู่กับหน่วยความจำที่ติดตั้งกราฟิกการ์ด
สิ่งนี้หมายความว่าเป็นระบบทั่วไปอาจเห็นระหว่าง ~ 256MB และ 1GB ของพื้นที่ที่อยู่ด้านล่าง 4GB สงวนไว้สำหรับการใช้งานฮาร์ดแวร์ที่ระบบปฏิบัติการไม่สามารถเข้าถึงได้ รายละเอียดชิปเซ็ต Intel นั้นค่อนข้างดีในการอธิบายช่วงที่อยู่ที่ได้รับการจองเป็นค่าเริ่มต้นและในบางกรณีเรียกได้ว่ามีการจอง 1.5GB เสมอและทำให้ Windows ไม่สามารถเข้าถึงได้
มีข้อมูลเพิ่มเติมถ้าคุณตรวจสอบแหล่งที่มา แต่คุณอาจจะสามารถใช้ประโยชน์จากเต็ม 8 GBs ติดตั้งถ้าคุณทำตามเหล่านี้คำแนะนำ
เมื่อพูดถึงประสบการณ์ส่วนตัวนี่ไม่ใช่ปัญหาใหม่ ฉันพบปัญหาเดียวกันนี้เมื่อไม่กี่ปีที่ผ่านมาเมื่อฉันสร้างระบบ Windows Vista 4 GB แบบ 32 บิตเมื่อเปิดตัวครั้งแรก มีกระทู้ในฟอรัมนับไม่ถ้วนออนไลน์ที่เกี่ยวข้องกับหัวข้อเดียวกันนี้
อ่านยัง Microsoft KB 929605 - หน่วยความจำระบบที่มีการรายงานในกล่องโต้ตอบข้อมูลระบบของ Windows Vista จะน้อยกว่าที่คุณคาดหวังว่าหาก RAM 4 GB มีการติดตั้ง
หากคุณใช้ 32Bit Windows XP แสดงว่าเป็นไปไม่ได้ เนื่องจากมีที่อยู่ไม่เพียงพอสำหรับการใช้แรมเสริม
ทางออกที่ดีที่สุดคือการอัพเกรดเป็น Windows รุ่น 64 บิตเนื่องจากรองรับ RAM 4+ GB
2^32
"พื้นที่ที่อยู่" เพียงพอสำหรับ 4 GiB คุณผิดที่อยู่ในพื้นที่และหน่วยความจำกายภาพ ทุกกระบวนการใน Windows รุ่นที่ทันสมัยจะเห็นพื้นที่ที่อยู่ 4 GiB เต็มแม้ว่าปกติเพียง 2 GiB จะสามารถใช้งานได้เนื่องจากการแบ่งพาร์ติชัน UM / KM ของพื้นที่ที่อยู่เสมือน
อย่างที่คนอื่นพูดมันเป็นไปไม่ได้
คำอธิบาย:
หน่วยความจำแต่ละชิ้นมีที่อยู่ ระบบปฏิบัติการจะระบุความยาวของที่อยู่ สำหรับระบบปฏิบัติการรุ่นเก่าความยาวของที่อยู่คือ 32 บิตซึ่งอนุญาตให้ใช้ที่อยู่ 2 ^ 32 (4 294 967 296) เท่านั้น ตอนนี้เมื่อดูจากหมายเลขนั้นดูเหมือนว่าระบบปฏิบัติการของคุณควรรองรับ 4 GB แต่ฮาร์ดแวร์อื่น ๆ ทั้งหมด (ที่สำคัญที่สุดคือหน่วยความจำวิดีโอในการ์ดวิดีโอของคุณ) ที่มีหน่วยความจำภายในจะถูกแมปลงในพื้นที่ที่อยู่นั้น
มันเหมือนกับว่าคุณกำลังพยายามแจกจ่ายหมายเลขโทรศัพท์หกหลัก 1,200,000
มาเธอร์บอร์ดรุ่นเก่ารองรับ RAM ที่มีอยู่จริง 4Gb เท่านั้นเมนบอร์ดที่ทันสมัยรองรับได้มากขึ้น Intel P4 CPU สามารถระบุตำแหน่งได้มากกว่า 4Gb (โดยใช้สิ่งที่เรียกว่า Physical Address Extension หรือ PAE)
Microstoft ทำการตัดสินใจทางการตลาดโดยไม่สนับสนุนพื้นที่ที่อยู่ทางกายภาพ 4Gb มากขึ้นในระบบปฏิบัติการเวอร์ชัน 32 บิตของไคลเอนต์ซึ่งรวมถึงทั้งหมดตั้งแต่ w2k ถึง 32 บิต Windows 8 (ถ้าคุณเยี่ยมชม MS KB หน้าคุณจะทราบว่ารุ่นของเซิร์ฟเวอร์ 32 บิตสามารถรองรับได้มากขึ้น - มากถึง 128Gb ฉันเชื่อกับ 32 บิต 'Enterprise Edition') - ซึ่งเป็นเหตุผลที่ '32 บิตระบบปฏิบัติการ (Linux ฯลฯ ) ที่ถูกต้องบนฮาร์ดแวร์เดียวกันสามารถเข้าถึงทั้งหมดได้เสมอ แรมทางกายภาพ
(หมายเหตุด้านข้าง - ผู้ใช้ Win7 32 บิตได้เบื่อหน่ายกับข้อ จำกัด 'โง่' ที่พวกเขา 'แฮ็ค' Kernal เพื่อให้ ascces กับ RAM แบบเต็มทางกายภาพ .. ไม่จำเป็นต้องพูดนี่เป็นการทำลายใบอนุญาตของคุณและผิดกฎหมายในสหรัฐอเมริกา (DCMA) )
ส่วน 'สำรอง' Windows XP รุ่น 32 บิตของพื้นที่แอดเดรส 4Gb แท้จริงสำหรับการใช้งานไดรเวอร์ ไม่มีเหตุผลใดที่คุณไม่สามารถ 'ที่อยู่' RAM จริงเกิน 4Gb (โดยใช้ PAE) ได้ แต่ OLDER DRIVERS หลาย ๆ ตัวในช่วงเวลาที่ Windows XP Pro ไม่สามารถทำได้และคุณจะได้รับข้อผิดพลาด 'BSOD' (ไดรเวอร์สมัยใหม่ใช้ PAE อย่างถูกต้องและในทฤษฎีมีเหตุผลว่าทำไมพวกเขาต้องการมากกว่า 32Mb ของพื้นที่หน้า 'lo' (เป็น 'หน้าต่าง') โดยรวมแม้เพื่อรองรับการ์ดกราฟิก 2Gb (2gb จะอยู่ในพื้นที่ 'hi' เช่น 4Gb ข้างต้น เครื่องหมาย)
ใน XP SP2, MS เกือบสามเท่าของจำนวนพื้นที่ที่อยู่ 'สงวน' สำหรับไดรเวอร์ในความพยายามที่จะกำจัด BSOD และมันเป็นเช่นนั้นมาตั้งแต่ (MS ไม่ต้องการไดรเวอร์ 'debug' == พวกเขาต้องการขาย 64 บิตให้คุณ ระบบปฏิบัติการแทน) ฮาร์ดแวร์จริงมีผลเกือบเป็นศูนย์ต่อพื้นที่ 'สงวน' นี้
ดังนั้นถ้าคุณมี RAM จริงหรือ 4Gb RAM XP Pro sp2 + ส่วนใหญ่จะเห็นประมาณ 3.25Gb .. ส่วนที่เหลือสามารถเข้าถึงได้โดยใช้ไดรเวอร์ดิสก์ RAM ที่แตกต่างกัน (ไม่ใช่ MS แน่นอน) = ไปหาสิ่งที่ ใช้ 'Invisible Address space' หรือ 'high 4gb space' บน XP Pro) .. ใช้ '.75Gb' ที่หายไป 'ซึ่งเป็นส่วนหนึ่งของ' หน่วยความจำเสมือน 'ของคุณสามารถเพิ่มความเร็วของระบบ ...
โปรดทราบว่าสวิตช์ / 3G สามารถอนุญาตให้แอปพลิเคชัน 32 บิตเข้าถึง 3Gb ได้สูงสุดบนระบบปฏิบัติการ 32 บิต (หากมีการตั้งค่าสถานะ LargeAddressAware ในส่วนหัวของ. exe - ซึ่งในกรณีนี้พวกเขาสามารถเข้าถึง 4Gb บนระบบปฏิบัติการ 64 บิต) ได้ บน XP คุณต้องระบุ / USERVA เช่นกันเพื่อหยุดระบบปฏิบัติการที่ 'บีบออก' ของ RAM :-)
หากคุณต้องการใช้ประโยชน์จาก 4GB ทั้งหมดตัวเลือกเดียวคือการอัพเกรดเป็นระบบปฏิบัติการ 64 บิต:
Windows XP ปกติเป็น 32 บิตเท่านั้นและนี่เป็นการ จำกัด หน่วยความจำให้สูงสุด 3.5GB ตรวจสอบลิงค์ VonC ที่โพสต์เพื่อดูรายละเอียดเกี่ยวกับหัวข้อนี้
หากคุณใช้กราฟิกรวมคุณสามารถปิดใช้งานและนั่นหมายความว่าระบบจะสามารถระบุ RAM ระบบของคุณได้มากขึ้น
แต่ทางออกที่ดีที่สุดคือการได้ x64 OS แน่นอน
ไม่มีเหตุผลใดที่จะไม่ยุ่งเกินไป โปรแกรมส่วนใหญ่ทำงานใน x64 ด้วย XP / Vista / 7 ที่มีเลเยอร์จำลอง x86 มันเป็นเพียงไดรเวอร์ที่อาจเป็นปัญหา
มันเป็นคำถามที่ค่อนข้างซับซ้อนเนื่องจากต้องใช้องค์ประกอบหลายอย่างในการทำงาน ส่วนประกอบเหล่านั้นคือ:
รายการสุดท้ายไม่เกี่ยวข้องกับปัญหาโดยตรง แต่ฉันได้เพิ่มเพื่อความสมบูรณ์
โดยสรุปส่วนประกอบทั้งหมดข้างต้นต้องรองรับหน่วยความจำมากกว่า 4 GB เพื่อให้สำเร็จ
เริ่มต้นด้วย CPU แต่ก่อนอื่นสิ่งสำคัญคือต้องทราบว่า CPU ไม่มีความสามารถใด ๆ ในการใช้หน่วยความจำใด ๆเลย แต่มันสามารถเข้าถึงที่อยู่ใดก็ได้ภายในพื้นที่ที่สามารถกำหนดแอดเดรสได้ ตอนนี้มาถึงสิ่งที่เป็นพยาน CPU แบบ 32 บิตสามารถเข้าถึง ที่อยู่ในช่วงตั้งแต่ 0 ถึง 4 GiB ช่วงนี้จะต้องรองรับไม่เพียง แต่ RAM, ROM, SMRAM , ตาราง Remapping ที่อยู่กราฟิกที่มีอยู่แต่ยังรวมถึงI / O หน่วยความจำที่แมปและอื่น ๆ อีกมากมายซึ่งอาจต้องการส่วนสำคัญของช่วงที่อยู่นี้ ดังนั้นจึงอาจเป็นไปได้อย่างสมบูรณ์ว่าที่อยู่หน่วยความจำบางส่วนถูกแชโดว์ด้วยการใช้งานเหล่านั้นและดังนั้นจึงไม่พร้อมใช้งานสำหรับการดำเนินการบน RAM เพื่อที่จะฟื้นหน่วยความจำที่ซ่อนอยู่ก็เป็นสิ่งจำเป็นที่จะขยายซีพียูพื้นที่ที่อยู่ที่สามารถเข้าถึงได้ ในกรณีที่ส่วนขยายที่อยู่ทางกายภาพของ CPU 32 บิตสามารถช่วยได้ ซึ่งอนุญาตให้ระบุที่อยู่ได้สูงสุด 64 GiB ซีพียู 64 บิตทำงานในโหมดเนทิฟ 64 บิตโดยค่าเริ่มต้นสามารถเข้าถึงได้มากถึง 16 EiB ซึ่งค่อนข้างใหญ่และไม่ต้องการใช้เทคนิคดังกล่าว แต่ในทางกลับกันมันเป็นไปไม่ได้ที่ CPU 64 บิตจะใช้การกำหนดแอดเดรส 64- บิตดังนั้นในความเป็นจริงพวกเขายังคงถูก จำกัด โดยบัสแอดเดรสของพวกเขาจนถึงช่วงที่น้อยกว่า 16 EiB
เริ่มแรกนั้นตั้งอยู่ที่Northbridgeแต่ถูกย้ายไปยังตัวประมวลผลโดย AMD เริ่มต้นด้วยตัวประมวลผล AMD64 และโดย Intel ด้วยตัวประมวลผล Nehalem แม้ว่า CPU ที่มี PAE สามารถเข้าถึง 64 GiB ได้ด้วยตัวเอง แต่ก็ยังต้องการ MCU ในการเข้าถึง RAM กล่าวง่ายๆ: CPU ที่เข้าถึงที่อยู่เฉพาะจะได้รับการตอบกลับจากอุปกรณ์ PCI, แฟลช BIOS ROM หรือ MCU หากที่อยู่ที่ร้องขอนั้นอยู่ใน RAM และอื่น ๆ อย่างไรก็ตามไม่ใช่เรื่องแปลกสำหรับ MCU (ไม่ว่าจะเป็นใน Northbridge หรือใน CPU) เพื่อสนับสนุนพื้นที่ที่สามารถกำหนดแอดเดรสได้น้อยกว่า 64 GiB สำหรับเหตุผลทางการตลาดเช่น
BIOS / (U) EFI ก็มีความสำคัญเนื่องจากเป็นหน้าที่ในการกำหนดค่าฮาร์ดแวร์ก่อนที่จะสามารถใช้งานได้จริง เหนือสิ่งอื่นใดพวกเขามีหน้าที่รับผิดชอบในการทำแผนที่พื้นที่ที่อยู่หน่วยประมวลผลทั้งหมดที่มีช่วงหน่วยความจำของอุปกรณ์ฮาร์ดแวร์, รถโดยสาร, RAM และอื่น ๆ เป็นที่น่าสนใจว่า RAM ทั้งหมดแยกเป็นชิ้น ๆ และจับคู่กับจุดที่ไม่ต่อเนื่องกันหลายจุด ปัญหาเกี่ยวกับ BIOS คือว่านักพัฒนาอาจไม่คาดหวังการใช้ RAM มากกว่า 3 GiB ภายในระบบของพวกเขาและ BIOS ดังกล่าวจะแมปหน่วยความจำทั้งหมดที่จะใช้ไม่ถูกต้อง เป็นไปได้ว่าจะไม่เกิดขึ้นกับ (U) EFI
ระบบปฏิบัติการควรสนับสนุนการระบุแอดเดรสหน่วยความจำมากกว่า 4 GiB หากต้องการเจาะจงมากขึ้นควรกำหนดค่า CPU เพื่อใช้ PAE OS 32 บิตบางตัวสามารถใช้ PAE ได้อย่างสมบูรณ์และเข้าถึงมากกว่า 4 GiB ส่วนอื่น ๆ นั้นมีขีด จำกัด ซอฟต์แวร์ในหน่วยความจำสูงสุดถึงแม้ว่าจะเปิดใช้ PAE เพื่อเพิ่มความปลอดภัย (Windows XP เป็นตัวอย่าง) อีกครั้งที่ระบบปฏิบัติการ 64 บิตโดยธรรมชาติไม่มีปัญหาดังกล่าวและโดยปกติจะรองรับหน่วยความจำมากกว่า 4GB
จุดสุดท้ายมาจากโลกที่แตกต่างกันเนื่องจากแอปพลิเคชันมักใช้งานในพื้นที่ที่อยู่เสมือนฉันได้เพิ่มมันเพื่อความสมบูรณ์ อย่างไรก็ตามจะมีขั้นตอนเพิ่มเติมในขณะที่รวบรวมแอปพลิเคชันเพื่อให้สามารถใช้หน่วยความจำได้มากขึ้น โดยค่าเริ่มต้นแอปพลิเคชัน 32 บิตสามารถใช้หน่วยความจำ 2 GiB เท่านั้น แอปพลิเคชัน 32 บิตเดียวกันสามารถจัดการหน่วยความจำได้สูงสุด 4 GiB โดยที่ระบบปฏิบัติการรองรับและเปิดใช้งาน CPU PAE โดยเฉพาะอย่างยิ่งมันสามารถใช้สูงสุด 3 GiB ของหน่วยความจำ 1 GiB อื่น ๆ สามารถกำหนดแอดเดรสได้เหมือนกับไลบรารีทั่วไปและเคอร์เนลระบบปฏิบัติการ แต่ไม่สามารถเขียนได้ (ท้ายที่สุดนี้ขึ้นอยู่กับสถาปัตยกรรมระบบปฏิบัติการมากกว่าแอปพลิเคชันเอง) อีกครั้งแอปพลิเคชัน 64 บิตสนับสนุนการระบุแอดเดรสหน่วยความจำมากกว่า 4 GiB และไม่มีปัญหาดังกล่าวตั้งแต่แรก
ในการทำให้ทั้งหมดนี้เป็นมุมมองลองพิจารณาตัวอย่างต่างๆ
พิจารณาIntel® 82945G ตัวควบคุมความจำ เว็บไซต์ของ Intel ระบุว่าไม่รองรับ PAE และ RAM ไม่เกิน 4 GB ให้ดูที่ย่อหน้า9 System Address Map
ของแผ่นข้อมูล มันมีข้อมูลมากมาย สิ่งที่น่าสนใจที่สุดคือFigure 9-3. Main Memory Address Range
:
และย่อหน้า9.2 Main Memory Address Range (1 MB to TOLUD)
ซึ่งอ่านได้ดังนี้:
ช่วงที่อยู่นี้ขยายจาก 1 MB ไปจนถึงด้านบนของหน่วยความจำกายภาพที่ได้รับอนุญาตให้เข้าถึงได้โดย (G) MCH (ตามที่โปรแกรมไว้ในการลงทะเบียน TOLUD) การเข้าถึงที่อยู่ทั้งหมดภายในช่วงนี้จะถูกส่งต่อโดย (G) MCH ไปยังหน่วยความจำหลักเว้นแต่ว่าจะอยู่ใน TSEG เสริม ISA Hole เสริมหรือหน่วยความจำ VGA ที่ถูกขโมย IGD เสริม MCH (G) ให้ที่อยู่หน่วยความจำหลักสูงสุดในการถอดรหัสพื้นที่ 4 GB (2 GB สำหรับ 82945GC / 82945GZ / 82945PL) MCH (G) ไม่ทำการแมปพื้นที่หน่วยความจำ APIC หรือ PCI Express อีกครั้ง ซึ่งหมายความว่าเมื่อปริมาณหน่วยความจำกายภาพที่บรรจุในระบบถึง 4 GB (2 GB สำหรับ 82945GC / 82945GZ / 82945PL) จะมีหน่วยความจำกายภาพที่มีอยู่ แต่ยังไม่สามารถกำหนดแอดเดรสได้ดังนั้นจึงไม่สามารถใช้ระบบได้
ตามที่ระบุไว้เนื่องจากไม่รองรับ PAE ในที่สุดจึงไม่สามารถทำการแมป PCI และ MMIO อื่น ๆ ที่อยู่เหนือ 4 GiB ในที่สุดดังนั้นหน่วยความจำบางส่วนจะมีเงาและไม่ได้ใช้งาน ซึ่งหมายความว่าแม้ว่าจะใช้กับ CPU ที่รองรับการกำหนดแอดเดรสแบบ 36 บิตหน่วยความจำที่สูงกว่า 4 GiB จะยังไม่สามารถใช้งานได้และหน่วยความจำบางส่วนที่อยู่ใกล้กับขีด จำกัด 4 GiB ก็จะไม่ถูกใช้เช่นกัน
ในทางกลับกันลองพิจารณาIntel® 82955X Memory Controllerซึ่งเกี่ยวข้องกับอันก่อนหน้านี้ แต่มีการระบุให้รองรับ 8 GB ตรงกันข้ามกับอันก่อน! ย่อหน้าแผ่นข้อมูล2.1 Host Interface Signals
แนะนำว่ามันใช้บัสแอดเดรส 36- บิตกับซีพียูซึ่งเป็นสัญญาณที่ดี ย่อหน้า 7 System Address Map
มีข้อมูลเชิงลึกเพิ่มเติม เปรียบเทียบFigure 7-1. System Address Ranges
กับที่เราเห็นก่อนหน้า
นี้:
นี่แสดงให้เห็นอย่างชัดเจนว่ามันสามารถใช้ RAM มากกว่า 4 GiB ได้หากว่าใช้กับซีพียูก็สามารถกำหนดแอดเดรส 36 บิตได้ นอกจากนี้ยังเป็นที่น่าสังเกตว่าวรรคระบุว่า7 System Address Map
MCH supports 64 GB of addressable memory space
อย่างไรก็ตามมีการชี้แจงเพิ่มเติมว่าRAM ที่ใช้งานได้สูงสุดจะถูก จำกัด ที่ 8 GB นี้อีกครั้งประกาศความแตกต่างระหว่างแอดเดรสและใช้งานได้ในขณะที่ฉันพยายามถ่ายทอดในส่วน CPU
เพื่อสรุปสิ่งนี้ฉันต้องการทราบว่าชิปเซ็ตที่เกี่ยวข้องสองอันนั้นมีความแตกต่างอย่างมากในการจัดการหน่วยความจำ
ให้ตรวจสอบIntel®Pentium® Processor Extreme Edition 840 รองรับชุดคำสั่ง 64 บิต แต่ไม่รองรับ PAE ซึ่งหมายความว่าหากทำงานในโหมด 32 บิตจะไม่สามารถใช้ RAM มากกว่า 4 GiB ได้ (โปรดแก้ไขให้ถูกต้องหากฉันผิดกับข้อสันนิษฐานนี้) Table 4-3. Signal Description
ให้ตรวจสอบแผ่นข้อมูลและตาราง แม้ว่า CPU นี้มีความสามารถ 64- บิต แต่ก็ยังถูก จำกัด โดยที่อยู่บัสที่มีความกว้าง 36- บิตดังนั้นจึง จำกัด ให้อยู่ในช่วงที่อยู่ที่เข้าถึงได้ตั้งแต่ 0 ถึง 64 GiB
ตอนนี้ให้ตรวจสอบ CPU ล่าสุด ยกตัวอย่างเช่นใช้โปรเซสเซอร์Intel® Core ™ i7-7700 โฆษณานี้สนับสนุน RAM สูงสุด 64 GB ตอนนี้ให้ตรวจสอบแผ่นข้อมูลของมัน ย่อหน้า2.3 System Address Map
ทำให้เรามั่นใจว่าช่วงที่แอดเดรสของ CPU นี้อยู่ระหว่าง 0 ถึง 512 GiB เนื่องจากบัสแอดเดรส 39 บิต โปรดทราบว่ามันยังห่างไกลจากช่วง EiB ตามทฤษฎี 16 สำหรับ CPU 64 บิต น่าแปลกที่ว่า CPU นี้รองรับRAM สูงสุดที่ใช้งานได้สูงสุด32 GiB (ตรงกันข้ามกับ 64 GB บนเว็บไซต์) นอกจากนี้ยังมีภาพที่น่าสนใจที่นี่Figure 2-2. System Address Range Example
:
มันใช้งานได้ดีในการอธิบายปัญหาเกี่ยวกับหน่วยความจำเงาโดยอุปกรณ์ PCI ฯลฯ นอกจากนี้ยังแนะนำวิธีการเอาชนะปัญหานี้โดยการจับคู่ช่วงจาก RAM ที่แท้จริงให้กับช่วงที่อยู่บนภายใน CPU- แอดเดรสช่วง ดังนั้นการเรียกคืนหน่วยความจำที่ซ่อนอยู่สำหรับการใช้งาน โปรดทราบว่าการแมปใหม่นี้ดำเนินการโดย BIOS / (U) EFI เมื่อทำการเริ่มต้นฮาร์ดแวร์และด้วยเหตุผลนี้ฉันจึงได้รวม BIOS / (U) EFI ไว้ในรายการย่อยด้านบน
ฉันได้นำผลิตภัณฑ์ Intel มาเป็นตัวอย่าง แต่สิ่งเดียวกันนั้นเป็นจริงสำหรับ AMD
ตอนนี้ให้อภิปรายว่าระบบปฏิบัติการเกี่ยวข้องกันอย่างไร เคอร์เนล Linux ประกอบด้วยการรองรับโหมด PAE เต็มรูปแบบเริ่มต้นด้วยรุ่น 2.3.23 และเป็นไปได้อย่างสมบูรณ์แบบที่จะมีหน่วยความจำมากกว่า 4GB ที่สามารถใช้งานได้กับ Linux kernel บนระบบ 32 บิต อย่างไรก็ตามควรตระหนักถึงปัญหาที่ไม่ได้ตั้งใจกับเคอร์เนล 32 บิตบนระบบที่มี RAM มากกว่า 4 GiB บนฮาร์ดแวร์บางตัว (จากประสบการณ์ของฉันมันมีบางอย่างเกี่ยวกับการถ่ายภาพ TLB) อย่างไรก็ตามวิกิพีเดียมีข้อมูลที่ดีในการสนับสนุน PAE สิ่งที่น่าสนใจคือวิธีที่ Windows XP ถูก จำกัด ไว้ที่ 4 GB ในขณะที่ Windows Server 2003 Enterprise / Datacenter SP2 นั้นมีความสามารถเต็ม 64 GB เหมือนกันสำหรับคู่ Windows Desktop Server อื่น ๆ
อย่างที่คุณเห็นมีส่วนประกอบหลายอย่างรวมอยู่ในรายการและในบางกรณีการเปลี่ยนซีพียูหรือระบบปฏิบัติการอาจช่วยได้ เป็นการยากที่จะจัดการกับ BIOS / (U) EFI หรือ MCU เนื่องจากเดิมมีกรรมสิทธิ์และมีอยู่แล้วในระบบและไม่สามารถแก้ไขได้อย่างง่ายดายส่วนหลังถูกสร้างขึ้นใน CPU หรือบัดกรีบนบอร์ด
มันแสดง RAM ขนาด 3574 เมกะไบต์เพราะนั่นคือจำนวน RAM ที่ว่างและพร้อมให้คอมพิวเตอร์ใช้งานได้ตลอดเวลา รูปนี้เป็น RAM ที่คอมพิวเตอร์ของคุณมีการเข้าถึงทั้งหมดเนื่องจากโปรแกรมและการตั้งค่าที่ติดตั้งไว้ล่วงหน้าบนพีซีใช้จำนวน RAM ที่กำหนดซึ่งในกรณีของคุณจะเป็น 426mb พีซี 6GB 64 บิตของฉันแสดงว่า RAM ที่มีอยู่ 5.8GB นั้นไม่ใช่ 6GB เต็มรูปแบบ ทางออกที่ดีที่สุดของคุณคือดูการอัพเกรดพีซีของคุณ