1 / 16

Understanding Queuing Theory and Simulation in Operating Systems

In this lab assignment for COP 4600, students will explore the principles of queuing theory and simulation as applied to operating systems. The assignment focuses on simulating a single queue/single server system using a FIFO discipline. Students will analyze system performance and compare empirical results with analytical models, while also learning about factors such as arrival rate (λ), service rate (μ), and utilization (ρ). Key topics include random variables, probabilistic processes, and Little's Law, providing a solid foundation for understanding queuing dynamics.

ide
Télécharger la présentation

Understanding Queuing Theory and Simulation in Operating Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lab Assignment 1COP 4600: Operating Systems Principles Dr. Sumi Helal Professor Computer & Information Science & Engineering Department University of Florida, Gainesville, FL 32611 helal@cise.ufl.edu

  2. Lecture Overview • Go over Lab Assignment 1, one more time. • Queuing Theory 101 • Simulation 101

  3. Assignment • Simulate a single queue/single server system, with a FIFO queuing discipline • Report on the performance of the system • Compare with analytic models. • λ = arrival rate, follows an arrival process • μ = service rate, follows a service process • ρ = utilization = λ/μ μ λ

  4. Queuing Theory 101 • Must already know: • Random Variables • Basics of Probability • Today, we will study & learn: • Probabilistic Processes • Little Law • M/M/1 analytic models

  5. Exponential Process • Suitable for describing time between successive events (e.g., arrival, service). T is a continuous Random Number

  6. Example • Assume average time between arrival (or average inter-arrival time) is 45 sec. • Question: what is the prob. that inter-arrival time is > 60 sec.? • Answer:

  7. Example

  8. Poisson Process • Poisson is suitable for describing arrivals or occurrence of events. • Describes prob. of n arrivals in any time interval. • If arrival process follows Poisson distribution, then the random variable representing inter-arrival time must follow the Exponential distribution.

  9. Quiz • To make sure you follow so far, answer the following question: • Prove that the probability that inter-arrival times are greater than the average inter-arrival time (that is > 1/λ), is 0.37, for any exponential distribution.

  10. Definitions • W = Average job wait time in the queue • L = Average queue length • N = Throughput (number of jobs completed per unit time)

  11. 3 3 Time in System (W) 2 2 1 1 1 2 3 Job# (N) Little’s Law: • Proof: • Shaded area is identical (=9 in example) # in System (L) 1 2 3 4 5 6 7 Time (T)

  12. Analytic Solutions • Utilizing Little Law • Utilization: • L: • W: • Quiz to check if you understand the implication of ρ • Calculate L and W for ρ=0.09 (system under-utilized) • Calculate the same for ρ=0.90 (system highly utilized) • Calculate the same for ρ=0.999 (system over-utilized)

  13. Effect of ρ – A Reality that Must be considered in any Operating System Design

  14. Simulation 101 • You have two independent events • At end of processing an independent event, you must re-generate it. • All future events generated should be put in an event list. • Simulation loop simply finds the next event that will take place sooner in the future; remove it & process it. And yes, advance the clock to that selected next event.

  15. Simulation 101 • At each new iteration in the simulation loop you check for exist criterion. • You most update your counters and statistics every time: • The Clock is changed • A new job enters the system • A job exits the system • When the simulation loop exits.

  16. Simulation 101 • Generating exponentially distributed random variables: • Use inverse inverse transform sampling as follows: • X is RV with standard Uniform distribution [0,1], then follows the exponential distribution with average arrival rate .

More Related