 In the monolithic system, the service is obtained by a single system call, which requires two "mode switches" (changes of the processor's ring or CPU mode).In the microkernel-based system, the service is obtained by sending an IPC message to a server, and obtaining the result in another IPC message from the server.This requires a context switch if the drivers are implemented as processes, or a function call if they are implemented as procedures.