私は次のように6つのプロセスを持っています:
-- P0 --
arrival time = 0
burst time = 10
-- P1 --
arrival time = 110
burst time = 210
-- P2 --
arrival time = 130
burst time = 70
-- P3 --
arrival time = 130
burst time = 70
-- P4 --
arrival time = 130
burst time = 90
-- P5 --
arrival time = 130
burst time = 50
各プロセスの待機時間と所要時間を計算するにはどうすればよいですか?システムはプリエンプティブではない必要があります(プロセスは完了するまでCPUを取得します)。また、このシステムには4つの論理プロセッサがあります。
systemTimeが現在のシステムの稼働時間であり、arrivalTimeがそれに相対的であると想定します。つまり、arrivalTimeが0の場合は、システムが開始したときにプロセスが開始されることを意味します。到着時間130は、システムの起動後130ユニットでプロセスが開始されることを意味します。
これは正しいですか:waitingTime = (systemTime - arrivalTime)
?
これを考える私の理由はsystemTime - arrivalTime
、プロセスがfcfsキューでCPUを使用するのを待っている時間です(またはこれは間違っていますか?)
そして、ターンアラウンドタイムについては、次のようなことを考えてturnaroundTime = burstTime + waitingTime
いました。待機時間とバースト時間は、プロセスを完了するための合計時間である必要があるためです。もう一度、私の直感が正しいかどうかはわかりませんが。
ありとあらゆる読み方をいただければ幸いです。