Moodle и использование компиляторов ЯП для олимпиад

Moodle и использование компиляторов ЯП для олимпиад

от Al Spay -
Количество ответов: 3

Есть ли плагин для того что бы Moodle принимал файл программы например *.pas передавал его компилятору и проверял ответ? то есть  как происходит проверка на олимпиадах.

В ответ на Al Spay

Re: Moodle и использование компиляторов ЯП для олимпиад

от Vadim Dvorovenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода

Нет, такого плагина в чистом виде в moodle нет. Некоторое время назад у меня возникала идея сделать что-то подобное, но тут возник нюанс: Все системы, используемые на олимпиадах в обязательном порядке ограничивают программу в памяти, времени выполнения и в доступе ко всем файлам вне исполняемой папки. Для этого используются патчи на ядро в линуксе и прочие хитрости в винде. Если вы придумаете, как вызвать программу с бесконечным циклом, чтобы она сама закрылась через 5 сек, то я подумаю, как написать такой модуль для moodle

В ответ на Vadim Dvorovenko

Re: Moodle и использование компиляторов ЯП для олимпиад

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

Сделать это платформенно-независимо нереально.

Для unix-платформ реализовать не очень сложно. IMHO хватит штатных средств chroot + ulimit.

Нет проблем с ограничением использования CPU,RAM,числа процессов, числа открываемых дескрипторов, размером создаваемых файлов. Предельное время исполнения программы должен контролировать "запускатель" программы.

Но квалификация разработчика такого плагина должна быть очень высокой, иначе получите средство для создания  ботнета.

В ответ на Vadim Dvorovenko

Re: Moodle и использование компиляторов ЯП для олимпиад

от Al Spay -

Есть сайты которые используют связки Moodle + проверки программ... по каким принципам они строятся - не скажу... где то встречал что просто руками допиленный Moodle ...