No verifiqué la fuente de time . Pero hay wait3 y wait4 funciones para obtener rusage del proceso hijo:
pid_t wait3(int *status, int options, struct rusage *rusage);
pid_t wait4(pid_t pid, int *status, int options, struct rusage *rusage);
struct rusage contiene el valor máximo del tamaño del conjunto residente.
La página man getrusage(2) describe el struct rusage .
Miré la fuente (es muy corta). Utiliza getrusage() .