OPERATING SYSTEM SHELL: An Operating System (OS) is an interface between a computer user and computer hardware. An operating system is a software which performs all the basic tasks like file management, memory management, process management, handling input and output, and controlling peripheral devices such as disk drives and printers.
PARTS OF OPERATING SYSTEM
- Operating System Kernel
Responsible for managing and controlling computer resources such as the processor, main memory, storage devices, input devices, output devices and communication devices.
A kernel basically acts as a bridge between any user and the various resources offered by a system by accessing the various resources of a computer, such as the I/O devices, CPU, and various other resources.
- Operating System Shell
It is the outer part of an operating system and it is responsible of interacting with the operating system.
The shell is the outermost layer of the operating system. Shells incorporate a programming language to control processes and files, as well as to start and control other programs.
In other words, in computing, a shell is a computer program which exposes an operating system’s services to a human user or other programs. In general, operating system shells use either a command-line interface (CLI) or graphical user interface (GUI), depending on a computer’s role and particular operation. It is named a shell because it is the outermost layer around the operating system
Graphical shells place a low burden on beginning computer users, and are characterized as being easy to use. Since they also come with certain disadvantages, most Graphical User Interface (GUI)enabled operating systems also provide Command Line Interface (CLI) shells.
The shell manages the interaction between you and the operating system by prompting you for input, interpreting that input for the operating system, and then handling any resulting output from the operating system.
Shells provide a way for you (computer user) to communicate with the operating system. This communication is carried out either interactively (input from the keyboard is acted upon immediately) or as a shell script. A shell script is a sequence of shell and operating system commands that is stored in a file.
When you log in to the system, the system locates the name of a shell program to execute. After it is executed, the shell displays a command prompt. This prompt is usually a $ (dollar sign). When you type a command at the prompt and press the Enter key, the shell evaluates the command and attempts to carry it out. Depending on your command instructions, the shell writes the command output to the screen or redirects the output. It then returns the command prompt and waits for you to type another command.
Below is a picture and example of what a Terminal window with an open shell.
- Shell concepts
Before you start working with the different types of shells available for AIXyou need to understand basic terminology and features.
- Korn shell
The Korn shell (ksh command) is backwardly compatible with the Bourne shell (bsh command) and contains most of the Bourne shell features as well as several of the best features of the C shell.
- Bourne shell
The Bourne shell is an interactive command interpreter and command programming language.
- C shell
The C shell is an interactive command interpreter and a command programming language. It uses syntax that is similar to the C programming language.
Difference Between Operating System Kernel and
- A shell is basically an interface present between the kernel and the user.
- A shell is a CLI (command-line interpreter).
- A shell allows all of its users to establish communication with the kernel.
- Korn Shell, C Shell, Bourne Shell, etc., are types of shells
- We can use shell commands such as mkdir, ls, and many more for requesting the completion of the specific operation to the operating system (OS).
- A shell performs memory management.
- The shell forms the outer layer of the operating system.
- A shell interacts with all of its users and then interprets into a language that is understandable by the machine.
- A kernel is the very inner core of a typical OS.
- A kernel is a type of low-level program that has its interfacing with the hardware on top of which all the applications run (disks, RAM, CPU, etc.).
- A kernel functions to control all the tasks that come with a system.
- Hybrid kernel, Micro-kernel, Monolithic kernel, etc., are types of kernels
- A kernel carries out the commands on a group of various files by specifying the pattern that can match.
- A kernel performs process management.
- The kernel forms the inner layer of the operating system.
- A kernel interacts with the hardware directly because it accepts the machine-understandable language from the available shell.