Creating a child process

Assignment Help Operating System
Reference no: EM13498673

Part 1 - Creating a Child Process

The first task is to modify the main() function from the sample code provided so that a child process is forked and executes the command specified by the user. This will require parsing what the user has entered into separate tokens and storing the tokens in an array of character strings (args in the code provided). For example if the user enters the command ps -ael at th osh> prompt, the values stored in the args array are:

• args[0] = "ps"
• args[1] = "-ael"
• args[2] =NULL

This args array will be passed to the execvp() function, which has the following prototype: execvp(char *command, char *params[]);

Here, command represents the command to be performed and params stores the parameters to this command. For this project, the execvp() function should be invoked as execvp(args[0], args). Be sure to check whether the user included an & to determine whether or not the parent process is to wait for the child to exit.

Part 2 - Creating a History Feature

The next task is to modify the shell interface program so that is provides a history feature that allows the user to access the most recently entered commands. The user will be able to access up to 10 commands by using the feature. The commands will be consecutively numbered starting at 1, and the numbering will continue past 10. For example, if the user has entered 35 commands, the 10 most recent command will be numbered 26-35. The user will be able to list the command history by entering the command "history" at the osh> prompt. As an example:

Your program should support two techniques for retrieving commands from the command history:

1. When the user enters !!, the most recent command in the history is executed.
2. When the user enters a single ! followed by an integer N, the Nth command in the history is executed.

The program should also manage basic error handling. If there are no commands in the history, entering !! should result in a message "No commands in history." If there is no command corresponding to the number entered with the single !, the program should output "No such command in history."

Reference no: EM13498673

Questions Cloud

What does the term unwarrantable jurisdiction mean : What does the term unwarrantable jurisdiction mean and how does it relate to the relationship between England and colonist?
Explain how many minutes is required for sunlight to travel : How many minutes is required for sunlight to travel from the Sun to Earth. (Assume the Sun is 93,000,000 miles from Earth and that sunlight travels at 1.86 x 105 miles per second.) how do you work this to solve.
Short-comings of the capitalist price and market system : Describe how the price system answers the five fundamental questions of economics, and discuss at least two of the short-comings of the capitalist price and market system.
Explain what form is the product in the clear filtrate : In what form is the product (the chlorobenzoic acid) in the clear filtrate after the brown precipitate has been removed. After the addition of the hydrochloric acid
Creating a child process : Modify the shell interface program so that is provides a history feature that allows the user to access the most recently entered commands.
Explain the most probable mass of the object : Suppose that a series of measurements have shown that the mean mass of an object 201.3g with a standard deviation 1.3g How many significant figures are justified in the mean and how would you report the most probable mass of the object. Explain
Determine the pressure inside the container : Nine grams of water are placed in a 1.99 liter pressure cooker and heated to 535oC. What is the pressure inside the container
What is the frequency of the echo : Your car horn happens to have the unusual property of emitting a pure tone at a frequency of 640. Hz. What is the frequency of the echo
Find the magnitude of the force that acts on each segment : The drawing shows a wire composed of three segments, AB, BC, and CD. There is a current of I = 2.0 A in the wire. Find the magnitude of the force that acts on each segment

Reviews

Write a Review

Operating System Questions & Answers

  Implementation of algorithms for process management

The Shortest Job Next (SJN) algorithm queues processes in a way that the ones that use the shortest CPU cycle will be selected for running rst.

  Develop a user mode command interpreter

Develop a user mode command interpreter which support list-short.

  Memory allocation in operating system

Analysis and implementation of algorithms for memory allocation in operating system, Explain First- t and best- t methods are used in memory allocation in operating systems.

  Stand alone child process

Forking the child process

  Write a multi-threaded program

Write a multi-threaded program to solve producer and consumer problem

  Marginal and average cost curves

n a competitive market place (pure competition) is it possible to continually sell your product at a price above the average cost of production.

  Simulating operating systems scheduling

Simulate the long-term scheduler, the short-term scheduler and the I/O scheduler of the computer using the First-Come-First-Serve algorithm.

  Issues with trusted platform module

Research paper discussing the issues with Trusted Platform Module (TPM)

  Threads

Explain a complication that concurrent processing adds to an operating system.

  Design and programming

Use the semaphore methods to control the concurrency of the solution

  Virtual machines

Virtual machines supported by a host operating system

  Discuss an application that benefits barrier synchronization

Discuss an application that would benefit from the use of barrier synchronization

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