Back to questions
СБЕР
Junior — Middle
79
Как определить стандартный размер стека процесса в Linux-системе?
Companies where asked
Answer from AI
sobes.tech AI
В Linux стандартный размер стека процесса можно узнать с помощью команды ulimit -s, которая показывает размер стека в килобайтах. Также в программе на C/C++ можно получить этот размер через системный вызов getrlimit с параметром RLIMIT_STACK.
Пример на C:
#include <stdio.h>
#include <sys/resource.h>
int main() {
struct rlimit rl;
if (getrlimit(RLIMIT_STACK, &rl) == 0) {
printf("Stack size: %ld bytes\n", rl.rlim_cur);
} else {
perror("getrlimit");
}
return 0;
}
Значение rlim_cur — текущий лимит размера стека в байтах.