คำถามติดแท็ก memory-management

การจัดการหน่วยความจำคือการจัดการหน่วยความจำคอมพิวเตอร์ในระดับระบบ คำถามที่ติดแท็กด้วยการจัดการหน่วยความจำสามารถครอบคลุมแอปพลิเคชันและระบบปฏิบัติการ

0
การแช่แข็งแบบสุ่มที่เกิดจาก khugepaged?
ฉันมีคอมพิวเตอร์ Arch Linux ที่ค่อนข้างอ้วน, เคอร์เนล 3.7.7-1-ARCH อย่างไรก็ตามเมื่อเร็ว ๆ นี้จะมีการหยุดการสุ่ม ไม่เคยพบเห็นกันทั่วไป แต่มันจะหยุดเป็นเวลา 15 วินาทีที่ไม่มีโปรแกรมตอบสนอง บางครั้งเมาส์ค้างด้วยและเคอร์เซอร์ไม่ขยับ หลังจากสิ่งนี้เกิดขึ้นมักจะเกิดขึ้นอีก 2 หรือ 3 ครั้งจนกว่าฉันจะตัดสินใจรีสตาร์ทคอมพิวเตอร์ มันเพิ่งเกิดขึ้นอีกไม่กี่นาทีที่ผ่านมาและครั้งนี้ฉันตรวจสอบมันโดยใช้ด้านบน เมื่อใดก็ตามที่คอมพิวเตอร์ของฉันหยุดทำงานการใช้งาน CPU ของ khugepaged จะเพิ่มขึ้นแบบสุ่มเป็น 100% ฉันรัน VMWare ด้วย RAM ขนาด 7 กิ๊กที่กำหนดไว้อย่างไรก็ตามคอมพิวเตอร์ของฉันมี RAM 16G เมื่อการตรึงครั้งสุดท้ายนี้เกิดขึ้นฉันมี RAM 6G ฟรี เพื่อให้ความคิดนี่คือส่วนหัวของด้านบน KiB Mem: 16394208 total, 10194584 used, 6199624 free, 4 buffers …

0
โฮสต์การจัดการหน่วยความจำและแขกของ Libvirt
ฉันได้ตั้งค่าผู้เยี่ยมชมสองคนโดยใช้กล่องอูบุนตูเพื่อเป็นโฮสต์ vm มันมีฟิสิคัลซีพียูสองตัว (แต่ละคอร์มี 6 คอร์), RAM 16 GB, และฮาร์ดดิส 3 ตัว โฮสต์ระบบปฏิบัติการอยู่บน SSD 60GB ในขณะที่แขกรับเชิญอยู่บน HDD ที่แยกต่างหากของพวกเขาแบ่งออกเป็นสองพาร์ติชัน พาร์ติชันแรกเก็บไฟล์รูปภาพ qcow ดิบสำหรับ guest os และพาร์ติชันที่สองถูกกำหนดให้เป็นอุปกรณ์บล็อกกับแขก (สำหรับ "โปรแกรม" และ "ข้อมูล") ฉันเปิดใช้งานบอลลูนหน่วยความจำบน linux guest แต่ไม่ได้อยู่ในหน้าต่าง ฉันเพิ่งมีประสบการณ์เกี่ยวกับหน่วยความจำครั้งแรกเมื่อวานนี้ดังนั้นฉันจึงตัดสินใจดูการใช้งานหน่วยความจำของผู้เยี่ยมชมแบบเรียลไทม์บนคอมพิวเตอร์ของฉันเอง ดังนั้นฉันจึงมีฮ็อปสองอันที่ทำงานในสองหน้าต่างที่ฉาบตามที่คุณเห็นในภาพที่แนบมา ด้านบนของภาพคือโฮสต์ที่ด้านล่างเป็นหนึ่งในแขก (ลินุกซ์) มีสองสิ่งที่ฉันไม่เข้าใจ: บนโฮสต์คอลัมน์ RES บอกว่า 5778M สำหรับแขกคนแรกและอีก 4274 ล้านคนสำหรับฉันซึ่งโฆษณาถึง ~ 10G แต่บรรทัด Mem ที่ด้านบนของภาพบอกว่า 6.9G …

