Skip to content

xorz57/Shell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Shell

This is a shell implemented in C as a university assignment for an operating systems course. While the assignment received a perfect score, there are areas where improvements can be made.

Features

  • Basic shell functionalities such as executing commands, handling arguments, and managing processes.
  • Pipeline implementation for command chaining.
  • Debug messages for troubleshooting (optional).
  • Single-file implementation due to assignment constraints.

Areas for Improvement

  • Pipeline Implementation: The pipeline implementation could be optimized for better performance and reliability. There were some rare cases where the pipeline got stuck, unlike the behavior of the Bash shell.
  • Function Modularity: Some functions could be broken down into smaller, more modular components for better readability and maintainability.
  • Debug Messages: While debug messages were provided, they could be enhanced by redirecting them to a log file for better organization and analysis.

Code Review

This shell implementation was reviewed on Code Review. Check out the feedback and suggestions provided there.

Usage

Compilation

gcc Shell.c -o Shell

Execution

./Shell

License

This project is licensed under the MIT License.

About

Shell written in C99

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Languages