Я хочу проверить возможности управления памятью программ, например (например, название программы Director)
- Что произойдет, если некоторые другие процессы занимают слишком много памяти, а для режиссера слишком мало памяти? Как ведет себя режиссер?
- Что произойдет, если слишком много циклов процессора используется какой-либо другой программой во время работы режиссера?
- Что произойдет, если память, используемая другими программами, будет освобождена через некоторое время? Как режиссер утверждает память и начинает работать с полными возможностями. и др.
Я буду делать эти эксперименты на машине Unix. Один из способов - ограничить объем доступной памяти для процесса с помощью ulimit
, но нет хорошего способа контролировать цикл процессора использование.
У меня есть другая идея. Что делать, если я пишу какую-нибудь программу на C или С++, которая действует как динамическая память и наполнитель процессора, т.е. ничего не приносит пользы, но все равно выживает память и/или циклы процессора?
- Мне нужны некоторые идеи о том, как такая программа должна быть структурирована. Мне нужно иметь динамический (runtime) контроль над используемой памятью и используемым процессором.
- Я думаю, что создание большого количества потоков было бы хорошим способом засорить циклы процессора. Это правильно?
Есть ли лучший подход, который я могу использовать?
Любые идеи/предложения/комментарии приветствуются.