1
การใช้ RAM สูงโดย Windows 7
ฉันใช้ Windows 64 บิตบน 2.2GHz รุ่นที่ 2 และ RAM 8GB เมื่อฉันบูทครั้งแรกการใช้ RAM เป็น 25-30% ซึ่งก็สมเหตุสมผล แต่หลังจากนั้นประมาณสองถึงสี่ชั่วโมงก็อาจสูงถึง 70-80% เมื่อเปิด Firefox และลดลงเหลือ 65% เมื่อฉันปิด Firefox มันจะไม่เปลี่ยนแปลงแม้ว่าฉันจะตัดการเชื่อมต่อเฉพาะเมื่อฉันรีบูต ในตัวจัดการงานกระบวนการจะเพิ่ม RAM สูงสุด 1.3GB ที่ใช้ แต่จะยังคงใช้ 65% นี่ไม่ใช่แค่ปัญหากับตัวจัดการงาน ฉันรู้สึกได้ถึงประสิทธิภาพที่ลดลงอย่างชัดเจน

1
ค้นหาผลรวมของกระบวนการใช้หน่วยความจำ
เนื่องจากฉันไม่มีหน่วยความจำบนพีซีของฉันเสมอฉันต้องการค้นหาครั้งหนึ่งตลอดกาลซึ่งเป็นโปรแกรม hogging หน่วยความจำมากที่สุด ปัญหาคือการเปิดตัวจัดการงาน (ฉันใช้งานบน Windows 7) ดูเหมือนจะไม่ช่วย ในความเป็นจริงตัวจัดการงานแสดงตัวอย่างของ chrome * 32.exe 10-15 รายการ แต่ฉันไม่สามารถหาวิธีรับผลรวมของอินสแตนซ์เหล่านี้ทั้งหมดได้ดังนั้นฉันจึงไม่มีวิธีใดที่จะค้นหาว่ามีหน่วยความจำเท่าใด ตัวอย่างเช่น Chrome กำลัง hogging มีวิธีการหา SUM ของอินสแตนซ์ทั้งหมดของโปรแกรมสำหรับทุกโปรแกรมไม่ใช่เฉพาะกรณีทั้งหมดหรือไม่ ขอบคุณมาก!

2
สามารถใช้ตัวชี้ขนาด 4 บิต 8 บิต 16 บิตหรือ 32 บิตบนเครื่อง 64 บิตได้หรือไม่?
ฉันแค่คำนวณคร่าวๆ ขนาดสูงสุดของจำนวนเต็ม 64 บิตที่ไม่ได้ลงนาม , ซึ่งเป็น: 18,446,744,073,709,551,615 q5 q4 t b m t h มองไปที่ ข้อมูลจำเพาะฮาร์ดแวร์ของ AWS สำหรับเครื่องจักรที่ใหญ่ที่สุดของพวกมัน 3,904GB, ซึ่งเป็น: 3,904,000,000,000,000,000 bytes 5 q4 t b m t h สำหรับฉันนั่นหมายถึง พอยน์เตอร์จะถูกเก็บเป็นจำนวนเต็ม 64 บิต . ฉันยังใหม่กับการคิดเกี่ยวกับความทรงจำและพอยน์เตอร์ แต่ต้องการอธิบายให้ชัดเจน ฉันยังสับสนอยู่เล็กน้อย ตัวชี้ คือ "โครงสร้างการเขียนโปรแกรมภาษา" ดังนั้นทางเทคนิคแม้ในเครื่อง 64 บิตหากคุณใช้งานน้อยกว่า ~ 4 พันล้าน จำนวนเต็ม (ขนาดจำนวนเต็มสูงสุด 32- บิต) …

2
อะไรคือข้อได้เปรียบของ RAM 'ฮาร์ดแวร์ที่จองไว้'
ฉันมี Windows 7 64-bit, 8GB RAM และ 1152MB เป็นฮาร์ดแวร์ที่สงวนไว้ สิ่งนี้ทำให้ฉันมีหน่วยความจำกายภาพ 7039MB พร้อมใช้งานตามที่ฉันเห็นบนตัวจัดการงาน อะไรคือข้อดีหรือข้อเสียของการทำให้มันเป็นแบบนี้? หากฉันปิดการใช้งานจาก MSCONFIG ฮาร์ดแวร์ที่สำรองไว้จะมีขนาด 1MB ฉันควรเก็บไว้เป็นอย่างไรเพื่อให้ได้ประสิทธิภาพที่ดีที่สุดในทุกความหมายโดยพิจารณาว่าปัจจุบันนี้ 8GB ยังคงมีจำนวนมาก

1
เนื้อหาของตารางหน้าจะมีลักษณะอย่างไรหลังจากที่เพจถูกสลับไปยังดิสก์
จากสิ่งที่ฉันเข้าใจตารางหน้าจะจับคู่ที่อยู่เสมือนกับที่อยู่ทางกายภาพ แต่จะเกิดอะไรขึ้นหากมีการสลับหน้าออกไปยังดิสก์ ที่ตั้งของข้อมูลจะไม่ใช้บิตในการเขียนมากกว่าที่อยู่จริงหรือไม่ ตำแหน่งของข้อมูลไม่เปลี่ยนแปลงเมื่อมีการแก้ไขไฟล์สลับหรือไม่ ปัญหานี้ได้รับการแก้ไขด้วยวิธีที่ต่างกันในระบบปฏิบัติการที่แตกต่างกันหรือไม่?

