Bezpieczne odpalanie programu.

0

Cześć.
Chcę napisać stronkę umożliwiającą tworzenie i odpalanie programu. Coś takiego jak http://ideone.com/ . Zostawmy jednak samo pisanie stronki. To czego nie wiem to, jak sprawić, żeby programy ingerujące w system (mogące go popsuć), mogące zużyć zbyt dużo pamięci, zapętlające się, lub po prostu działające zbyt długo albo nie zostawały odpalane, albo kończyły nagle działanie po jakimś czasie.
Co muszę sprawdzać żeby mieć pewność, że nikt nie będzie w stanie napisać programu, który zaszkodzi po odpaleniu go na moim serwerze ?
Jak sprawić, żeby program zużywający zbyt dużo pamięci lub działający zbyt długo, kończył działanie ?
Programy będą pisane tylko w C++.

2

Popatrz jak inni to robią, np: https://github.com/melpon/wandbox lub https://github.com/Eelis/geordi

W skrócie: odpalasz z najmniejszymi możliwymi uprawnieniami, blokujesz odpowiednie syscalle.
Limitowanie pamięci wygląda na trywialne: http://unix.stackexchange.com/questions/34334/how-to-create-a-user-with-limited-ram-usage
Limitowanie czasu wykonania możesz łatwo rozwiązać za pomocą zwykłego timera w programie wykonującym skompilowane binarki.

1 użytkowników online, w tym zalogowanych: 0, gości: 1