Skip to content

A comprehensive desktop application for visualizing and simulating virtual memory management concepts, built with html css and javascript. This educational tool provides interactive visualizations of paging, segmentation, page replacement algorithms, and memory fragmentation, making complex operating system concepts accessible and engaging.

Notifications You must be signed in to change notification settings

ku-heli2006/Virtual_memory_tool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Virtual Memory Optimization Tool

A comprehensive web-based simulation tool for visualizing and understanding virtual memory management concepts including paging, segmentation, page replacement algorithms, and memory fragmentation.

Features

1. Paging Simulation

  • Visual representation of physical and virtual memory
  • Real-time page table updates
  • Page fault visualization with animations
  • Demand paging simulation

2. Page Replacement Algorithms

  • FIFO (First In First Out)
  • LRU (Least Recently Used)
  • Optimal Algorithm
  • Clock Algorithm (Second Chance)

3. Segmentation Visualization

  • Interactive segment allocation
  • Segment table representation
  • Address translation demonstration

4. Fragmentation Simulation

  • Internal fragmentation visualization
  • External fragmentation demonstration
  • Fragmentation metrics calculation

5. Performance Analysis

  • Real-time statistics (page faults, hit ratio, memory utilization)
  • Comparative algorithm performance charts
  • Historical performance tracking

How to Use

Basic Setup

  1. Open index.html in a modern web browser
  2. Configure simulation parameters:
    • Physical Memory Size (number of frames)
    • Virtual Memory Size (number of pages)
    • Page Size (in KB)
    • Reference String (comma-separated page numbers)

Running Simulations

  1. Quick Simulation: Click "Run Simulation" to automatically process all references
  2. Step-by-Step: Click "Step Through" to manually process one reference at a time
  3. Algorithm Comparison: Change the algorithm and compare performance metrics

Customization

  • Random Input: Generate random reference strings
  • Segmentation: Add custom memory segments
  • Fragmentation: Switch between internal/external fragmentation modes

Educational Value

This tool helps understand:

  • How virtual memory systems work
  • Different page replacement strategies
  • Impact of fragmentation on memory utilization
  • Trade-offs between various algorithms
  • Real-world memory management scenarios

Technical Implementation

Frontend

  • HTML5/CSS3: Responsive design with modern UI
  • JavaScript (ES6+): Core simulation logic
  • Chart.js: Performance visualization
  • Font Awesome: Icon system

Key Classes

  • VirtualMemorySimulator: Main simulation controller
  • PageReplacementAlgorithms: Algorithm implementations
  • Interactive visualization components

Prerequisites

  • Modern web browser (Chrome, Firefox, Edge, Safari)
  • No additional installations required

Files Structure

About

A comprehensive desktop application for visualizing and simulating virtual memory management concepts, built with html css and javascript. This educational tool provides interactive visualizations of paging, segmentation, page replacement algorithms, and memory fragmentation, making complex operating system concepts accessible and engaging.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published