logo Use CA10RAM to get 10%* Discount.
Order Nowlogo
(5/5)

our program does not produce a binary file that contains the information stored in the program. Your program writes the data to the existing filesystem, not the binary file as stated in the specification

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

Operating Systems
***************************IMPORTANT**************************
Comments from project1: Your program does not produce a binary file that contains the information stored in the program.  Your program writes the data to the existing filesystem, not the binary file as stated in the specification.
Additionally, your code cuts off the first character of the directory name.
The code must work on putty 
   
RUFS.h is header file which is included in RUSH.cpp so as to use RUFS functions in it.
Project2-Description 
RUSH – The RU SHell 
For this project, you will build upon your binary file system from project 1(RUFS.cpp).  You will create an interactive shell that can be used to query information about the binary file system, or add to it.  Your program takes a single command line argument, the binary file to use for the shell session.  When the program starts it is located in the root directory for the binary file system, displays a prompt, waits for user input, reports on user input, and repeats until stopped by a command.  Note:  if your program is started with a file name that does not exist, your shell should create an empty binary files system that will be stored in that file.   
 
Commands the RUSH shell responds to 
pwd – Print the absolute path of the current directory from the root directory 
ls – List the names of all of the files and directories stored in the current directory, include the  type  (file, directory, etc).  Also list the name of the directory. 
cd - Change the current working directory to the specified directory 
cd .. – Change the current working directory to the previous working directory (or ignore if                              in the root director) 
mkdir - Create a directory in the current working directory 
cat - Print the contents of the text file to the screen or print out invalid file type createTextFile - Create a text file of the particular name, and prompt the user for its                                               contents 
run - For now, print out running program  
 start - For now, print out starting program  
 step - For now, print out stepping in program  
 printInfo – Print out the information produced after the quit command in Project 1 
quit – Stop the execution of the RUSH shell and return to the linux shell. 
 
Sample usage scenario (on an empty binary file called sample.bin) 
./RUSH sample.bin 
EnterCommand>ls 
Directory Name:  root  
EnterCommand>mkdir test 
EnterCommand>cd test 
EnterCommand>pwd 
Current directory is root/test 
EnterCommand>createTextFile test.t 
Enter file contents>A test file 
EnterCommand>ls 
Directory Name:  test 
Filename:  test.t Type:  Text file EnterCommand>cat test.t 
Text file contents: 
A test file 
EnterCommand>cd .. 
EnterCommand>pwd 
Current directory is root 
EnterCommand>quit 
Note:  your code must account for extraneous spaces or newlines.  If it does not handle these input cases, a grade deduction will be made.  Your program will be tested by inputting the commands listed earlier into a file, then redirected into your program via ./NAME < inputFile .  If your program does not work in this manner, you will not receive a passing grade on the project.  
Submission requirements: 
Include all of your files in a directory name project along with a Makefile that can build your program and produce the RUSH executable.   
When I unzip I expect one directory to be produced (project2) that contains your source code and a Makefile that will build your program (i.e. I will type make in that directory and it should produce a program called RUSH).  
Your submission will be tested on putty Please make sure it works on that system before you submit to D2L.  I will not accept programs that only work on your machine and not on putty. 
Rubric 
Submission requirements:  If not met, you receive a 0 for your submission.  Homework/Project 1 should have provided feedback necessary to successfully submit this project.  
Runtime:   
  To get a C on your submission it must take the input from the specification and  
produce the output from the specification (albeit it cannot be hardcoded). 
To get a B on your submission it must produce correct output for at least ½ of the  
additional test cases I will use on your program.  
  To get an A on your submission it must produce correct output for all of the  
additional test cases I will use on your program. 
Design: Can lower your grade by one letter.  Deductions are made for choices such as all of your code in one function.  Use what you have learned from previous courses and you should have no issues with this deduction. 
Comments:      Can lower your grade by one letter if your submission doesn’t contain comments on: 
    Variables – purpose, type, scope 
    Function headers (purpose, parameters, return type, called by / calls) 
    Explanation for blocks of code (inline comments) 
    Readme file for program containing name, what it is, how to use it. 
    Header for every source file containing purpose and functions / classes contained /  
where to start looking. 
Note: If you score a B or higher on this assignment, I will replace your Project 1 score with your Project 2

(5/5)
Attachments:

Expert's Answer

607 Times Downloaded

Related Questions

. Introgramming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma

. The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

. Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

. SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

. Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

607 Times Downloaded

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

expert
Um e HaniScience

965 Answers

Hire Me
expert
Muhammad Ali HaiderFinance

509 Answers

Hire Me
expert
Husnain SaeedComputer science

573 Answers

Hire Me
expert
Atharva PatilComputer science

530 Answers

Hire Me

Get Free Quote!

396 Experts Online