The UNIX system contains 3 main components:
- Kernel
- Shell
- Directory structure
Kernel
The kernel is the master program which manages all the resources of the computer, including:
- File systems
- Device management
- Process management
- Memory management
Shell
The shell is an interface between the user and the kernel. It is primarily a command interpreter. It accepts commands, interprets them, and then executes them. There are many different shells but Bash is the most widely used.
Common Shells
| bash | Bourne again shell |
| sh | shell |
| csh | C shell |
| tcsh | Tenex C shell (not tab-completion-extended C shell) |
| tclsh | Tcl shell |
| ksh | korn shell |
| ash | a shell |
| bsh | bourne shell (/bin/sh) |
| zsh | the Z shell |
| zsh | the jail shell |
Files and Processes
Everything in UNIX is either a file or a process. A file is a collection of data created by a user or process. A directory is also file. A process is an executing program. Every process is identified by a unique PID (process identifier).