Наскільки великий стек у Linux?
- Blog
- Наскільки великий стек у Linux?
admin
Стандартний розмір стека Linux на потік становить 10 МБ, де as, у Windows за замовчуванням 1 МБ. Це змушує сервер у Linux виділяти надмірну кількість непотрібної пам’яті через кількість потоків, створених сервером. Наведена вище команда встановить розмір стека потоку за замовчуванням на 1 МБ замість початкових 10 МБ.
Ви можете переглянути обмеження розміру стека в оболонці Linux за допомогою ulimit -s або в R system("ulimit -s") . Це зазвичай 8192 кб (8 мегабайт) на ОС Linux.
Використання команди ulimit у Linux/Unix: The Команда ulimit -s відображає поточний розмір стека в Linux/Unix. Використання функції _alloca в Windows: ви можете використовувати функцію _alloca, щоб розподілити пам’ять у стеку та перевірити розмір стеку, що залишився.
Стек містить усі локальні змінні та дані, проміжне сховище для регістрів і параметрів функцій. Типовий стек – це область пам'яті комп'ютера з фіксованим походженням і змінним розміром. Спочатку розмір стека дорівнює нулю.
Розмір стосу ниток:
| Упорядник | прибл. Обмеження стека | прибл. Розмір масиву (подвійний) |
|---|---|---|
| Linux icc, ifort | 4 Мб | 700 х 700 |
| Linux pgcc, pgf90 | 8 Мб | 1000 x 1000 |
| Linux gcc, gfortran | 2 Мб | 500 х 500 |
1MB Це залежить від вашої операційної системи. У Windows типовий максимальний розмір стека становить 1 МБ, тоді як це так 8 Мб на типовому сучасному Linux, хоча ці значення можна регулювати різними способами.
Щоб 64 були жорстким обмеженням, потрібне певне хакерство бітів, оскільки знадобиться лише шість бітів. Оскільки ми вже знаємо, що обмеження становить 255, воно, очевидно, зберігається як байт без знаку, тому вибір обмеження кількості предметів до 64 є стилістичним або ігровим рішенням, а не програмним рішенням.
© Copyright 2025Місцеві поради| Theme developed by Lucid Solutions