Tiny Shell
Tiny Shell is a tiny shell Unix program created in C for ECE 373 Software Intensive Engineering. It supports Job Control, and Signal Interrupts.
Development
I worked on this project with a friend of mine, Joshua Howell. When we were initially given this project, we were only given header files with prototype functions, helper functions and structs. We need to fill in 7 functions:
- eval - Main routine that parses and interprets the command line.
- builtin_cmd - Recognizes and interprets the built-in commands: quit, fg, bg, and jobs.
- do_bgfg - Implements the bg and fg built-in commands.
- waitfg - Waits for a foreground job to complete.
- sigchld_handler - Catches SIGCHILD signals.
- sigint_handler - Catches SIGINT (ctrl-c) signals.
- sigtstp_handler - Catches SIGTSTP (ctrl-z) signals.