Monitor mode has higher priority than
User mode i.e. if while executing in User
mode if an interrupt is encountered CPU switches to
Monitor mode.
In Monitor mode, the CPU can use all the
instructions and access all the areas of the memory. On the other
hand, In User mode, the CPU is restricted to
unprivileged instructions and a specified area of the memory.
User codes should always be executed in User
mode .The CPU automatically switches to Monitor
mode whenever an interrupt or trap occurs. So, OS codes
are run in Monitor mode.