0

FCFS、SJF、MLFQ の実装を任されました。私は現在 FCFS に取り組もうとしています。アルゴリズムの使い方がよくわかりました。私が立ち往生している部分は、このアルゴリズムを実装する C++ プログラムを作成することです。特定の CPU バーストと、実装する必要がある I/O 時間が与えられます。8 つのプロセスがあり、各プロセスには複数の CPU バーストと I/O 時間があります。このように見えます。

P1 {4,24,5,73,3,31,5,27,4,33,6,43,4,64,5,19,2}
P2 {18,31,19,35,11,42,18,43,19,47,18,43,17,51,19,32,10}
P3 {6,18,4,21,7,19,4,16,5,29,7,21,8,22,6,24,5}
P4 {17,42,19,55,20,54,17,52,15,67,12,72,15,66,14}
P5 {5,81,4,82,5,71,3,61,5,62,4,51,3,77,4,61,3,42,5}
P6 {10,35,12,41,14,33,11,32,15,41,13,29,11}
P7 {21,51,23,53,24,61,22,31,21,43,20}
P8 {11,52,14,42,15,31,17,21,16,43,12,31,13,32,15}</code>

the order is cpu burst, i/o time, cpu burst, i/o, etc...

Here is how the output should be.

Current Time: 0

Now Running: P1

Ready Queue:   Process    Burst
                  P2        18
                  P3         6
                  P4        17
                  P5         5
                  P6        10
                  P7        21
                  P8        11
Now In I/O:    Process    Remaining time
                [empty]

Current Time: 4

Now running: P2

Ready queue:   Process    Burst
                P3          6
                P4          17
                P5          5
                P6          10
                P7          21
                P8          11

Now in I/O:    Process    Remaining time
                 P1         24

これを達成するには、二重にリンクされたリストを使用する必要があると考えています。プログラムは、コンテキスト スイッチがある場合にのみ、この情報を出力することになっています。どこから始めるべきか正確にはわかりません。頭に浮かぶのは、構造体またはクラスを作成することだけです。でもよくわからない

4

0 に答える 0