Skip to content

Hello this repository is for learning purposes.If someone wants to learn about basic OS Concepts can use the codes in this repository to understand how certain OS concepts are applied.The code is in java but it will give you idea about what happens in OS

License

Notifications You must be signed in to change notification settings

Daksh021/OS-Concepts-implementation-in-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OS Concepts Implementation in Java

This is a simple Java project that demonstrates the implementation of basic Operating System concepts like semaphores, threads, and CPU scheduling algorithms.

The main aim is to help understand how these concepts work through hands-on coding examples.


Features

  1. Semaphores
  • Binary and counting semaphore implementations
  • Examples: Producer-Consumer problem, Reader-Writer problem
  1. Threading
  • Creating and managing threads using Thread and Runnable
  • Thread lifecycle and basic synchronization
  1. CPU Scheduling Algorithms
  • First-Come First-Serve (FCFS)
  • Shortest Job First (SJF)
  • Round Robin (RR)
  • Shows waiting time, turnaround time, and order of execution

How to Run

  1. Make sure you have Java installed (Java 8 or higher).
  2. Open the project in IntelliJ IDEA or any Java IDE.
  3. Go to the src folder and run the class you want to try.
  4. Input will be either hardcoded or asked via console depending on the program.

Why This Project?

This is mainly for students who are learning Operating Systems and want to see how the theory applies in code. It's written in a beginner-friendly way without too much complexity.

Contributions

If you have improvements or want to add more OS concepts (like deadlocks, memory management), feel free to open a pull request.

About

Hello this repository is for learning purposes.If someone wants to learn about basic OS Concepts can use the codes in this repository to understand how certain OS concepts are applied.The code is in java but it will give you idea about what happens in OS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages