The kernel is a central component of most computer operating systems. It acts as bridge between applications and the hardware and also manages the systems's resources.
Android uses a Linux kernel. Like many things in Android, this one can also be customized: different kernels offer different advantages – e.g. better performance or more stability, support for additional features, overclocking/undervolting etc.
You can flash a different kernel to your device (the kernel is part of the boot image/zImage). But be careful: the kernel must be compatible with your ROM. Always make a nandroid backup before flashing – as with a wrong kernel you might end up in a boot-loop.
For further details, please see:
- What is the difference between: Rooting, Jailbreak, ROM, Mod, etc.?
- Where are custom kernels being flashed to in internal memory?
- CyanogenMod: Flashing a New Kernel
- Can I flash a custom ROM and a separate custom kernel after?
- I installed an incompatible kernel with CyanogenMod - what do I do?
- How can I find the name of the Kernel and its version that is running in my phone?