Skip to content

OS Visualizer is an educational tool that visually demonstrates how core Operating System algorithms work. It helps students and enthusiasts understand complex OS concepts through interactive simulations and clean UI-based representations.

License

Notifications You must be signed in to change notification settings

AmirShakibafar/OS-Visualizer

Repository files navigation

OS Visualizer

Welcome to OS Visualizer 🖥️🔍

UI Preview

Dive into the inner workings of operating systems with OS Visualizer, an interactive educational tool designed to demystify complex OS algorithms through dynamic, step-by-step simulations. Whether you're a student grappling with textbook concepts, a developer reinforcing foundational knowledge, or an educator seeking engaging teaching aids, this project brings CPU scheduling, memory allocation, process synchronization, disk management, and more to life.

By transforming abstract theory into visual, real-time demonstrations, OS Visualizer lets you see how algorithms like Cpu Schedualing and Memory Allocation Algorithms operate under the hood. Adjust parameters, track resource allocation, and observe outcomes—all within an intuitive interface built to deepen your understanding through hands-on exploration.

Key Features:

Interactive Simulations: Manipulate inputs and visualize algorithmic behavior.

Real-Time Insights: Watch processes and resources adapt dynamically.

Perfect for classrooms, self-study, or quick reference, OS Visualizer bridges the gap between concept and practice. Start exploring to unravel the magic behind operating systems! 🚀

Features

  • Memory Management Algorithms:

    • First Fit
    • Next Fit
    • Best Fit
    • Worst Fit
  • CPU Scheduling Algorithms:

    • FCFS (First Come, First Served)
    • SPN (Shortest Process Next)
    • SRTF (Shortest Remaining Time First)
    • RR (Round Robin)
      • Set quantum for Round Robin (RR)
    • HRRN (Highest Response Ratio Next)
  • Manually entering process data.

  • Create random process

  • Configure context switch for CPU Scheduling Algorithms

  • Assigning different color for each process

  • User guide

Technologies Used

  • Frontend: HTML, CSS, JavaScript, Vitest

Setup

To set up the project locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/AmirShakibafar/OS-Visualizer.git
  2. Navigate to the project directory:

    cd OS-Visualizer
  3. Open index.html in your preferred browser to view the visualizations.

Usage

  1. Open index.html in your preferred browser to view the visualizations.
  2. Read user guide
  3. Enter the inputs
  4. Click the play button
  5. And enjoy the show

UI Preview

Contributing

If you'd like to contribute to this project, feel free to fork the repository, create a branch, and submit a pull request. Please make sure to follow the our project's coding standards.

License

This project is licensed under the MIT License - see the LICENSE file for details.


About

OS Visualizer is an educational tool that visually demonstrates how core Operating System algorithms work. It helps students and enthusiasts understand complex OS concepts through interactive simulations and clean UI-based representations.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •