Skip to content
/ go-smo Public

Simulation modeling application for queueing systems. Coursework on "Queuing systems" course in SPbPU

Notifications You must be signed in to change notification settings

aaletov/go-smo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

go-smo

Notes

Set manager

We have apropriate information about the system only at the moment of newest request, because no further reqs could be generated before it. Suppose at 1'st iteration we have 3 requests generated with genTime x1 < x2 < x3. Then, at the next iteration reqs would have genTimes x1 + a, x2 + b, x3 + c. If a < x2 - x1 then pushing x2 in buffer at 1'st iteration would be incorrect, because request x1 + a comes before x2 (but we know it only on second iteration). SetManager should consider this condition and operate only with the newest request

Therefore, SetManager should contain queue with generation time priority. On Collect() manager collects new requests from sources, on ToBuffer() manager pushes all requests for which there are older requests from other sources. Suppose we have buffer with state:

[
  {"SourceNumber": 1, "GenTime": 1},
  {"SourceNumber": 2, "GenTime": 2}, 
  {"SourceNumber": 3, "GenTime": 3}, 
]

Then, we should push 1'st request into buffer, because no requests could be generated before it, but we can't push 2'nd requests, because source 1 could generate next request with GenTime == 1.5.

About

Simulation modeling application for queueing systems. Coursework on "Queuing systems" course in SPbPU

Resources

Stars

Watchers

Forks