<标题>ESE 224 Spring 2015 Course Project Description
<标题>Over the course of this semester, you learn various coding concepts in C++ that are applicable to programming in general. This class project is designed to show you how many of these concepts can be used together in a single application and will test your familiarity with programming these concepts. This project is intended for 2-4 people groups.
We will provide a rigid skeleton guide which you MUST follow, but how to implement components in the skeleton is your decision. This means that any public method signature should not be modified (its return type, name, and parameters). However, you are free to remove, add, or edit any private methods you feel necessary. The private methods are included as a guideline to structuring and organizing your code. The private variables should also not be modified, as much of the public functions rely on these private variables. This means we (i.e
<标题>Assignment 3 (7.5 marks)
<标题>Due 11:59pm Sunday May 17, 2015.
<标题>The aim of this assignment is to write a simple shell interpreter demonstrating you knowledge of process
control. In addition to this you will get some experience with file system API’s.
Task One (4.5 marks)
<标题>You first task is to write a simple shell interpreter, which executes commands. You shell interpreter should
display a $ prompt and wait for user input.
<标题>You shell interpreter is to be a little simplistic, all you can do is execute commands. If a command cannot be
found you should display a suitable error message. When executing a command the shell interpreter should
<标题>wait until the command terminates. To implement command execution simply use the function call fork()
<标题>and exec(). Note that there are many variations on the exec() function call. To block the shell, you
should use the wait() (or similar) function call.
<标题>At the end of this step you should be able to do this:
<标题>./foobar does not exist.