เหตุใด Ubuntu จึงแสดง RAM เพียง 3GB เท่านั้น


27

ฉันมีแล็ปท็อป Asus G50vt-x5 พร้อม RAM 4GB ติดตั้งอยู่ แต่ Ubuntu 10.10 แสดง RAM เพียง 3GB ทำไมมันแสดงเฉพาะ RAM ขนาด 3GB แทนที่จะเป็น 4GB เต็ม ผลลัพธ์ของfreeคำสั่งคือ:

neal@ubuntu:~$ free
             total       used       free     shared    buffers     cached
Mem:       3095668    2972784     122884          0     747996    1590044
-/+ buffers/cache:     634744    2460924
Swap:            0          0          0

เพียงแค่อยากรู้อยากเห็นในหมู่พวกเราคุณสามารถโพสต์เอาท์พุทของfreeคำสั่งได้หรือไม่?
จัด

คำตอบ:


30

หากคุณติดตั้ง Ubuntu รุ่น 32 บิตมันจะไม่รู้จักหน่วยความจำ 4GB คุณจะต้องติดตั้ง Ubuntu รุ่น 64 บิตเพื่อให้ระบบรับรู้หน่วยความจำมากกว่า 4GB

ดูสิ่งนี้ด้วย:


โปรดทราบว่าขณะนี้มาตรฐานสำหรับภาพ Ubuntu เพื่อสร้างและจัดส่งพร้อมเคอร์เนลที่เปิดใช้งาน PAE ซึ่งอนุญาตให้ใช้ RAM 4GB มากกว่าบนระบบ 32 บิต อย่างไรก็ตามสิ่งนี้ต้องการการใช้โพรเซสเซอร์ที่มีคุณสมบัติ PAE ในระบบของคุณ หากระบบของคุณเก่าเพียงพอเมล็ด PAE จะไม่ทำงานและข้อ จำกัด ด้านบนของขีด จำกัด หน่วยความจำ 4GB จะยังคงอยู่


30
หรือเคอร์เนลรุ่น PAE รุ่น 32 บิต
จัด

2
@aneal: ในสถานการณ์นี้ Ubuntu จะไม่ใช้หน่วยความจำเกิน 3GB ฉันเพิ่มเหตุผลในคำตอบของฉันดังนั้นคุณต้องติดตั้งรุ่น 64 บิตหรือ PAE
Pedram

2
@EvilPhoenix: นั่นไม่เป็นความจริงอย่างเคร่งครัดหากพวกเขาบูต 64bit LiveCD และติดตั้งอูบุนตูด้วยมือ (aka debootstrap/cdebootstrap) การตั้งค่าของพวกเขา / /etcไฟล์จะเป็นเหมือนเดิมยกเว้นของหลักสูตร
OneOfOne

2
ขีด จำกัด ของเคอร์เนลที่ไม่ใช่ pae 32 บิตคือ 4gb ไม่ใช่ 3
psusi

2
@psusi สูงสุดคือหน่วยความจำ 3.6 GB ของเมล็ดที่ไม่ใช่ PAE รวมทั้ง Thomas โดยคำนึงถึงว่าตอนนี้อูบุนตูได้สร้างเมล็ดเพสำหรับทุกสิ่งไม่มีเคอร์เนลที่ไม่ใช่เพในรุ่นล่าสุด
Braiam

40

คุณสามารถติดตั้งรุ่น 64 บิตได้ แต่หากคุณไม่ต้องการทำเช่นนี้คุณสามารถติดตั้งเคอร์เนลที่เปิดใช้งาน PAE (ส่วนขยายที่อยู่ทางกายภาพ) ในรุ่น 32 บิต

หลัง 10.04, Ubuntu จะติดตั้งเคอร์เนลที่เปิดใช้งาน PAE โดยอัตโนมัติหากตรวจพบหน่วยความจำมากกว่า 3 Gb แต่อูบุนตู wikiพูดว่า:

ในกรณีของ liveCD จำเป็นต้องมีการเชื่อมต่อเครือข่ายที่ใช้งานได้เนื่องจากแพ็คเกจเคอร์เนล PAE ที่เปิดใช้งานจะไม่ปรากฏในซีดี

ดังนั้นฉันเดาว่าคุณติดตั้ง Ubuntu โดยใช้ CD โดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต

ลองสิ่งนี้:

sudo apt-get install linux-generic-pae linux-headers-generic-pae


PAE คืออะไร

Physical Address Extension เป็นเทคโนโลยีที่ช่วยให้ระบบปฏิบัติการ 32 บิตสามารถใช้หน่วยความจำ (RAM) สูงสุด 64 Gb ซึ่งเป็นสิ่งที่ทำได้ตามปกติโดยเปลี่ยนเป็นระบบ 64 บิต รองรับเครื่องคอมพิวเตอร์ส่วนใหญ่ในปัจจุบันและเป็นขั้นตอนง่าย ๆ ในการเปิดใช้งานใน Ubuntu หากยังไม่ได้เปิดใช้งาน ในการตรวจสอบว่าโปรเซสเซอร์ของคุณรองรับ PAE หรือไม่ลอง

grep --color=always -i PAE /proc/cpuinfo

โดยทั่วไปแนะนำให้ใช้ระบบ 64 บิตที่เหมาะสมหากคุณมีหน่วยความจำ 4 Gb ขึ้นไปและ / หรือต้องการได้รับประโยชน์เต็มที่จากสถาปัตยกรรม 64 บิต (ดู 32 บิต _ และ _ 64 บิต) แต่ในบางกรณีการเปลี่ยนเป็น 64 บิตอย่างสมบูรณ์นั้นไม่ใช่ เป็นที่ต้องการและการใช้ PAE อาจเป็นการประนีประนอม

ควรสังเกตว่าไม่มีส่วนขยายที่อยู่เสมือน เช่นแอปพลิเคชันยังคงได้รับหน่วยความจำเสมือนจำนวนเดียวกันเนื่องจากที่อยู่เสมือนยังคงเป็น 32 บิตในขณะที่ที่อยู่ทางกายภาพของ 36 บิต ดังนั้น PAE จึงไม่เทียบเท่ากับระบบ 64 บิต


มีค่าโสหุ้ยการทำงานใดบ้าง
Ashfame

แต่ไม่ใช่ระบบ 64 บิตสำหรับโปรเซสเซอร์ AMD เท่านั้น?
Starx

1
@Pedram ขอบคุณมาก! นี่ควรเป็นคำตอบที่ถูกต้องเพราะมันเป็นไปได้ที่จะหลีกเลี่ยงข้อ จำกัด โดยไม่ต้องติดตั้งระบบอีกครั้ง ฉันติดตั้งแพ็กเกจเคอร์เนล linux และหลังจากรีบูตฉันมี RAM 4GB พร้อมใช้งาน ขอบคุณมาก.
Alejandro García Iglesias

โปรดทราบว่าทุกวันนี้ Ubuntu ทำสิ่งที่ไม่ใช่เคอร์เนล PAE 32 บิต
psusi

2

เปิด / var / log / dmesg / dmesg และค้นหาส่วนที่อยู่ใกล้กับจุดเริ่มต้นที่มีลักษณะดังนี้:

[    0.000000] BIOS-provided physical RAM map:
[    0.000000]  BIOS-e820: 0000000000000000 - 000000000009d800 (usable)
[    0.000000]  BIOS-e820: 000000000009d800 - 00000000000a0000 (reserved)
[    0.000000]  BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)

โพสต์ส่วนนั้นสำหรับการวิเคราะห์อย่างละเอียด มองหาอีกบรรทัดหนึ่งลงไปอีกเล็กน้อยเช่นนี้:

[    0.000000] Memory: 4019820k/4972544k available (5694k kernel code, 798616k absent, 154108k reserved, 2514k data, 944k init)

บ่อยครั้งมีสิ่งต่าง ๆ เช่นหน่วยความจำวิดีโอใช้พื้นที่ในพื้นที่ 3-4 gb ในบางระบบที่หน่วยความจำหายไป สำหรับคนอื่น ๆ สามารถแมปใหม่ได้เหนือเครื่องหมาย 4gb ซึ่งคุณต้องการเคอร์เนล pae หรือ 64 บิตเพื่อเข้าถึง


2
แค่อยากจะแสดงความคิดเห็นว่าฉันมีบอร์ด Asus ที่สูญเสียหน่วยความจำ 1GB แม้หลังจากติดตั้ง 64 บิต ฉันต้องเปิดใช้งานการแมปใหม่ในไบออสตามที่กล่าวถึงในคำตอบนี้
user1974

1

คุณมีวิธีแก้ไขสามข้อซึ่งสองข้อเสนอแนะแล้ว:

  • ติดตั้งเคอร์เนล 64 บิตในการติดตั้ง i386 ของคุณ บน Debian เป็นเพียงเรื่องของการติดตั้งkernel-image-2.6-amd64-k8และamd64-libs
  • ติดตั้งเคอร์เนล 32- บิตด้วยการเปิดใช้งาน PAE
  • ติดตั้งระบบ 64- บิตที่สมบูรณ์

แต่ไม่ใช่ระบบ 64 บิตสำหรับโปรเซสเซอร์ AMD เท่านั้น?
Starx

ไม่ Intel ใช้ชุดคำสั่ง amd64 เมื่อซีรีย์ Itanium ของมันล้มเหลวและมันกลายเป็นมาตรฐานตามความเป็นจริง
sam hocevar

ฉันได้รับ Intel core ฉัน 7 720 qm มันจะวิ่งไปที่นั่นไหม?
Starx

ใช่. ดูรายการซีพียู Intel ที่ใช้งานร่วมกันได้ที่นี่: en.wikipedia.org/wiki/X86-64#Intel_64_implementations
sam hocevar sam

0

Rum memtest ("ทดสอบหน่วยความจำ") จากเมนูบู๊ต (หรือสื่อการติดตั้ง) หากหน้าจอแรกรายงานน้อยกว่า 4Gb ของคุณอัปเกรด (Flash * ROM) BIOS ของคุณ

เรียกใช้ sudo lshw เพื่อตรวจสอบรุ่นของเมนบอร์ดของคุณจากนั้นมุ่งหน้าไปยังเว็บไซต์ของผู้ขายและ BIOS ล่าสุดของ DL


0

ฉันรู้ว่านี่เป็นภาษาท้องถิ่นเล็กน้อย แต่คำถามเฉพาะถูกทำเครื่องหมายว่าซ้ำและตอนนี้เปลี่ยนเส้นทางไปยังคำถามนี้

สำหรับผู้ใช้ Dell XPS 13 L321X จะมีการอัพเดต BIOS ที่แนะนำปัญหา / คุณสมบัตินี้ ดังนั้นหากคุณต้องการที่จะดึง 4G ของคุณแรมคุณจะต้องปรับลดA04 BIOS มีสองหัวข้อที่กล่าวถึงปัญหานี้ในชุมชน Dell:

  1. หน่วยความจำ Dell XPS 13 ขนาด 3.3GB จาก 4GB
  2. XPS 13 Ultrabook - RAM ฮาร์ดแวร์สำรอง 690 MB
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.