Skip to content

MananHere576/AlgoSphere

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AlgoSphere Logo

Interactive Visualizations for Operating System Algorithms


Streamlit App

AlgoSphere is an interactive web application meticulously crafted to simulate and visualize fundamental Operating System algorithms. Our focus lies in providing an intuitive understanding of Page Replacement Algorithms and CPU Scheduling Algorithms, making complex concepts accessible to students and professionals alike through engaging, hands-on interaction.

Built with the power of Streamlit, the versatility of Python, and the visualization prowess of Matplotlib, AlgoSphere delivers dynamic experiences and real-time feedback.

✨ Key Features

🔄 Page Replacement Algorithms

  • FIFO (First In First Out): Understand the simplicity of the first-come, first-served approach.
  • LRU (Least Recently Used): Explore how keeping track of recent usage impacts page faults.
  • Optimal: Witness the theoretical best-case scenario in page replacement.

🖥️ CPU Scheduling Algorithms

  • FCFS (First Come First Serve): Grasp the basics of non-preemptive scheduling.
  • SJF (Shortest Job First): Analyze how prioritizing shorter tasks can improve throughput.
  • RR (Round Robin): Observe fair resource allocation through time slicing.
  • Priority Scheduling: Learn how assigning priorities influences process execution.

📊 Engaging Visualizations

  • Gantt Charts: Visualize the timeline of CPU allocation for scheduling algorithms.
  • Pie Charts: Gain insights into the efficiency of page replacement algorithms through hit/miss ratios.
  • Step-by-Step Execution: Follow the logic of each algorithm in a clear, sequential manner.

🎯 Experience the Live Demo

Dive straight into the action! Explore the live deployment of AlgoSphere on Render.


🛠️ Local Installation & Setup

Ready to run AlgoSphere on your own machine? Follow these simple steps:

  1. Clone the Repository:

    git clone [https://github.com/yourusername/AlgoSphere.git](https://github.com/yourusername/AlgoSphere.git)
  2. Navigate to the Project Directory:

    cd AlgoSphere
  3. Create a Virtual Environment (Recommended):

    python3 -m venv venv
    source venv/bin/activate  # For Windows: venv\Scripts\activate
  4. Install Dependencies:

    pip install -r requirements.txt
  5. Run the Streamlit App:

    streamlit run app.py
  6. Open in Your Browser:

    Visit the app at http://localhost:8501 (or the port specified in your terminal).

⚙️ Technologies Used

  • Python: The backbone of our algorithm implementations.
  • Streamlit: For creating the interactive and user-friendly web interface.
  • Matplotlib: Generating dynamic and informative visualizations.
  • Pandas & NumPy: Powering data manipulation and algorithm support.
  • GitHub: For seamless version control and collaborative development.

🤝 Contributing

We warmly welcome contributions! Feel free to fork this repository, implement exciting impro

About

AlgoSphere is an interactive Streamlit application that visually demonstrates key Operating System algorithms, including Page Replacement (FIFO, LRU, Optimal) and CPU Scheduling (FCFS, SJF, RR, Priority). Designed for students and educators, it offers intuitive simulations, Gantt charts, and hit/miss pie charts to enhance algorithmic understing

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages