Question: Writing a Simple Shell A shell is a program that takes your commands from the keyboard and passes them to the operating system. Typically, a

Writing a Simple Shell

A shell is a program that takes your commands from the keyboard and passes them to the operating system. Typically, a shell presents a prompt, waiting for the user to enter a command and its parameters. The shell reads the command and parameters, and uses fork to create a child, a duplicate of itself, another shell. The child shell executes the command and exits while the parent waits for the child to finish like the following:

 while ( 1 ) { //repeat forever type_prompt(); //display prompt on screen read_command ( command, parameters ); // read input from terminal if ( fork() != 0 ) // parent wait ( NULL ); //wait for child else{ execve ( commamd, parameters, 0 ); // execute command } } 

Work to do:

  1. Write a simple shell like the above but it contains enough code that it actually works so you can test it. For simplicity, you may assume that all commands are in the directory /bin.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!