There are two common uses of the phrase shell:
The command shell is the command processor interface. The command processor is the program that executes operating system commands. The shell therefore, is the part of the command processor that accepts commands. After verifying that the commands are valid, the shell sends them to another part of the command processor to be executed. UNIX systems offer a choice between several different shells, the most popular being the Cshell, the Bourne shell, and the Korn shell. Each offers a somewhat different command language.
The phrase shell is also used to describe the outermost layer of a program. In this use, shell is another term for user interface. Operating systems and applications sometimes provide an alternative shell to make interaction with the program easier. For example, if the application is usually command driven, the shell might be a menu-driven system that translates the user's selections into the appropriate commands.