The process is in either user mode or kernel mode based on this fact i want to ask that how process in user mode can map virtual address to physical address when it has no access to uarea.
A user-mode process isn't supposed to know about physical addresses. That's the whole point of virtual memory.
EDIT: It seems you're asking how a userspace program knows where to put it's data. It doesn't. It pretends it has the whole address space (0-4GB on x86) and the Operating System does whatever address translation is necessary to let the process pretend that.
精彩评论