PDO for virtual devices ?

I hope someone can help me with some questions.

When does Pnp manager enumerate virtual devices ( like ramdisk sample ),
and what does it send as a PDO to such devices ? Who enumerates or creates
that PDO ?

How does Pnp manager know that it is a DISK device before the driver calls
IocreateDevice ?

Thank you