سؤال

وفقا لشركة ManPage، "-l" في Ulimit يعني "الحد الأقصى للحجم الذي قد يكون مغلق في الذاكرة". ماذا تعني هذه الجملة بالضبط؟ كيف يمكن أن تؤثر على البرامج قيد التشغيل؟

هل كانت مفيدة؟

المحلول

قد لا يتم تخزين الذاكرة المقفلة مؤقتا - وهذا يقلل من مقدار الذاكرة المتوفرة للعمليات الأخرى. يحد هذا الإعداد مقدار الذاكرة التي يمكن إغلاقها.

نصائح أخرى

هذا يحد مقدار الذاكرة التي يمكنك استخدامها مع mlock.

ال setrlimit. يقول manpage:

الحد الأقصى لعدد البايتات من الذاكرة التي قد تكون مؤمنة في ذاكرة الوصول العشوائي. في الواقع، يتم تقريب هذا الحد إلى أقرب مضاعفات حجم صفحة النظام. يؤثر هذا الحد على mlock (2) و mlockall (2) و mmap (2) map_locked. منذ Linux 2.6.9 كما يؤثر أيضا على عملية Shmctl (2) SHM_LOCK، حيث يحدد أقصى حد على إجمالي البايتات في قطاعات الذاكرة المشتركة (انظر Shmget (2)) التي قد تكون مؤمنة بواسطة معرف المستخدم الحقيقي لعملية الاتصال. يتم حساب أقفال shmctl (2) shm_lock بشكل منفصل عن أقفال الذاكرة لكل عملية أنشأها MLOCK (2)، MLockall (2)، و MMP (2) Map_Locked؛ يمكن لعملية قفل بايت حتى هذا الحد في كل من هاتين الفئتين. في Linux Kernels قبل 2.6.9، يتم التحكم في هذا الحد مقدار الذاكرة التي يمكن إغلاقها بواسطة عملية مميزة. نظرا لأن Linux 2.6.9، لا يتم وضع أي حدود على مقدار الذاكرة التي قد تكون فيها عملية مميزة قد قفل، ويحكم هذا الحد بدلا من ذلك مقدار الذاكرة التي قد تكون فيها عملية غير متجانسة قفلها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top