1
โฟลเดอร์เหล่านี้มีไว้เพื่ออะไร? [ซ้ำ]
คำถามนี้มีคำตอบอยู่ที่นี่แล้ว: ไดเรกทอรีแปลกใต้ C: ของ Windows 7 [ซ้ำ] 3 คำตอบ ฉันมีหลายสิบโฟลเดอร์เช่นนี้ในไดรฟ์ C: \ ฉันไม่แน่ใจว่าสิ่งที่พวกเขาทำ (ฉันคิดว่าพวกเขาอาจจะเกี่ยวข้องกับการปรับปรุง Windows 7) และฉันใช้พื้นที่น้อยมากดังนั้นฉันต้องการ สามารถคิดออกว่าฉันสามารถกำจัดพวกเขาหรือไม่ ฉันใช้ Windows 7 ขอบคุณล่วงหน้า.

1
การเติมช่องเสียบหน่วยความจำเพื่ออนุญาตให้ใช้ช่องสัญญาณคู่
ฉันมีเมนบอร์ด Gigabyte P55และIntel i7-860 cpu ที่ใช้ Windows 7-64Bit ฉันมี RAM ขนาด 1GB จำนวน 2 แท่งและ RAM ขนาด 2GB หนึ่งแท่ง ด้วยสล็อตหน่วยความจำสองช่องสี่ช่องบนเมนบอร์ดการกำหนดค่าทางกายภาพที่ดีที่สุดของหน่วยความจำของฉันคืออะไร การวางแท่งขนาด 1GB สองอันในช่อง # 1 & # 3 ทำได้ดีกว่าการใส่แท่ง 2GB ใน # 1 หรือไม่? จะมีความแตกต่างที่เห็นได้ชัดเจนหรือไม่?

1
การรวบรวมขยะในภาษาการเขียนโปรแกรมใช้สำหรับการรวบรวมหน่วยความจำฮีปอย่างอื่นหรือไม่? [ปิด]
การรวบรวมขยะเพื่อรีไซเคิลวัตถุที่ไม่ได้ใช้อีกต่อไปคือการจัดสรรคืนหน่วยความจำฮีป หน่วยความจำรั่วแสดงพื้นที่หน่วยความจำฮีปไม่เพียงพอสำหรับโปรแกรมที่จะเรียกใช้หรือไม่ ดังนั้นสิ่งที่เรามักจะพูดว่า "หน่วยความจำไม่พอ" หมายถึง "หน่วยความจำไม่เพียงพอ" ซึ่งก็คือ "หน่วยความจำฮีป"?

2
พื้นที่ว่างบนฮาร์ดดิสก์ของ MacBook ของฉันอยู่ที่ไหน
ฉันมี MacBook Pro พร้อมฮาร์ดไดรฟ์ 250GB ตอนนี้ฉันเหลือเพียง 4GB memory เท่านั้น ฉันได้เลือกโฟลเดอร์รากใน Finder (ชื่อคอมพิวเตอร์ของฉัน) แล้วกดCMD+ AและALT+ CMD+ Iเพื่อให้ได้ขนาดของรายการทั้งหมดเข้าด้วยกัน ฉันได้ 184GB คำถามของฉัน: 70GB ที่เหลืออยู่หายไปไหนและฉันจะค้นหาได้อย่างไร เมื่อฉันเหลือ 1.2GB ฉันได้รับดิสก์เริ่มต้นเต็ม Mac จำเป็นต้องใช้ 1GB เพื่อให้ทำงานอย่างไร

