Difference between revisions of "Изменения в версии 2.3.23"
(2 intermediate revisions by the same user not shown) | |||
Line 22: | Line 22: | ||
=== [[ej-polygon]] === | === [[ej-polygon]] === | ||
− | Новая программа для загрузки архивов задач из системы Polygon. Программа используется из административного интерфейса редактирования настроек турнира, но может использоваться и самостоятельно. | + | Новая программа для загрузки архивов задач из системы Polygon. Программа используется из административного интерфейса редактирования настроек турнира, но может использоваться и самостоятельно. Для активации этой возможности необходимо, чтобы при компиляции ejudge в системе была установлена библиотека libcurl (пакеты libcurl, libcurl-devel). |
=== [[ej-super-run]] === | === [[ej-super-run]] === | ||
При запуске программы на выполнение учитываются переменные окружения, установленные в конфигурационной переменной <tt>[[serve.cfg:tester:start_env|start_env]]</tt>, которые имеют больший приоритет перед значениями переменных, заданными в конфигурационном файле super-run.cfg. | При запуске программы на выполнение учитываются переменные окружения, установленные в конфигурационной переменной <tt>[[serve.cfg:tester:start_env|start_env]]</tt>, которые имеют больший приоритет перед значениями переменных, заданными в конфигурационном файле super-run.cfg. | ||
+ | |||
+ | Изменен алгоритм отслеживания превышения максимального времени выполнения. Теперь состояние работы тестируемого процесса отслеживается каждые 0.1 с с помощью чтения содержимого файла /proc/PID/stat. Как только процессорное время работы процесса превышает лимит времени, процесс убивается. | ||
+ | |||
+ | Если процесс выполняется под управлением ядра linux версии >= 3, не используется миллисекундный лимит ограничения времени работы процесса, так как [[патч к ядру Linux|патч для ядер]] версии >= 3 больше не поддерживает эту возможность. | ||
=== [[ej-super-server]] === | === [[ej-super-server]] === | ||
Line 32: | Line 36: | ||
При редактировании настроек турнира сохраняется старое значение конфигурационных переменных <tt>[[serve.cfg:tester:start_env|start_env]]</tt> для всех секций tester. | При редактировании настроек турнира сохраняется старое значение конфигурационных переменных <tt>[[serve.cfg:tester:start_env|start_env]]</tt> для всех секций tester. | ||
− | При редактировании настроек турнира поддерживается импорт задач из системы Polygon. См. далее [[Руководство по импорту задач из системы Polygon в турниры ejudge]]. | + | При редактировании настроек турнира поддерживается импорт задач из системы Polygon. См. далее [[Руководство по импорту задач из системы Polygon в турниры ejudge]]. Для активации этой возможности необходимо, чтобы при компиляции ejudge в системе была установлена библиотека libcurl (пакеты libcurl, libcurl-devel). |
Latest revision as of 08:28, 25 June 2012
Навигация: Главная страница/Система ejudge/Разработка/История версий/Изменения в версии 2.3.23
Contents
Языковые процессоры
Поддерживается отладчик valgrind. Если при конфигурировании языковых процессоров с помощью ejudge-configure-compilers обнаружен valgrind и gcc или g++, то активируются два языковых процессора gcc-vg и g++-vg. Компиляция программы выполняется с помощью соответствующего компилятора, а запускается скомпилированная программа с помощью valgrind.
Таким образом, с помощью gcc-vg и g++-vg можно отслеживать корректность работы тестируемых программ с динамической памятью и полноту освобождения динамической памяти.
Параметры командной строки для запуска valgrind можно передавать с помощью переменной окружения EJUDGE_VG_FLAGS. Если эта переменная окружения не установлена, valgrind запускается с параметрами:
valgrind --quiet --error-exitcode=1 --leak-check=full
ejudge-contests-cmd
При посылке решений поддерживаются задачи типа "select-one".
ej-contests
Поддерживается новая глобальная конфигурационная переменная disable_user_database.
Поддерживается новая глобальная конфигурационная переменная enable_max_stack_size.
ej-polygon
Новая программа для загрузки архивов задач из системы Polygon. Программа используется из административного интерфейса редактирования настроек турнира, но может использоваться и самостоятельно. Для активации этой возможности необходимо, чтобы при компиляции ejudge в системе была установлена библиотека libcurl (пакеты libcurl, libcurl-devel).
ej-super-run
При запуске программы на выполнение учитываются переменные окружения, установленные в конфигурационной переменной start_env, которые имеют больший приоритет перед значениями переменных, заданными в конфигурационном файле super-run.cfg.
Изменен алгоритм отслеживания превышения максимального времени выполнения. Теперь состояние работы тестируемого процесса отслеживается каждые 0.1 с с помощью чтения содержимого файла /proc/PID/stat. Как только процессорное время работы процесса превышает лимит времени, процесс убивается.
Если процесс выполняется под управлением ядра linux версии >= 3, не используется миллисекундный лимит ограничения времени работы процесса, так как патч для ядер версии >= 3 больше не поддерживает эту возможность.
ej-super-server
При редактировании настроек турнира сохраняется старое значение конфигурационных переменных start_env для всех секций tester.
При редактировании настроек турнира поддерживается импорт задач из системы Polygon. См. далее Руководство по импорту задач из системы Polygon в турниры ejudge. Для активации этой возможности необходимо, чтобы при компиляции ejudge в системе была установлена библиотека libcurl (пакеты libcurl, libcurl-devel).