Skip to content

dandrust/shell

Repository files navigation

A toy shell implementation to explore fork/exec, processes, signals, pipes, and job control.

To compile:

gcc process.c job.c parse.c background.c execute.c builtin.c main.c

The shell includes a basic REPL that forks and execs the program provided at the prompt, supports pipes, and supports job control.

An infinite loop that parses command line input (implemented in parse.c) and executes (implemented in execute.c) lays the foundation of the shell in main.c's main function. Builtin functions are implemented in builtin.c, and code related to job control and background job tracking is included in background.c. At it's core, the shell operates on processes - individual executables to be exec'd -- and jobs (which could inlcude a pipeline of processes). Those are implemented in process.c and job.c, respectively

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages