Skip to content

About

An interactive web-based visualization tool to demonstrate Operating System memory management concepts.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 OS Memory Visualizer

An interactive web-based simulator for understanding Operating System Memory Management through visual learning and real-time simulations.

Live Demo β€’ About β€’ Highlights β€’ Features β€’ Screenshots β€’ Demo β€’ Tech Stack β€’ Getting Started β€’ Future Enhancements


🌐 Live Demo

πŸ”— https://srishtisharma07.github.io/OS-Memory-Visualizer/


πŸ“– About the Project

OS Memory Visualizer is an interactive educational web application that helps students understand Operating System Memory Management through visual simulations.

Instead of relying on static textbook diagrams, the project allows users to explore memory management concepts through interactive pages, real-time simulations, and graphical visualizations.

The application combines an introduction to core memory concepts, a simulator, and an analytics dashboard to provide an engaging learning experience for students preparing for Operating Systems coursework and technical interviews.


🌟 Highlights

  • πŸŽ“ Educational Operating System Simulator
  • 🧠 Interactive Memory Visualization
  • πŸ’» Virtual Memory Simulator
  • πŸ“Š Analytics Dashboard
  • 🌐 Deployed using GitHub Pages
  • ⚑ Built using Vanilla JavaScript
  • 🎨 Responsive User Interface

πŸš€ Features

  • 🏠 Interactive Home Page
  • πŸ“– Introduction to Memory Management Concepts
  • πŸ’» Virtual Memory Simulator
  • πŸ“„ Paging Visualization
  • πŸ—‚οΈ Segmentation Visualization
  • πŸ”„ Page Replacement Algorithm Simulation
  • πŸ“Š Analytics Dashboard
  • ⚑ Step-by-Step Execution
  • 🎨 Responsive & Modern Interface
  • 🌐 Browser-Based Application
  • πŸš€ No Installation Required

πŸ“Έ Screenshots

🏠 Home Page


πŸ“– Introduction Page


πŸ’» Simulator


πŸ“Š Analytics Dashboard


πŸŽ₯ Demo

Watch the simulator in action.

Demo Video:

demo.mp4

πŸ› οΈ Tech Stack

Technology Purpose
HTML5 Structure
CSS3 Styling & Responsive Design
JavaScript (ES6) Interactive Functionality
Git Version Control
GitHub Repository Hosting
GitHub Pages Deployment

πŸ“‚ Project Structure

OS-Memory-Visualizer/
β”‚
β”œβ”€β”€ assets/
β”‚   β”œβ”€β”€ homepage.png
β”‚   β”œβ”€β”€ introduction.png
β”‚   β”œβ”€β”€ simulator.png
β”‚   β”œβ”€β”€ analytics.png
β”‚   └── demo.mp4
β”‚
β”œβ”€β”€ index.html
β”œβ”€β”€ style.css
β”œβ”€β”€ script.js
β”‚
└── README.md

πŸš€ Getting Started

Clone the Repository

git clone https://github.com/srishtisharma07/OS-Memory-Visualizer.git

Navigate to the Project Directory

cd OS-Memory-Visualizer

Run the Application

Open the index.html file in your preferred web browser.

No additional installation or dependencies are required.


🎯 Learning Outcomes

This project demonstrates practical understanding of:

  • Operating System Memory Management
  • Virtual Memory
  • Paging
  • Segmentation
  • Page Replacement Algorithms
  • Interactive Visualization
  • DOM Manipulation
  • Frontend Development
  • Responsive UI Design

πŸ’‘ Why This Project?

Memory management is one of the most challenging topics in Operating Systems because it is usually taught using static diagrams.

This project transforms those concepts into an interactive learning experience, allowing users to visualize how memory is allocated, managed, and optimized through dynamic simulations.


πŸ“Œ Future Enhancements

  • FIFO Page Replacement Visualization
  • LRU Page Replacement Visualization
  • Optimal Page Replacement Visualization
  • First Fit, Best Fit & Worst Fit Memory Allocation
  • Performance Comparison Graphs
  • Adjustable Simulation Speed
  • Dark / Light Theme
  • Export Simulation Results
  • Additional Operating System Algorithms

🀝 Contributing

Contributions are welcome!

  1. Fork the repository.

  2. Create a new branch.

git checkout -b feature-name
  1. Commit your changes.
git commit -m "Add new feature"
  1. Push your branch.
git push origin feature-name
  1. Open a Pull Request.

πŸ‘©β€πŸ’» Author

Srishti Sharma

Computer Science Engineering Student

GitHub: https://github.com/srishtisharma07


⭐ If you found this project helpful, consider giving it a Star!

It helps others discover the project and motivates future improvements.

About

An interactive web-based visualization tool to demonstrate Operating System memory management concepts.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages