انتشار earlyoom 1.3، فرآیندی برای پاسخ زودهنگام به حافظه کم

پس از هفت ماه توسعه منتشر شد انتشار فرآیند پس زمینه اتاق اولیه 1.3، که به صورت دوره ای مقدار حافظه موجود (MemAvailable، SwapFree) را بررسی می کند و سعی می کند در مراحل اولیه به وقوع کمبود حافظه پاسخ دهد.

اگر مقدار حافظه موجود کمتر از مقدار مشخص شده باشد، earlyoom به اجبار (با ارسال SIGTERM یا SIGKILL) فرآیندی را که بیشتر از همه حافظه را مصرف می‌کند (دارای بالاترین مقدار /proc/*/oom_score) خاتمه می‌دهد، بدون اینکه وضعیت سیستم را بیاورد. برای پاک کردن بافرهای سیستم و تداخل در جابجایی کار (هنرگر OOM (خارج از حافظه) در هسته زمانی فعال می شود که حالت خارج از حافظه قبلاً به مقادیر بحرانی رسیده باشد و معمولاً در این لحظه سیستم دیگر پاسخ نمی دهد. به اقدامات کاربر).

Earlyoom از ارسال اعلان‌های فرآیندهای خاتمه‌یافته به دسکتاپ (با استفاده از notify-send) پشتیبانی می‌کند، و همچنین امکان تعریف قوانینی را فراهم می‌کند که در آن، با استفاده از عبارات منظم، می‌توانید نام فرآیندهایی را که ترجیح داده می‌شوند خاتمه داده شوند، مشخص کنید (گزینه "- -prefer") یا توقف باید اجتناب شود (گزینه "--avoid").

تغییرات اصلی در نسخه جدید:

  • اجرای انتظار برای پایان فرآیند پس از ارسال سیگنال. این مشکل را برطرف می‌کند که در اوایل‌اووم گاهی اوقات بیش از یک فرآیند زمانی که یکی کافی است از بین می‌رود.
  • یک اسکریپت کمکی (notify_all_users.py) اضافه کرد تا از طریق notify-send به همه کاربرانی که وارد سیستم شده‌اند، از تکمیل فرآیندها مطلع شود.
  • رفع نمایش نادرست برخی از نام های فرآیند حاوی کاراکترهای UTF-8.
  • آیین نامه رفتار میثاق مشارکت کننده تصویب شد.

منبع: opennet.ru

اضافه کردن نظر