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

  Identifies the cost of computer

identifies the cost of computer components to configure a computer system (including all peripheral devices where needed) for use in one of the following four situations:

  Input devices

Compare how the gestures data is generated and represented for interpretation in each of the following input devices. In your comparison, consider the data formats (radio waves, electrical signal, sound, etc.), device drivers, operating systems suppo..

  Cores on computer systems

Assignment : Cores on Computer Systems:  Differentiate between multiprocessor systems and many-core systems in terms of power efficiency, cost benefit analysis, instructions processing efficiency, and packaging form factors.

  Prepare an annual budget in an excel spreadsheet

Prepare working solutions in Excel that will manage the annual budget

  Write a research paper in relation to a software design

Research paper in relation to a Software Design related topic

  Describe the forest, domain, ou, and trust configuration

Describe the forest, domain, OU, and trust configuration for Bluesky. Include a chart or diagram of the current configuration. Currently Bluesky has a single domain and default OU structure.

  Construct a truth table for the boolean expression

Construct a truth table for the Boolean expressions ABC + A'B'C' ABC + AB'C' + A'B'C' A(BC' + B'C)

  Evaluate the cost of materials

Evaluate the cost of materials

  The marie simulator

Depending on how comfortable you are with using the MARIE simulator after reading

  What is the main advantage of using master pages

What is the main advantage of using master pages. Explain the purpose and advantage of using styles.

  Describe the three fundamental models of distributed systems

Explain the two approaches to packet delivery by the network layer in Distributed Systems. Describe the three fundamental models of Distributed Systems

  Distinguish between caching and buffering

Distinguish between caching and buffering The failure model defines the ways in which failure may occur in order to provide an understanding of the effects of failure. Give one type of failure with a brief description of the failure

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