на виртуальном процессоре
1. Современные системы виртуализации используют реальный процессор. Есть конечно и системы, которые эмулируют процессор программно, но это когда речь идет об эмуляции между архитектурами - например, код для ARM запускают на x86.
2.
так как образы ос для виртуалок, чет немного другие, а что в них другого в этом вопрос
отличия в драйверах. "Обычная" ОС должна работать в виртуализации без проблем.
3.
А значит. Ram может расти.
Не вполне верно. Верхний предел RAM задается при старте машины. RAM можно уменьшить, но не увеличить.
Для современного процессора, выполнение гостевой ОС - это выполнение обычной программы, просто в какие-то моменты он перехватывает обращения к железу и подсовывает туда код гипервизора. Если же мы говорим о программной реализации процессора, то памятью может быть просто массив байтиков.