Fedora 32 ตั้งใจที่จะรวม Earlyoom เพื่อตอบสนองต่อหน่วยความจำเหลือน้อย

ที่ตีพิมพ์ แผนการ รวม โดยค่าเริ่มต้นในกระบวนการพื้นหลังของ Fedora 32 ต้น เพื่อตอบสนองต่อหน่วยความจำในระบบได้ตั้งแต่เนิ่นๆ หากจำนวนหน่วยความจำที่มีอยู่น้อยกว่าค่าที่ระบุ ดังนั้น Earlyoom โดยการส่ง SIGTERM (หน่วยความจำว่างน้อยกว่า 10%) หรือ SIGKILL (< 5%) จะบังคับให้ยุติกระบวนการที่ใช้หน่วยความจำมากที่สุด (มีค่าสูงสุด /proc /*/oom_score) โดยไม่ต้องนำสถานะของระบบไปยังจุดล้างบัฟเฟอร์ของระบบ Earlyoom จะช่วยให้คุณตอบสนองต่อการขาดหน่วยความจำได้รวดเร็วยิ่งขึ้น โดยไม่ต้องถึงจุดที่เรียกใช้ตัวจัดการ OOM (Out Of Memory) ใน เคอร์เนลซึ่งจะถูกทริกเกอร์เมื่อสถานการณ์วิกฤติและตามกฎแล้วระบบจะไม่ตอบสนองต่อการกระทำของผู้ใช้อีกต่อไป

ใน Fedora รุ่นต่อๆ ไป กำลังพิจารณาความเป็นไปได้อยู่ เปิดใช้งานตัวจัดการหน่วยความจำไม่เพียงพอ จอภาพหน่วยความจำเหลือน้อยซึ่งใช้อันที่แนะนำในเคอร์เนล Linux 5.2 /proc/pressure/memory interface สำหรับประเมินการขาดหน่วยความจำในระบบ แต่ต่างจาก Earlyoom ที่จะไม่ยุติกระบวนการทันที แต่จะส่งการแจ้งเตือนผ่าน DBus เกี่ยวกับความจำเป็นในการลดการใช้หน่วยความจำ (หากหลังจากนี้สถานการณ์ยังไม่กลับมา ปกติสามารถเปิดใช้งานได้ ออม คิลเลอร์ เมล็ดพืช) จอภาพหน่วยความจำเหลือน้อยจำเป็นต้องมีการปรับเปลี่ยนแอปพลิเคชัน ดังนั้นจึงถือเป็นวิธีแก้ปัญหาระยะยาวที่สามารถใช้ได้หลังจากปรับแอปพลิเคชัน GNOME แล้ว

เพื่อติดตามสถานการณ์แอปพลิเคชันหน่วยความจำไม่เพียงพอใน Glib 2.63.3 เพิ่ม API แล้ว GMemoryMonitor, อนุญาต ตรวจสอบสัญญาณจากจอภาพหน่วยความจำเหลือน้อยและดำเนินการ (เช่น แอปพลิเคชันสามารถเพิ่มหน่วยความจำที่ใช้สำหรับแคช บันทึกไฟล์ เรียกใช้การรวบรวมขยะ พยายามลดการกระจายตัวของหน่วยความจำ หรือยุติกระบวนการตัวช่วยที่ไม่ได้ใช้งาน) สนับสนุน
นอกจากนี้ GMemoryMonitor ยังได้รับการเพิ่มลงใน xdg-desktop-portal เพื่อใช้ในแอปพลิเคชันแบบแซนด์บ็อกซ์ที่จัดส่งในรูปแบบ flatpak

ที่มา: opennet.ru

เพิ่มความคิดเห็น