https://github.com/awahba1/operating-system
A simulation of real operating system developed using Java.
https://github.com/awahba1/operating-system
java operating-system
Last synced: about 1 year ago
JSON representation
A simulation of real operating system developed using Java.
- Host: GitHub
- URL: https://github.com/awahba1/operating-system
- Owner: AWahba1
- Created: 2022-12-04T20:51:31.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-12-04T21:22:22.000Z (over 3 years ago)
- Last Synced: 2025-01-11T07:12:43.889Z (about 1 year ago)
- Topics: java, operating-system
- Language: Java
- Homepage:
- Size: 22.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Description
The project was a simulation of a real operating system, where OS manages resources and processes. Java was the programming language to develop this project.
# Features & Functionalities
- Interpreter that reads a text file representing a program and starts executing it and handles common instructions like printing a variable, assigning a variable and reading/writing to a file.
- Mutexes to ensure mutual exclusion over the critical resources.
- Scheduler that schedule processes in the system to ensure all processes gets a chance to execute. Scheduling algorthim used was Round Robin.
- System calls that reads and writes data from disk and memory
- Memory that's shared by all processes to store program code and variables that processes need to complete execution. In case memory doesn't fit, a LIFO (Last In - First Out) replacement algorthim was used.
- A Process Control Block (PCB) for each process to store all information about a process including process ID and state.
# Contributors
- Ahmed Wahba
- Omar Sherif
- Karim Hesham
- Abdelrahman Ahmed