Write a c program that implements a shell

Assignment Help Basic Computer Science
Reference no: EM13548737

Write a C program that implements a shell. The shell program should operate in the following basic way: when you type in a command (in response to its prompt), the shell creates a child process that executes the command you entered and then prompts for more user input when it has finished.


The shell program is essentially a loop that performs the following steps:
1. Print the command prompt.
2. Read the command line (e.g, "ls -a -l").
3. Parse the command line into tokens consisting of the executable file name ("ls") and its
arguments ("-a" and "-l").
4. Fork a child process, which executes the command.
5. Wait for the child to terminate.
When parsing the command line, store the tokens in an argument vector, say argvec[], which is an
array of pointers to strings. For example, if the command line is "ls -a -l" then:
argvec[0] = "ls",
argvec[1] = "-a", and
argvec[2] = "-l".
Make sure to terminate the array of pointers by a NULL pointer - i.e.:
argvec[3] = NULL.

After parsing the command, fork a child process that will then perform an execvp() to execute the
command. Pass the argument vector that you built as an argument to function execvp()

In shells (such as tcsh or bash) the history command is a builtin shell command - it is implemented
within the shell itself and does not correspond to a separate system program. Enhance your shell program
by adding a history feature. Number the commands in the history list according to its order of occurrence since the beginning when your shell program was invoked.



1. Your C source code
2. A makefile for source code
3. A README file describing program

Reference no: EM13548737

Questions Cloud

What was the speed of the cart just before it hit the spring : A 12 kg runaway grocery cart runs into a spring with spring constant 240 N/m and compresses it by 60 cm. What was the speed of the cart just before it hit the spring?
Obtain the index of refraction of the substance : A laser beam is traveling through an unknown substance. When it encounters a boundary with air, the angle of reflection is 22.4° and the angle of refraction is 40.0°. What is the index of refraction of the substance
Explain the same sample of nitrogen to nitrogen dioxide : A sample of 15 g of nitrogen can be combined with 17.142857 g of oxygen to form nitric oxide gas (NO). What mass of oxygen would be required to convert the same sample of nitrogen to nitrogen dioxide (NO2) instead
The radar system transmits : The radar system transmits 18.75 GHz from a circular antenna with a diameter 2.3m. at a range of 6.2km, what is the smallest distance that two speedboats can be from each other and still be resolved as two objects?
Write a c program that implements a shell : Write a C program that implements a shell.
Explain aluminum has many different isotopes : Aluminum has many different isotopes. What percentage of the mass of 26Al is attributable to its neutrons
Determine whether calvin should make or buy ekrobs : Prepare an incremental analysis to determine whether Calvin should make or buy ekrobs.
Determine the angle that locates the first minimum : high-frequency sound waves exhibit less diffraction than low-frequency sound waves do. Determine the angle that locates the first minimum to either side of the central maximum in the diffraction pattern for the sound
Explain what percentage of the mass of 26al is attributable : Aluminum has many different isotopes. What percentage of the mass of 26Al is attributable to its neutrons

Reviews

Write a Review

Basic Computer Science Questions & Answers

  Sequence diagram for field officer

Draw a sequence diagram for the following use case. Draw only the first five messages sent. The FieldOfficer activates the "Report Emergency" function of her terminal. The system responds by presenting a form to the officer.

  Examine how coppa and cipa are similar and how they are

write a three to five 3-5 page paper in which you describe the main compliancy requirements and the protected

  The number of bits per track is constant

Design a rotating disk where the number of bits per track is constant

  Mathematical equations using latex

To typeset documents that include titles, sections, lists, emphasis, verbatim environments, footnotes, tables of contents, and mathematical equations using LATEX

  Translate the first instruction into english

Suppose the memory cells at addresses 00 through 03 in the machine described in Appendix C contain the following bit patterns.

  Ability to apply the concepts

The goal of this project is for you to demonstrate your ability to apply the concepts

  Explain how rsa algorithm works

Use the example to illustrate how RSA algorithm works. Deciper following ciphertext, that was enciphered using Caesar cipher.

  Compare the differences between mac and h-mac

Compare the differences between MAC and H-MAC.

  The computerization of health records

A health care issue that has been in the news lately is the computerization of health records. This probability is being approached cautiously because of sensitive privacy and security concerns, among others.

  Which server type would you most likely need to deply

Which server type would you most likely need to deply at each physical location in a WAN?

  What is not a problem associated with poor data management

What is not a problem associated with poor data management? a. essential data missing from the database b. inability to locate data c. system down time d. inconsistencies in representations

  Draw a circuit which implements a 1-to-2 decoder

Q1. Write the truth table for a 1-to-2 decoder. Draw a circuit which implements a 1-to-2 decoder using AND gates, OR gates and NOT gates only.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd