An open API service indexing awesome lists of open source software.

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.

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