This is a virtual file system (VFS) written entirely in C#.
This project was developed by three friends. We divided the project into three main parts, each in a separate file. Responsibilities are documented in DivisionGuide.md.
File: Definitions.cs
In this part we define the objects needed for the VFS. There are four main types:
UserNodeDirectoryFile
Both Directory and File inherit from Node.
File: Commands.cs
Here we implement several Linux-like terminal commands as methods.
There are 23 methods; the main methods are public and helper methods are private.
File: Program.cs
The program is the engine that receives input and safely invokes methods to respond. It receives user commands, processes them, then calls related methods. We use a large switch statement with goto labels.
The Program is divided into several parts:
- Initial values
- Lock Page
- Used for user authentication (Tip: use
skipto quickly enter the system asUser1) - Or exiting the system
- Used for user authentication (Tip: use
- System Page
- VFS functionality
lock-> goes to the Lock Page section.help-> shows an explanation of how to use the system commands.