I am aware that Kernel mode is a privileged such that in kernel mode all hardware capabilities and all instructions in instruction set are available. I am also aware that when we make a procedure call (say read()) it in turn makes a system call. But before that it Traps into Kernel mode. I wanted to know what use would having Kernel mode serve if every user program can run in Kernel mode as all procedure calls and system calls are available to user programs.