README for Exercise 3

Exercise 3 - Kraken

Submitters:
Name ID E-Mail
Bart Simpson 111111111 bart@cs.huji.ac.il
Lisa Simpson 222222222 lisa@cs.huji.ac.il

Submitted Files

File Description
Kraken.java Main file
... ...
Makefile Used to compile the source and run the unit tests
README This File

Design Issues And General Remarks

  1. We had to do the following changes to the code of exercise 1: ...
  2. In this example there are no UML diagrams, so we've put the image of the kraken:

Future Requirements

  1. Question: Presume we have another command, backup <name>, which saves the system's status. The command restore <name> restores the entire system to the named backed-up version. How would you implement this command? How would you implement the restore?
    Answer:
  2. Question: How would you add symbolic links to system? All the operations should work on the linked file except delete, which should delete the link itself. Explain how you would implement cd and mirror when the link points to a directory.
    Answer:
  3. Question: Suppose we have the following command: define <mime-type> <viewer> which sets the viewer of files with that mime-type (for example, a browser fro html files). The viewer will be launched, in a separate process, when the file name is written in the shell.
    Answer:
  4. Question: Suppose we have a refesh command which synchronizes the memory file system with the actual file system. This is useful when the actual file system is manipulated while kraken is running and there are un-commited actions. Refresh should notify the user on all the un-commited actions that are no longer valid. refesh cannot be undone.
    Answer:
  5. Question: Consider actions are immediately flushed to the file system (as Windows Explorer and Konqueror are working). How would you change your application? In your answer adress all the commands listed above. (You can elaborate here...)
    Answer: