- Who designed and implemented the original Unix operating system
- Who wrote the first version of the UNIX shell
- Who invented the B programming language (the direct predecessor to the C programming language)
- Who is Ken Thompson
- How does a shell work
- What is a pid and a ppid
- How to manipulate the environment of the current process
- What is the difference between a function and a system call
- How to create processes
- What are the three prototypes of main
- How does the shell use the PATH to find the programs
- How to execute another program with the execve system call
- How to suspend the execution of a process until one of its children terminates
- What is EOF / โend-of-fileโ?
๐ฑ๏ธ CLICK ME | (https://miro.com/app/board/uXjVP-i0iRk=/)
execve
exit
fork
free
getline
isatty
open
perror
stat
strcat
strchr
strcmp
strdup
strtok
va_arg
va_end
va_start
wait
gcc -Wall -Werror -Wextra -pedantic -std=gnu89 *.c -o hsh
./hsh - example fix
AUTHORS
: List of contributorsman_1_simple_shell
: Manual page of the simple shellmain.c
: Function that contains the main code; coordinates the execution of programs and alternate between interactive and non-interactive shell modesmain.h
: Header filebuiltin_checker.c
: Builtin checker filecommandPATH.c
: File that handles the PATH- `fordandReplace.c~ : File that forks
getend.c
: getenv filehelperfunc1.c
: helper functions file- `read.c~ : read file
tokenizer.c
: Tokenizer file
Wiki | (https://en.wikipedia.org/wiki/Unix_shell)
Wiki | (https://en.wikipedia.org/wiki/Thompson_shell)
Wiki | (https://en.wikipedia.org/wiki/Ken_Thompson)
Medium | (https://towardsdev.com/unix-shell-command-line-interpreter-in-a-nutshell-6bc91466a83f)
SLACK ๐๏ธโ๐จ๏ธ | (https://slack.com/signin#/signin)
๐โฎ๏ธ๐จโ๐ป๐๐ฉโ๐ป๐ณ๏ธโ๐๐งโ๐ป OKLAHOLBIES | (https://holbertontulsa.com/)
Clint Hendrickson | (https://github.com/Maitreya-today)
Mason Counts | (https://github.com/spindouken)