The Linux kernel is a Unix-like operating system kernel used by a variety of operating systems based on it, which are usually in the form of Linux distributions. The Linux kernel is a prominent example of free and open source software.The Linux kernel is released under the GNU General Public License version 2 (GPLv2) (plus some firmware images with various non-free licenses), and is developed by contributors worldwide. Day-to-day development discussions take place on the Linux kernel mailing list.
Structure of Linux Kernel :
Kernel Components :
File System : It is responsible for storing information on disk and retrieving and updating this information.The File System is accessed through system calls such as open, read, write etc.
Process management : This area is responsible for creating and terminating processes and other activities of the kernel (software interrupts, tasklets, etc.). In addition, this is the area where interprocess communication (signals, pipes, etc.) takes place.
Device drivers : Device drivers abstract from the underlying hardware in every operating system, and they allow you to access the hardware.
Networking : All network operations have to be managed by the operating system, because certain network operations cannot be allocated to a specific process, such as handling an incoming packet.