Simple concurrency project with threading in java of Shiraz university OS-Lab course.
This project is a simulation of an operating system (OS) with process management functionalities. It allows you to monitor running processes, manage their execution, and simulate resource usage.
The project consists of the following classes:
ProcessCheck: Monitors all currently running processes with information about their resource usage.ProcessManager: Manages a specific process by applying a given command to it (e.g., kill, suspend, sleep).VPN: Simulates a VPN process with resource usage.Mine: Simulates a mining process with resource usage.Counter: Simulates a counting process with resource usage.OS: The main class that represents the operating system. It manages the running and waiting processes, checks resource availability, and provides a command-line interface for interacting with the system.To run the project locally, follow these steps:
OS.java file, which contains the main method.The project provides a command-line interface to interact with the operating system. Upon running the program, you will be presented with a menu of options:
Choose the desired option by entering the corresponding number and follow the instructions provided by the program.
Contributions to the project are welcome! If you find any issues or have suggestions for improvements, please feel free to submit a pull request or open an issue on the GitHub repository.
This project is licensed under the MIT License.