|Also, in a 32 bit system, virtual memory is limited to 4GiB ?|
No, physical memory is limited to 4 GB. In reality it is something less than that because some address space has to be allocated to memory mapped devices.
Virtual memory is practically unlimited although in reality there comes a point where is can start slowing things down if the swap file gets too big. Virtual memory is stored on the hard disk in the swap file. It is stored in block of 4Kb. When a block is retrieved from the hard dsik it may be allocated different address then when it was first stored.
Virtual memory and memory management on the whole is a complex subject. Their are loads of articles on the Internet is you really want to know ho wit work. But you need to learn the difference between physical memory, virtual memory and hard disk space. They are all different.
If all memory addresses are utilised and there are no more available then you get an out of memory error.