The Shell
The Unix command interpreters run as ordinary user processes with no special privilege.
This was novel at the time Unix was created: other systems viewed the command interpreter as a trusted part of the OS.
Users may select from a range of interpreter programs available, or even write their own (to add to the confusion).
csh, sh, ksh, tcsh, bash: choose your flavor...or use perl.
Shells use fork/exec/exit/wait to execute commands composed of program filenames, args, and I/O redirection symbols.
Shells are general enough to run files of commands (scripts) for more complex tasks, e.g., by redirecting shell’s stdin.
Shell’s behavior is guided by environment variables.