A microkernel is an operating system structure that aims to keep the kernel as small and lightweight as possible. It provides only essential services, such as process scheduling and inter-process communication, while moving most non-essential services, like device drivers, into user space.