ulimit & rlimit в Linux, це одне і те ж?


Відповіді:


12

Я думаю, що плутанина походить від того, що основна система виклику, що виконує обгортання, називається setrlimit .

уривок зі сторінки ulimit man

Функція ulimit () повинна контролювати межі процесу. Обмеження процесу, які можна керувати за допомогою цієї функції, включає максимальний розмір одного файлу, який можна записати (це еквівалентно використанню setrlimit () з RLIMIT_FSIZE).

Крім того, якщо ви подивитеся на сторінку setrlimitчоловіка, називається базова структура даних, яка містить інформацію про обмеження rlimit.

уривок зі сторінки setrlimit man

getrlimit і setrlimit отримати та встановити ліміти ресурсів відповідно. Кожен ресурс має пов'язаний м'який і жорсткий межа, визначений структурою rlimit (аргумент rlim як getrlimit (), так і setrlimit ()):

struct rlimit {
    rlim_t rlim_cur;   /* Soft limit */
    rlim_t rlim_max;   /* Hard limit (ceiling 
                          for rlim_cur) */
};

Список літератури


2

Посилаючись на сторінку ulimit man , це команда bash shell для управління межами системи та частини bash-вбудованих файлів, таких як printf, read, source тощо.

Посилаючись на сторінку getrlimits , вона представляє API через C / C ++, використовуючи системні виклики для управління системними рамками. Додаткова документація на glibc про пояснення rlimits (= обмеження ресурсів) краще.


0

ulimit може бути дві речі:

  • інтерфейс API POSIX 7 C, який застаріло на користь getrlimit(): http://pubs.opengroup.org/onlinepubs/9699919799/functions/ulimit.html

    Програми повинні використовувати функції getrlimit () або setrlimit () замість застарілої функції ulimit ().

    Це не було випадку, коли simвідповідали на POSIX 6.

    На GNU / Linux, getrlimit()і ulimit()реалізуються із sys_getrlimitсистемним викликом. Немає sys_ulimit.

  • непридатна утиліта POSIX 7 CLI: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ulimit.html

    Він може бути реалізований з будь-яким ulimit()або getrlimit().

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.