0
SQL Server ยังคงสลับ RAM อย่างต่อเนื่องหลังจากใช้เครื่องเสมือน
ฉันมีคอมพิวเตอร์ dev ที่ใช้ Windows Server 2008 R2 Enterprise และ SQL Server 2008 R2 Enterprise พร้อม RAM 8GB ขณะที่ฉันเขียนรหัสและใช้ฐานข้อมูล SQL Server จะใช้ RAM มากขึ้นเรื่อย ๆ ( ซึ่งก็โอเค! ) ถ้าฉันเรียกใช้Hyper-V Managerและเริ่มต้นเครื่องเสมือน SQL Server จะปล่อยRAM ทั้งหมดที่ทำได้ มันทำงานในโหมดโหมดหน่วยความจำขั้นต่ำนี้แม้หลังจากที่เครื่องเสมือนทั้งหมดปิดตัวลง วิธีเดียวที่จะทำให้ SQL Server ทำงานได้ตามปกติอีกครั้งคือเริ่มบริการ MSSQLServer ใหม่หรือรีบูตคอมพิวเตอร์ซึ่งบางครั้งก็ไม่สะดวกมาก ไม่มีใครรู้วิธีอื่นในการรับ SQL Server 2008 R2 เพื่อใช้ RAM ตามปกติอีกครั้ง ( ไม่ได้อยู่ในโหมดหน่วยความจำน้อยที่สุด …

0
VirtualBox ใช้หน่วยความจำทั้งหมดของฉัน
รายละเอียดของระบบมีดังนี้: RAM 62.8GB พื้นที่ฮาร์ดไดรฟ์ 1TB - Samsung 960 Pro M.2 CPU เป็น AMD Threadripper 1950x - 16Core ใช้งาน Ubuntu 17.10 Virtualbox 5.1.34_Ubuntur121010 ดังนั้นฉันเริ่มเล็กฉันต้องการเริ่มต้นด้วยการเรียกใช้ 5 VMs ในเวลาเดียวกันดังนั้นฉันตั้งให้พวกเขาทั้งหมดมี 2 โปรเซสเซอร์และใช้ RAM 2048MB สิ่งที่ฉันเห็นคือ VMs ไร้หัวของฉันใช้เวลามากกว่า 7 เท่าของหน่วยความจำที่คาดไว้ (RES) ฉันได้แนบภาพหน้าจอของกระบวนการหัวขาด 5 อันที่ทำงานอยู่หลังจากที่ RAM ส่วนใหญ่ใช้งานได้แล้วมันก็เริ่มใช้ swap และอย่างที่คุณเห็นเรากำลังใกล้เข้ามาทั้งการใช้แรมและการแลกเปลี่ยน บนระบบขนาดเล็กที่ใช้เวิร์กสเตชัน vmware ฉันดูเหมือนจะอยู่ในพื้นที่หน่วยความจำที่จัดสรรไว้มีการตั้งค่าที่ฉันขาดหายไปหรือไม่? ดูเหมือนว่าปัญหาการแคชจะไม่เกี่ยวข้องกับรูปภาพที่แนบมา ภาพ HTOP ของกระบวนการ …

1
หน่วยความจำที่แก้ไขโดย Windows โดยไม่มีเพจไฟล์
หน่วยความจำที่ปรับเปลี่ยนของ Windows ทำงานอย่างไรโดยไม่มีไฟล์เพจ หน่วยความจำกายภาพได้รับการแก้ไขแล้ว ... ? ฉันใช้ Windows 7 พร้อม RAM ขนาด 16GB และไม่มีไฟล์เพจ ฉันมีหน่วยความจำที่ถูกแก้ไขประมาณ 2.5GB ซึ่งส่วนใหญ่เป็นของ Firefox และกระบวนการ Vmware

0
เป็นไปได้หรือไม่ที่โปรแกรมตรวจพบว่าอีกอันกำลังอ่านหน่วยความจำโดยตรง (ใช้เช่น ReadProcessMemory)?
ฉันสะดุดผ่านที่เก็บสาธารณะ Github เมื่อฉันเจอโปรแกรม ( A ) ที่แสดงข้อมูลบนหน้าจอตามสิ่งที่อ่านในหน่วยความจำของโปรแกรมอื่น ( B ) เกมพีซีออนไลน์ readmeอ้างว่าไม่อย่างไม่มีการเขียนBแต่ยังเตือนผู้ใช้ว่าบางคนไม่ได้รับอนุญาตจากBเพราะ ตอนนี้ดูเหมือนชัดเจนว่าโปรแกรมสามารถตรวจพบว่าโปรแกรมอื่นกำลังเปลี่ยนหน่วยความจำของกระบวนการ ... แต่ตรวจพบว่าโปรแกรมกำลังอ่านจากโปรแกรมตัวอย่างเช่นโดยใช้ReadProcessMemoryจาก Windows API เป็นไปได้อย่างไร เท่าที่ฉันทราบกระบวนการไม่ทราบว่าเกิดอะไรขึ้นในระบบเว้นแต่คุณจะมีซอฟต์แวร์ "ต่อต้านการโกง" ที่น่ารำคาญพร้อมสิทธิ์ระดับผู้ดูแลระบบระดับสูงที่คอยตรวจสอบระบบทั้งหมดในขณะที่ชะลอความเร็วลง มีคนช่วยฉันคิดเรื่องนี้ได้ไหม ขอบคุณล่วงหน้า.

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