Systems programming / C · POSIX · TCP sockets · pthreads
A shell in C.
An operating systems project connecting an interactive command line with the processes, pipes, and sockets underneath it.
View repository ↗What happens after pressing Enter?
The shell includes built-in commands, external command execution, parsing with quotes and escapes, and pipelines. The remote version uses TCP connections, client threads, and a dispatcher with a FIFO job queue and timing metadata.
Concepts explored
- Process creation and external command execution
- Pipes and standard-stream redirection
- Persistent sockets, threads, and queued jobs
Project notes
The implementation targets Linux and WSL. This is a coursework shell; its remote execution interface should be treated as a development exercise.