Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 

Repository files navigation

CPU Scheduling Simulator

Single Contiguous Memory Management

One process at a time

Partitioned Allocation Memory Management

Main memory is divided into separate memory regions or memory partitions. Each holds a separate jobs address space.
  • Static Partition - Job sizes will enter the partition
  • Dynamic Partition - Job sizes will enter the CPU to create a partition
    • Best Fit

      Allocate the smallest hole that is big enough

    • First Fit

      Allocate the first hole that is big enough

Process Management

* A process is said to be running if it currently has the CPU
* A process is said to be ready if it could use the CPU if one were available
* A process is said to be blocked if it is waiting for some event to happen before it can proceed
  • Non-preemptive - Process CAN'T be taken away by another process
    • First Come First Serve
    • Shortest Job First
    • Priority
  • Preemptive - Process CAN be taken away by another process
    • Priority
    • Shortest Remaining Time First
    • Round Robin

      Quantum time = 5

Screenshots

menu_screen menu_screen_dark single_con_input single_con_sim single_con_sim_summary dynamic_inpWindow dynamic_simWindow dynamic_simWindowb process_inpWindow process_simWindow

UI used

  • PyQt5

About

Solve and simulate using preemptive and non-preemptive algorithm based on the user’s input (Memory & Process Management).

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages