Without going into detail, almost all ops have a similar architecture.
All programs run in user space and connect to the kernel space using the api methods.
There are manages in the kernel space managing all running programmes (processes & threads). The kernel has the resource management like:
All of them are using drivers which manage the devices via interfaces
In computing, a device driver is a computer program that operates or controls a particular type of device that is attached to a computer or automaton.[1] A driver provides a software interface to hardware devices, enabling operating systems and other computer programs to access hardware functions without needing to know precise details about the hardware being used. Read more...
Kernel types: