What is Kernel in Linux-OS?

The kernel is the essential center of a computer operating system, the core that provides basic services for all other parts of the operating system. A synonym is nucleus. It can be contrasted with a shell, the outermost part of an operating system that interacts with user commands.

In computing, the kernel is a computer program that manages input/output requests from software and translates them into data processing instructions for the central processing unit and other electronic components of a computer. It is a fundamental part of a modern computer’s operating system.

Kernel is heart of Linux OS. It manages resource of Linux OS. Resources means facilities available in Linux. For e.g. Facility to store data, print data on printer, memory, file management etc.

It decides who will use this resource, for how long and when. It runs your programs (or set up to execute binary files).

It acts as an intermediary between the computer hardware and various programs/application/shell.

Position of kernel in Operating System

The critical code of the kernel is usually loaded into a protected area of memory, which prevents it from being overwritten by other, less frequently used parts of the operating system or by applications. The kernel performs its tasks, such as executing processes and handling interrupts, in kernel space, whereas everything a user normally does, such as writing text in a text editor or running programs in a GUI (graphical user interface), is done in user space. This separation prevents user data and kernel data from interfering with each other and thereby diminishing performance or causing the system to become unstable (and possibly crashing).

When a process makes requests of the kernel, the request is called a System call. Various kernel designs differ in how they manage system calls and resources.

Kernel is Memory resident portion of Linux. It perform following task:-

  • I/O management
  • Process management
  • Device management
  • File management
  • Memory management

The Linux kernel is written in the version of the C programming language supported by GCC (which has introduced a number of extensions and changes to standard C), together with a number of short sections of code written in the assembly language (in GCC’s “AT&T-style” syntax) of the target architecture.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s