Sobes.tech
Junior — Middle

Jak określić domyślny rozmiar stosu procesu w systemie Linux?

sobes.tech AI

Odpowiedź od AI

W systemie Linux standardowy rozmiar stosu procesu można sprawdzić za pomocą polecenia ulimit -s, które wyświetla rozmiar stosu w kilobajtach. Również w programie C/C++ można uzyskać ten rozmiar za pomocą wywołania systemowego getrlimit z parametrem RLIMIT_STACK.

Przykład w C:

#include <stdio.h>
#include <sys/resource.h>

int main() {
    struct rlimit rl;
    if (getrlimit(RLIMIT_STACK, &rl) == 0) {
        printf("Rozmiar stosu: %ld bajtów\n", rl.rlim_cur);
    } else {
        perror("getrlimit");
    }
    return 0;
}

Wartość rlim_cur to bieżący limit rozmiaru stosu w bajtach.