Homework Help US logo
  • My account
  • Order now
Order Now
Homework Help

C programming language | Computer Science homework help

2 min read
Posted on 
March 19th, 2023
Home Homework Help C programming language | Computer Science homework help

I need someone who know what to do in C Language!! 

I need a basic Linux shell in C!! The shell must explicitly recognize two commands: exit and cd. 

Create a basic Linux shell in C using the algorithm described in class.  The shell must explicitly recognize two commands: exit and cd. 

1) The exit command will cause the shell to end. 

2) The cd command will change the current directory.  The directory will be a command-line argument.  For example:

cd workspace/lab1/src

will change the current directory to workplace/lab1/src.  (Unless an absolute path is specified, the path given is relative to the current directory…you don’t have to do anything about this, I’m just letting you know.)  Your shell will change the directory using the chdir() function.

3) Your shell will assume all other commands entered are programs the user wishes to run.  In this case, the shell creates a child process and uses the execvp() function to cause the child to execute the specified program with the given command-line arguments.  The parent process (the shell) must wait until the child process terminates.  Be careful here: the execvp() function will fail if provided invalid parameters.  In case of failure, the child process should print an error message and terminate.

NOTES:

* Use the function fgets() to read input.

* You must build the args array (the second parameter to execvp()) yourself.  Do not use a function to do this for you.

* Certain features you are used to using in a Linux shell will not work in your shell.  Examples include using Tab to auto-complete a command or the Up Arrow to repeat the previous command.  This is fine.  Your shell doesn’t have to do all that.

Order an Essay Now & Get These Features For Free:

Turnitin Report

Formatting

Title Page

Citation

Outline

Place an Order
Share
Tweet
Share
Tweet
Calculate the price
Pages (275 words)
$0.00
Homework Help US
Company
    Legal
      How Our Service is Used:
      Homework Help US essays are NOT intended to be forwarded as finalized work as it is only strictly meant to be used for research and study purposes. Homework Help US does not endorse or condone any type of plagiarism.
      Subscribe
      No Spam
          © 2023 Homework Help US. All rights reserved.
          Homework Help US will be listed as ‘Homework Help US’ on your bank statement.