Microkernel is a highly limited kernel that usually only supports address space management, thread management and inter-process communication when other parts of the OS run in userspace.