A shell is a command line interface that allows users to interact with the operating system and run commands.
- Display a prompt
- Reading user input
- Parsing the command
- Searching the command
- Creating a child process
- Executing the command
- Wait for command completion
- Displaying output
- Returning to the prompt
- Exiting the shell