Если вас интересует моделирование среды операционной системы, тогда одним из ответов будет использование среды виртуальных машин, в которой вы можете контролировать параметры памяти и ЦП и т. Д.
Потоковая пауза \ остановка может помочь вам смоделировать частоту ЦП, но это будет очень неточно, поскольку, когда вы приостанавливаете поток, он будет перенесен, а операционная система перепланирует его на какой-то «случайный» момент времени, то есть момент, который вы не можете контролировать.
Что касается ограничения памяти, можно запустить новый процесс, в котором будет размещен ваш код, а затем ограничить память этого процесса, например ::
.
http://www.codeproject.com/KB/threads/Setting_Max_Memory_Limit.aspx
Однако это не будет имитировать общие ограничения памяти ОС.