https://github.com/gopikrsmscs/os-file-system
This repository hosts a complete Java implementation of a os file system, developed from scratch for educational purposes.
https://github.com/gopikrsmscs/os-file-system
java operating-system osinternals
Last synced: 9 months ago
JSON representation
This repository hosts a complete Java implementation of a os file system, developed from scratch for educational purposes.
- Host: GitHub
- URL: https://github.com/gopikrsmscs/os-file-system
- Owner: gopikrsmscs
- License: mit
- Created: 2024-03-24T01:51:46.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-24T02:06:26.000Z (about 2 years ago)
- Last Synced: 2025-06-24T15:06:44.509Z (9 months ago)
- Topics: java, operating-system, osinternals
- Language: Java
- Homepage:
- Size: 12.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# os-file-system
OS File System is an open-source Java project aimed at implementing basic file system operations. It provides a simple and easy-to-use interface for creating, formatting, saving, and opening file systems, as well as performing file management tasks like listing, removing, and renaming files. Additionally, it supports functionalities such as putting external files into the system, getting external files from the system, and changing usernames.
## Features
- **Createfs**: Create a file system with a specified number of blocks.
- **Formatfs**: Format the file system with a maximum number of files and DBP entries.
- **Savefs**: Save the file system to a specified file.
- **Openfs**: Open an existing file system from a specified file.
- **List**: List all files in the file system.
- **Remove**: Remove a file from the file system.
- **Rename**: Rename a file in the file system.
- **Put External File**: Put an external file into the file system.
- **Get External File**: Get an external file from the file system.
- **Change username**: Change the username of a file.
- **Link/Unlink**: (This operation is not implemented.)
## Usage
To use this project, follow these steps:
1. Compile the `FileSystem.java` file using any Java compiler:
```bash
javac FileSystem.java
```
```bash
java FileSystem
```
2. Follow the on-screen instructions to perform desired file system operations.
## Contributing
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
1. Fork the repository.
2. Create your feature branch: git checkout -b feature/my-feature.
3. Commit your changes: git commit -am 'Add some feature'.
4. Push to the branch: git push origin feature/my-feature.
5. Submit a pull request.
## Author
This project is authored by Gopikrishna Pavuluri.
## License
This project is licensed under the [MIT License](/LICENSE).