Вы находитесь на странице: 1из 3

An operating system, also known as an OS, is the software that makes

a computer usable.

The shell

The shell acts as an interface between the user and the


kernel. When a user logs in, the login program checks the
username and password, and then starts another program
called the shell. The shell is a command line interpreter
(CLI). It interprets the commands the user types in and
arranges for them to be carried out. The commands are
themselves programs: when they terminate, the shell gives
the user another prompt.

The kernel is merely the "core" or lowest level of an operating system.


The kernel provides numerous callable routines that allow other
software to access files, display text and graphics, get input from a
keyboard or mouse, and other such capabilities.

The operating systems that we come across today, generally have


many features which are not the necessary features to make a system
work. But these features are required to make the interaction with the
system easier. Such features include graphical interface, file
management, process management, shell, etc. These features rely on
the core part of the OS (called as kernel) to run and provide interface
to the user or other application programs. It is to be realized that these
features are inevitable, and only a kernel alone is of no use to the user.

An operating system also includes utilities that use the kernel. For
example, MS-DOS provides a program known as COMMAND.COM,
which is the program that allows a human to use the operating system.
Windows Explorer, the MacOS Finder, and the various UNIX shells offer
similar functionality. Other OS utilities may include a file manager, a
software installer, and other items that are necessary to make the
computer useful (never mind some don't find computers useful in the
first place :) ).

Shell is a program which allows the user to access the computer


system. Shell is an interface between the user and computer system.

Kernel is the only way through which the programs (all programs
including shell) can access the hardware. Its a layer between the
appliation programs and hardware. It is the core of most of the
operating systems and manages everything including the
communication between the hardware and software.
KERNEL is the core part of operating system. It contain modules like
device modules and other modules etc. Kernel is written in C language.
Basically kernel is mediator between hardware and Operating System.
But SHELL is an interface between users and operating system. Both
are mediator but work is totally different.

Let we have an example of "eject" command in linux operating system:

User give a command to Shell through input device like keyboard and
see that command on video Device like monitor, but in actual concept
is user give a command to shell, then this shell transfer that command
to kernel. when kernel have module of that command then it transfer
to hardware like CDROM. After that hardware behave as the module in
kernel and then kernel again transfer the output to Shell. And finally
shell transfer that output to user.

Hardware <---> Kernel <---> Shell <---> User

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. A kernel can be contrasted with a
shell, the outermost part of an operating system that interacts with
user commands. Kernel and shell are terms used more frequently in
Unix operating systems than in IBM mainframe or Microsoft Windows
systems.

Typically, a kernel (or any comparable center of an operating system)


includes an interrupt handler that handles all requests or completed
I/O operations that compete for the kernel's services, a scheduler that
determines which programs share the kernel's processing time in what
order, and a supervisor that actually gives use of the computer to each
process when it is scheduled. A kernel may also include a manager of
the operating system's address spaces in memory or storage, sharing
these among all components and other users of the kernel's services. A
kernel's services are requested by other parts of the operating system
or by application programs through a specified set of program
interfaces sometimes known as system calls.

Because the code that makes up the kernel is needed continuously, it


is usually loaded into computer storage in an area that is protected so
that it will not be overlaid with other less frequently used parts of the
operating system.
The kernel is not to be confused with the Basic Input/Output System
(BIOS).

Some kernels have been developed independently for use in any


operating system that wants to use it. A well-known example is the
Mach kernel, developed at Carnegie-Mellon University, and currently
used in a version of the Linux operating system for Apple's PowerMac
computers.

Вам также может понравиться