Linux kernel explained: How does the kernel work?