Commit e0f08d7e authored by Guillaume Huard's avatar Guillaume Huard
Browse files

MAJ Doc sur les limites d'exécution

parent 04045c02
......@@ -181,11 +181,16 @@ notre programme
En outre, l'exécution elle même, lorsqu'il s'agit du code soumis par l'étudiant, est controllée par
deux réglages évitant une trop grande utilisation des ressources disponibles :
- =timeout= : valeur en secondes déterminant le temps alloué au test pour son exécution (10 par
défaut). Si le test dépasse le temps imparti, il est tué par le signal 9 (SIGKILL) ;
- =output_limit= : taille à partir de laquelle la sortie standard écrite par le programme
soumis n'est plus prise en compte (10Ko par défaut). Cette activité travaille intégralement en
mémoire, ce réglage est present pour que l'activité ne plante pas sans donner de note après avoir
tenté de lire la sortie d'une boucle d'affichage infinie (par exemple).
défaut). Si le test dépasse le temps imparti, il est tué par le signal 9 (SIGKILL). Le timeout
peut être désactivé en donnant une valeur négative ou nulle pour ce réglage. Ceci est déconseillé
car, dans ce cas, un programme trop long sera terminé par le module VPL lui-même, mettant fin au
script interne de cette activité sans qu'aucune note n'ait été produite ;
- =output_limit= : taille à partir de laquelle la sortie standard écrite par le programme soumis
n'est plus prise en compte (10Ko par défaut). La limite peut être désactivée en donnant une valeur
négative pour ce réglage. Ceci est déconseillé car, dans ce cas, un programme produisant une
sortie trop volumineuse résultera en une erreur d'épuisement de la mémoire mettant fin au script
interne de cette activité (qui travaille intégralement en mémoire) sans qu'aucune note n'ait été
produite.
- =error_limit= : similaire à =output_limit= pour la sortie d'erreur standard.
L'exemple suivant comprend une petite série de tests avec limites, qui passe pour tout programme
s'exécutant en moins de 2 secondes et ayant un code de retour nul. En outre, pour les tests 2 et 3,
......@@ -197,7 +202,8 @@ seul le premier octet de la sortie standard sera lu :
tests => {
test_1 => { timeout => 2 },
test_2 => { output_limit => 1 },
test_3 => { output_limit => 1, timeout => 2 }
# Vraiment déconseillé, on désactive tout
test_3 => { output_limit => -1, timeout => -1 }
}
}
}
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment