PIXELOKAY COMPUTER SCIENCE LAB / OPERATING SYSTEMS

Operating System Simulator

Step inside the scheduler, trace memory decisions, and test for deadlock—one decision at a time. No installation, accounts or uploads.

◷ CPU scheduling▥ Memory & paging⌁ Resource safety↧ Exportable results
◉
Systems labInteractive example · not saved
Example · unsaved
01 / PROCESS MANAGEMENT

See how the CPU chooses.

Single-core scheduling, deterministic tie-breaking and zero context-switch overhead.

CPU timeline

GANTT
Choose an algorithm and run the schedule.

Process outcomes

METRICS
PIDStartFinishWaitingTurnaroundResponse

Compare algorithms

Lower average waiting time is better for this workload, but fairness and responsiveness also matter.

Private by design · All scenarios and calculations stay in this browser. No backend or imported scripts.

A systems lab built for understanding.

01 / SCHEDULING

Watch decisions change

Compare six dispatch policies against the same workload; step through every execution tick and track waiting, turnaround and response time.

02 / MEMORY

Make fragmentation visible

Allocate and release memory partitions, then compare first, best and worst fit. Explore page faults independently.

03 / DEADLOCKS

Separate risk from certainty

Find a safe sequence with Banker's algorithm, test requests, and inspect genuine cycles in a wait-for graph.

Questions & limitations

Does this simulate a real operating system kernel?

No. It is a deterministic educational model. CPU bursts have no I/O blocking; context-switch overhead, caches, hardware interrupts and virtual memory translation are not modeled.

Is an unsafe Banker's state the same as deadlock?

No. Unsafe means the safety test cannot certify a completion sequence under declared maximum claims; a deadlock may not exist yet.

Are project files uploaded?

No. Imported scenario JSON is validated and processed in your browser. Exports are generated locally. Browser print-to-PDF uses the print dialog, not a PDF upload service.

Using Operating System Simulator

Compare textbook CPU scheduling, memory allocation, page replacement, and resource-safety models with deterministic examples and teaching diagrams.

Workflow

  1. Choose an example workload or enter jobs, memory partitions, page references, or resource allocations for the topic you want to study.
  2. Select a scheduling, allocation, or replacement policy and run the corresponding model; compare waiting/turnaround, fragmentation, or page-fault results.
  3. Use the Banker or wait-for model for resource-state examples, then export a project or diagram and review the model assumptions.

Worked example

Use a short CPU job list to compare two scheduling policies, then try a separate page-reference string under FIFO, LRU, and Optimal replacement. Keep the models separate and note that Optimal uses future references unavailable to an online policy.

Limits and data handling

These deterministic textbook models are not a real operating-system kernel or production deadlock diagnosis. CPU scheduling omits unmodeled I/O and context-switch costs. Optimal paging uses future references and is not an online policy. An unsafe Banker state does not prove deadlock; wait-for cycles are a separate single-instance model. Browser download completion remains distinct from starting a download.

Frequently asked questions

Does an unsafe Banker state mean the system is deadlocked?

No. An unsafe state means the modeled request sequence has no safe completion order; it is distinct from a deadlock cycle in the separate wait-for model.

Is Optimal page replacement an implementable online policy?

No. It uses future page references to provide a teaching comparison and is not available as an online policy.

Related tools