ก่อนอื่นฉันจะได้คำตอบที่ละเอียดกว่านี้ก่อน ในภาพหน้าจอแรกของคุณ Non-Paged Pool (การใช้งานหน่วยความจำเคอร์เนล) อยู่ที่ 1.3GB ดูเหมือนว่าจะสูงผิดปกติโดยเฉพาะอย่างยิ่งหลังจาก 30 นาทีหลังจากบู๊ต ฉันคิดว่าฉันเห็น NP Pool สูงขึ้นหลังจากใช้งานเป็นระยะเวลานานหรือด้วยโปรแกรมที่รั่วเหมือนตะแกรง ในทางตรงข้าม NP Pool ของฉันมักจะอยู่ระหว่าง 100 ถึง 200 เมกะไบต์และพูลเพจของฉันอาจสูงถึง 400 หรือ 500 (และหลังจากระบบของฉันทำงานโดยไม่ต้องรีบูตเป็นเวลาหลายสัปดาห์)
คุณสามารถเปิดใช้งานคอลัมน์เพิ่มเติมบางอย่างในตัวจัดการงานโดยคลิกขวาที่ส่วนหัวของคอลัมน์และเลือกคอลัมน์ที่เลือก คุณควรเพิ่มWorking Set (private)
, Working Set (shared)
, และCommit
NP Pool
ฉันจะสแกนกระบวนการทั้งหมดของคุณจากผู้ใช้ทั้งหมดและดูว่ากระบวนการใดมี NP Pool มากกว่า 256KB หรือไม่ หากคุณเห็นสิ่งใดโดยเฉพาะอย่างยิ่งสิ่งใดก็ตามที่สูงกว่ามากอาจเป็นสาเหตุของปัญหาหรืออย่างน้อยก็ส่วนหนึ่ง
ชุดการทำงานทั้งหมดของคุณจำนวนหน่วยความจำกายภาพที่ใช้โดยกระบวนการคือการรวมกันของชุดการทำงานส่วนตัวและการแบ่งปัน (WS) ส่วนตัวมักจะใหญ่กว่าสำหรับกระบวนการส่วนใหญ่อย่างไรก็ตามอาจมีบางอย่างที่ใช้ WS ที่แบ่งใช้จำนวนมากขึ้น โดยปกติแล้วทั้งสองควรรวมกับ WS ทั้งหมด Commit คือจำนวนชุดการทำงานของคุณที่ถูกกำหนดให้กับที่เก็บข้อมูลสำรอง (ในกรณีส่วนใหญ่ไฟล์หน้า Windows) แอปพลิเคชันที่มีพื้นหลังมักจะมี Commit มากกว่า WS ซึ่งบ่งชี้ว่าพูลเพจส่วนใหญ่ของพวกเขาถูกเปลี่ยนหน่วยความจำและลงในไฟล์เพจจิ้งของคุณ (ซึ่งเป็นเรื่องปกติสำหรับแอปเดสก์ท็อป
Non-Paged Pool เป็นหน่วยความจำที่ไม่สามารถและจะไม่ถูกเปลี่ยนจากหน่วยความจำกายภาพ ... ซึ่งเป็นการใช้งานหน่วยความจำกายภาพขั้นต่ำอย่างถาวรของคุณ หน่วยความจำ NP Pool มักจะมีรหัสโปรแกรมและส่วนสำคัญที่ต้องอยู่ในหน่วยความจำกายภาพเพื่อทำงานอย่างถูกต้องหรือปลอดภัยฮีปพิเศษ ฯลฯ กระบวนการทั้งหมด 60 กระบวนการหากทั้งหมดมีหน่วยความจำ NP Pool 256KB ดังนั้นการใช้หน่วยความจำฟิสิคัลขั้นต่ำสุดของคุณ จะอยู่ที่ประมาณ 15,360KB ในกรณีส่วนใหญ่หนึ่งหรือสองแอพอาจมี 256KB NP Pool ในขณะที่ส่วนใหญ่มีน้อยกว่ามักจะน้อยกว่ามาก (หรือไม่มี) ไม่น่าเป็นไปได้สูงที่ระบบจะประมวลผลชุดการทำงานทั้งหมดของกระบวนการทั้งหมดดังนั้นอย่าคาดหวังว่าการใช้หน่วยความจำจะลดลง
ในที่สุดจุดของการมีหน่วยความจำเพิ่มเติมคือการหลีกเลี่ยงการหน้าข้อมูลไปยังและจากพื้นที่หน่วยความจำขยาย (swap, ไฟล์หน้า) บนดิสก์ทางกายภาพ เพจเป็นกระบวนการที่เกี่ยวข้องกับการเคลื่อนย้ายบล็อกของหน่วยความจำกายภาพที่จัดสรรไว้ผลักไปที่ดิสก์และนำหน่วยความจำกายภาพจากดิสก์ไปใช้ การเพจคือเพื่อให้ง่ายไม่พึงปรารถนาอย่างมาก มันไม่ได้ "เลวร้าย" ต่อครั้ง แต่สามารถลากประสิทธิภาพเมื่อเกิดขึ้นบ่อยเกินไป จุดสูงสุดของการเพิ่มฟิสิคัลแรมทั้งหมดในระบบคือการอนุญาตให้โปรเซสเพิ่มเติมเพิ่มการรักษาคอมมิทในหน่วยความจำกายภาพ (ชุดการทำงานที่ใหญ่ขึ้น) การบริโภคหน่วยความจำไม่ใช่ปัญหาและเมื่อกระบวนการดำเนินการเพิ่มเติมใช้หน่วยความจำมากขึ้นประสิทธิภาพของระบบโดยรวมและประสิทธิภาพของกระบวนการที่ใช้งานมักจะสูงกว่า
Windows จัดการหน่วยความจำให้กับคุณและหน้าข้อมูลโดยอัตโนมัติเข้าและออกจากหน่วยความจำไปยังและจากไฟล์หน้า (swap) สำหรับคุณ หากคุณเรียกใช้โปรเซสที่ต้องการหน่วยความจำ 9GB และระบบของคุณใช้ 4GB อยู่แล้ว (จาก 12GB) จากนั้นระบบจะพิจารณาโดยอัตโนมัติว่ากระบวนการใดที่ไม่ต้องการเข้าถึงชุดการทำงานทั้งหมดของพวกเขาโดยทันที ของพูลพูออกเพื่อแลกเปลี่ยนเพื่อเพิ่ม 1GB พิเศษนั้น หากกระบวนการขนาดใหญ่ของคุณต้องการหน่วยความจำเพิ่มในที่สุด windows จะลดชุดการทำงานของกระบวนการอื่น ๆ ต่อไปจนกว่าจะมีพื้นที่ว่างเพียงพอในการจัดสรรบล็อกที่ร้องขอใหม่ กระบวนการขนาดใหญ่ของคุณอาจใช้หน่วยความจำที่มีอยู่ทั้งหมดยกเว้น NP Pool และอาจมีค่าใช้จ่ายขั้นต่ำเพิ่มเติมบางอย่างสำหรับการดำเนินการตามกระบวนการที่ไม่อนุญาตให้ Windows เพิ่มชุดการทำงานให้มากขึ้น (i อี พวกเขามีข้อผิดพลาดของหน้าที่ค้างอยู่ซึ่ง Windows จะเปลี่ยนหน่วยความจำกายภาพเป็นอย่างอื่น แต่เนื่องจากมีการร้องขอพวกเขาจึงไม่สามารถย้ายได้)
หากกระบวนการต้องการหน่วยความจำมากกว่าที่ได้รับอนุญาตให้เข้าถึง (กระบวนการแบบ 32 บิตมักจะสามารถเข้าถึง 2Gb และบางอย่างน้อยกว่า 4Gb ด้วยเทคนิคที่ได้รับการปรับปรุงในขณะที่กระบวนการแบบ 64 บิตมักจะเข้าถึงหน่วยความจำประมาณ 48Gb ในแต่ละครั้ง) เพื่อจำลองหน่วยความจำด้วยพื้นที่สวอป หากแอป 32 บิตต้องการใช้พื้นที่ 2Gb สูงสุดที่อนุญาต แต่มีเพียง 1.2Gb เท่านั้น Windows จะจอง 2Gb เต็มในไฟล์หน้าและย้ายข้อมูลของกระบวนการเข้าและออกจากไฟล์หน้าตามต้องการเพื่อ รองรับการใช้งานหน่วยความจำของแอพ การใช้งาน "หน่วยความจำ" ทั้งหมดในกรณีนี้อาจดูเหมือนจะมากกว่าหน่วยความจำกายภาพที่มีอยู่เมื่อดำเนินการโดย Commit ทั้งหมด Total Commit มักจะมีขนาดสูงสุดที่ขนาดไฟล์ทั้งหมดของหน้าซึ่งเมื่อจัดการโดยระบบมักจะเป็นจำนวนหน่วยความจำกายภาพ 2-3 เท่า ในกรณีของคุณ
หนึ่งจุดสุดท้าย คุณตอบว่ามี RAM ขนาด 16Gb ซึ่งตัวจัดการงานจะเห็น RAM ขนาด 12Gb เท่านั้น หนึ่งในสองสิ่งที่นี่ ไม่ว่าระบบของคุณจะมี RAM เพียง 12Gb เท่านั้นหรือแท่งใดแท่งหนึ่งของคุณไม่ได้ลงทะเบียนอย่างถูกต้อง หากไม้ ram (ฉันสมมติว่า 4x 4Gb sticks) มันอาจไม่ดีอาจไม่ได้รับการติดตั้งอย่างเหมาะสมในเมนบอร์ดของคุณหรือแผงวงจรหลักของคุณอาจมีปัญหาการตรวจจับหน่วยความจำ
ในการตรวจสอบว่าเป็นรุ่นหลังคุณควรอัพเดต BIOS เมนบอร์ดของคุณเป็นเวอร์ชันล่าสุดก่อน ฉันมีปัญหาที่คล้ายกัน ... หก Tripple-Channel DDR3 sticks ของ ram (6x 2Gb) ของฉันทั้งหมดดีตามการทดสอบแต่ละรายการ ... แต่เมนบอร์ดของฉันสุ่มตัดสินใจที่จะไม่นับหนึ่งหรือสองของพวกเขาทุกครั้ง มักจะทิ้งฉันด้วย ram เพียง 8Gb อัพเดต BIOS แก้ไขปัญหาได้และฉันสามารถเข้าถึงหน่วยความจำ 12Gb ทั้งหมดในตอนนี้