Difference between Shell and Kernel
1. Shell :
A shell is an environment or a special user program which provide an interface to user to use operating system services. It executes programs based on the input provided by the user.
2. Kernel :
Kernel is the heart and core of an Operating System that manages operations of computer and hardware. It acts as a bridge between the user and the resources of the system by accessing various computer resources like the CPU, I/O devices and other resources.
Difference between Shell and Kernel :
S.No. | Shell | Kernel |
---|---|---|
1. | Shell allows the users to communicate with the kernel. | Kernel controls all the tasks of the system. |
2. | It is the interface between kernel and user. | It is the core of the operating system. |
3. | It is a command line interpreter (CLI). | Its a low level program interfacing with the hardware (CPU, RAM, disks) on top of which applications are running. |
4. | Its types are – Bourne Shell, C shell, Korn Shell, etc. | Its types are – Monolithic Kernel, Micro kernel, Hybrid kernel, etc. |
5. | It carries out commands on a group of files by specifying a pattern to match | It performs memory management. |
6. | Shell commands like ls, mkdir and many more can be used to request to complete the specific operation to the OS. | It performs process management. |
7. | It is the outer layer of OS. | It is the inner layer of OS. |
8. | It interacts with user and interprets to machine understandable language. | Kernel directly interacts with the hardware by accepting machine understandable language from the shell. |