Buduję oprogramowanie do programowania oprogramowania. Program użytkownika jest odbierany przez nasz system oceniania i jest oceniany przez kompilowanie go i uruchamianie go za pomocą fork() i exec(). Proces nadrzędny czeka na dziecko (proces składania), aby zakończyć, a następnie czyści go.Statystyka procesu pomiarowego w systemie Linux
Aby podać przydatne informacje o przebiegu programu, chcę zmierzyć czas procesora i pamięć szczytową używaną przez program. Czy jądro Linuksa śledzi te wartości? Czy istnieje inny sposób uzyskania tych informacji?
Należy zachować ostrożność, aby nieuczciwy użytkownik mógł umieścić paskudną niespodziankę w swoim programie. –
Ograniczamy maksymalny czas procesora, otwieramy pliki, itp., Używając setrlimit syscall, więc nie sądzę, że użytkownik może wyskoczyć jakieś nieprzyjemne niespodzianki :) – donatello