Serve.cfg:tester:max stack size
Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/serve.cfg/Конфигурационные параметры тестирования/max_stack_size
Имя переменной: | max_stack_size |
Содержится в: | tester |
Используется: | run |
Тип содержимого: | integer |
Может отсутствовать: | да |
Наследуется: | да |
Значение по умолчанию: | не установлено |
Может повторяться: | нет |
Описание. Данная конфигурационная переменная устанавливает максимальный размер сегмента стека для тестируемой программы. Размер задаётся в байтах (так, 8388608 байт — это 8 Мегабайт). Если размер стека превышен, программа, как правило, получает фатальный сигнал SIGSEGV (Segmentation fault) и снимается с выполнения. В этом случае тестирование программы завершается с ошибкой “Runtime error”.
Использование данной конфигурационной переменной имеет смысл, если тестируемая программа запускается непосредственно, а не с помощью эмулятора или интерпретатора, так как в этих случаях данная конфигурационная переменная будет ограничивать размер стека эмулятора или интерпретатора.
Если данная конфигурационная переменная не установлена ни в самом неабстрактном тестировщике, ни в абстрактном тестировщике, свойства которого он наследует, ограничение размера стека при запуске программы явно не устанавливается. В этом случае работает ограничение на размер стека, действительное для программы run в момент её запуска. Ограничение на размер стека можно просмотреть с помощью команды ulimit -s командного интерпретатора bash.
Пример.
max_stack_size = 8388608