เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™: เบชเบฒเบกเบŠเบดเป‰เบ™เบ‡เปˆเบฒเบ. เบชเปˆเบงเบ™เบ—เบต 5: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™: เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš (เบเบฒเบ™เปเบ›)

เปเบ™เบฐเบ™เบณเบเปˆเบฝเบงเบเบฑเบšเบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™

Hey Habr! เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบขเบฒเบเบˆเบฐเป€เบญเบปเบฒเบกเบฒเปƒเบซเป‰เบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบŠเบธเบ”เบ‚เบญเบ‡เบšเบปเบ”เบ„เบงเบฒเบก - เบเบฒเบ™เปเบ›เบ‚เบญเบ‡เบงเบฑเบ™เบ™เบฐเบ„เบฐเบ”เบตเบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเปƒเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™เบ‚เบญเบ‡เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒ - OSTEP. เป€เบญเบเบฐเบชเบฒเบ™เบ™เบตเป‰เบชเบปเบ™เบ—เบฐเบ™เบฒเบขเปˆเบฒเบ‡เป€เบฅเบดเบเป€เบŠเบดเปˆเบ‡เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบท unix, เบ„เบท, เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™, เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ•เปˆเบฒเบ‡เป†, เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, เปเบฅเบฐเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบญเบทเปˆเบ™เป†เบ—เบตเปˆเบ›เบฐเบเบญเบšเป€เบ›เบฑเบ™ OS เบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบก. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบšเบดเปˆเบ‡เบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบšเบ‚เบญเบ‡เบงเบฑเบ”เบชเบฐเบ”เบธเบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบ™เบตเป‰ เบ—เบตเปˆเบ™เบตเป‰. เบเบฐเบฅเบธเบ™เบฒเบฎเบฑเบšเบŠเบฒเบšเบงเปˆเบฒเบเบฒเบ™เปเบ›เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบšเปเปˆเป„เบ”เป‰เป€เบ›เบฑเบ™เบกเบทเบญเบฒเบŠเบตเบš (เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เป€เบชเบฅเบต), เปเบ•เปˆเบ‚เป‰เบญเบเบซเบงเบฑเบ‡เบงเปˆเบฒเบ‚เป‰เบญเบเบˆเบฐเบฎเบฑเบเบชเบฒเบ„เบงเบฒเบกเบซเบกเบฒเบเบ—เบปเปˆเบงเป„เบ›.

เบงเบฝเบเบ‡เบฒเบ™เบซเป‰เบญเบ‡เบ—เบปเบ”เบฅเบญเบ‡เบเปˆเบฝเบงเบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบžเบปเบšเป„เบ”เป‰เบ—เบตเปˆเบ™เบตเป‰:

เบžเบฒเบเบชเปˆเบงเบ™เบญเบทเปˆเบ™เป†:

เบ—เปˆเบฒเบ™เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบเบงเบ”เป€เบšเบดเปˆเบ‡เบŠเปˆเบญเบ‡เบ—เบฒเบ‡เบ‚เบญเบ‡เบ‚เป‰เบญเบเป„เบ”เป‰เบ—เบตเปˆ เป‚เบ—เบฅเบฐเป€เบฅเบ =)

เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™: เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš

เปƒเบ™เบเบฒเบ™เบšเบฑเบ™เบเบฒเบเบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบชเบปเบ™เบ—เบฐเบ™เบฒเบเปˆเบฝเบงเบเบฑเบšเบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบซเบ™เบถเปˆเบ‡เปƒเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบกเบตเบŠเบทเปˆเบชเบฝเบ‡เบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบˆเบฐ
เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™, เป€เบŠเบดเปˆเบ‡เป€เบญเบตเป‰เบ™เบงเปˆเบฒ เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš (MLFQ). เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ MLFQ เป„เบ”เป‰เบ–เบทเบเบญเบฐเบ—เบดเบšเบฒเบเบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”เปƒเบ™เบ›เบต 1962 เป‚เบ”เบ Fernando J. Corbatรณเปƒเบ™เบฅเบฐเบšเบปเบšเบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ
เบฅเบฐเบšเบปเบšเปเบšเปˆเบ‡เบ›เบฑเบ™เป€เบงเบฅเบฒเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰ (CTSS). เบงเบฝเบเบ‡เบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰ (เบฅเบงเบกเบ—เบฑเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบžเบฒเบเบซเบผเบฑเบ‡
Multics) เบ•เปเปˆเบกเบฒเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเป€เปœเบตเบŠเบทเปˆเปƒเบซเป‰เบฅเบฒเบ‡เบงเบฑเบ™ Turing. เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบกเปˆเบ™
เบ•เปเปˆเบกเบฒเบ›เบฑเบšเบ›เบธเบ‡เปเบฅเบฐเป„เบ”เป‰เบกเบฒเบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบžเบปเบšเป€เบซเบฑเบ™เบขเบนเปˆเปƒเบ™เปเบฅเป‰เบง
เบšเบฒเบ‡เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบก.

เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆ MLFQ เบžเบฐเบเบฒเบเบฒเบกเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบเบฒเบ™เบ—เบฑเบšเบŠเป‰เบญเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™ 2 เบญเบฑเบ™.
เบ›เบฐโ€‹เบเบฒเบ™โ€‹เบ—เปเบฒโ€‹เบญเบดเบ”, เบกเบฑเบ™เบžเบฐเบเบฒเบเบฒเบกเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒ turnaround, เป€เบŠเบดเปˆเบ‡, เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบปเบ™เบ—เบฐเบ™เบฒเปƒเบ™เบเบฒเบ™เบšเบฑเบ™เบเบฒเบเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบกเปˆเบ™เบเบฒเบ™เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเป‚เบ”เบเบงเบดเบ—เบตเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบขเบนเปˆเปƒเบ™เบซเบปเบงเบ‚เบญเบ‡เปเบ–เบงเบ—เบตเปˆเบชเบธเบ”.
เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบชเบฑเป‰เบ™โ€‹. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, OS เบšเปเปˆเบฎเบนเป‰เบงเปˆเบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เบตเป‰เบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ”เบปเบ™เบ›เบฒเบ™เปƒเบ”, เปเบฅเบฐเบ™เบตเป‰
เบ„เบงเบฒเบกเบฎเบนเป‰เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบ‚เบญเบ‡ SJF, STCF algorithms. เบ—เบตเบชเบญเบ‡, MLFQ เบžเบฐเบเบฒเบเบฒเบก
เป€เบฎเบฑเบ”เปƒเบซเป‰เบฅเบฐเบšเบปเบšเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰ (เบ•เบปเบงเบขเปˆเบฒเบ‡, เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เบ—เบตเปˆเบ™เบฑเปˆเบ‡เปเบฅเบฐ
staring เบขเบนเปˆโ€‹เบซเบ™เป‰เบฒโ€‹เบˆเปโ€‹เปƒเบ™โ€‹เบ‚เบฐโ€‹เบ™เบฐโ€‹เบ—เบตเปˆโ€‹เบฅเปโ€‹เบ–เป‰เบฒโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบชเปเบฒโ€‹เป€เบฅเบฑเบ”โ€‹) เปเบฅเบฐโ€‹เบ”เบฑเปˆเบ‡โ€‹เบ™เบฑเป‰เบ™โ€‹เบเบฒเบ™โ€‹เบซเบผเบธเบ”โ€‹เบœเปˆเบญเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹
เบ•เบญเบšเบชเบฐเปœเบญเบ‡. เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, algorithms เป€เบŠเบฑเปˆเบ™ RR เบซเบผเบธเบ”เบœเปˆเบญเบ™เป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡, เปเบ•เปˆ
เบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบ—เบตเปˆเบšเปเปˆเบ”เบตเบ•เปเปˆ metric เบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒ turnaround. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ: เบงเบดเบ—เบตเบเบฒเบ™เบญเบญเบเปเบšเบš
เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบˆเบฐเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™เบšเปเปˆเบฎเบนเป‰เบซเบเบฑเบ‡เบเปˆเบฝเบงเบเบฑเบš
เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™, เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›? เบœเบนเป‰เบˆเบฑเบ”เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบชเบฒเบกเบฒเบ”เบฎเบฝเบ™เบฎเบนเป‰เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เป„เบ”เป‰เปเบ™เบงเปƒเบ”,
เบ—เบตเปˆเบกเบฑเบ™เป€เบ›เบตเบ”เบ•เบปเบงเปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบˆเบถเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ?

เบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒ: เบงเบดเบ—เบตเบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบฎเบนเป‰เบ—เบตเปˆเบชเบปเบกเบšเบนเบ™เปเบšเบš?
เบงเบดเบ—เบตเบเบฒเบ™เบญเบญเบเปเบšเบšเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบงเบฅเบฒเบ—เบตเปˆเบซเบผเบธเบ”เบœเปˆเบญเบ™เป€เบงเบฅเบฒเบ•เบญเบšเป‚เบ•เป‰
เบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เปเบšเบšเป‚เบ•เป‰เบ•เบญเบšเปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™เบซเบผเบธเบ”เบœเปˆเบญเบ™เป€เบงเบฅเบฒ turnaround เป‚เบ”เบเบšเปเปˆเบฎเบนเป‰เบ•เบปเบง
เบ„เบงเบฒเบกโ€‹เบฎเบนเป‰โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เปƒเบŠเป‰โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹?

เบซเบกเบฒเบเป€เบซเบ”: เบเบฒเบ™เบฎเบฝเบ™เบฎเบนเป‰เบˆเบฒเบเป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ

เปเบ–เบง MLFQ เป€เบ›เบฑเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบ”เบตเป€เบฅเบตเบ”เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบถเบเบญเบปเบšเบฎเบปเบก
เป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเป€เบžเบทเปˆเบญเบ„เบฒเบ”เบ„เบฐเป€เบ™เบญเบฐเบ™เบฒเบ„เบปเบ”. เบงเบดเบ—เบตเบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบกเบฑเบเบˆเบฐเป€เบ›เบฑเบ™
เบžเบปเบšเป€เบซเบฑเบ™เบขเบนเปˆเปƒเบ™ OS (เปเบฅเบฐเบซเบผเบฒเบเบชเบฒเบ‚เบฒเบญเบทเปˆเบ™เป†เปƒเบ™เบงเบดเบ—เบฐเบเบฒเบชเบฒเบ”เบ„เบญเบกเบžเบดเบงเป€เบ•เบต, เบฅเบงเบกเบ—เบฑเบ‡เบชเบฒเบ‚เบฒ
เบเบฒเบ™เบ„เบฒเบ”เบ„เบฐเป€เบ™เบฎเบฒเบ”เปเบง เปเบฅเบฐ algorithms caching). เบเบฒเบ™เบเปˆเบฒเบ‡เบ›เปˆเบฒเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™
เบเบฐเบ•เบธเป‰เบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบงเบฝเบเบ‡เบฒเบ™เบกเบตเป„เบฅเบเบฐเบžเบถเบ”เบ•เบดเบเปเบฒเปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบˆเบถเปˆเบ‡เบชเบฒเบกเบฒเบ”เบ„เบฒเบ”เป€เบ”เบปเบฒเป„เบ”เป‰.
เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบซเบ™เบถเปˆเบ‡เบ„เบงเบ™เบˆเบฐเบฅเบฐเบกเบฑเบ”เบฅเบฐเบงเบฑเบ‡เบเบฑเบšเป€เบ•เบฑเบเบ™เบดเบเบ™เบตเป‰, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบเบฒเบ™เบ„เบฒเบ”เบ„เบฐเป€เบ™เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบซเบผเบฒเบ.
เบญเบฒเบ”โ€‹เบˆเบฐโ€‹เบเบฒเบโ€‹เป€เบ›เบฑเบ™โ€‹เบเบฒเบ™โ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เปเบฅเบฐโ€‹เบ™เปเบฒโ€‹เบžเบฒโ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹เบเบฒเบ™โ€‹เบ•เบฑเบ”โ€‹เบชเบดเบ™โ€‹เปƒเบˆโ€‹เบฎเป‰เบฒเบโ€‹เปเบฎเบ‡โ€‹เบเบงเปˆเบฒโ€‹
เบˆเบฐเบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบฎเบนเป‰เบซเบเบฑเบ‡เป€เบฅเบตเบ.

MLFQ: เบเบปเบ”เบฅเบฐเบšเบฝเบšเบžเบทเป‰เบ™เบ–เบฒเบ™

เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบเบปเบ”เบฅเบฐเบšเบฝเบšเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ MLFQ algorithm. เปเบฅเบฐเป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡ algorithm เบ™เบตเป‰
เบกเบตเบซเบผเบฒเบ, เบงเบดเบ—เบตเบเบฒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™.
เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบžเบดเบˆเบฒเบฅเบฐเบ™เบฒ, MLFQ เบˆเบฐเบกเบตเบซเบผเบฒเบเป†เบขเปˆเบฒเบ‡
เปเบ–เบงเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เปเบ•เปˆเบฅเบฐเบญเบฑเบ™เบˆเบฐเบกเบตเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบ—เบธเบเป€เบงเบฅเบฒ,
เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เปเบ–เบงเบ”เบฝเบงเบเบฑเบ™. MLFQ เปƒเบŠเป‰เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”,
เป€เบžเบทเปˆเบญเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบงเปˆเบฒเบงเบฝเบเบ‡เบฒเบ™เปƒเบ”เบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”, i.e. เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบชเบนเบ‡โ€‹เบเบงเปˆเบฒโ€‹
เบšเบนเบฅเบดเบกเบฐเบชเบดเบ” (เบงเบฝเบเบˆเบฒเบเปเบ–เบงเบ—เบตเปˆเบกเบตเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡เบชเบธเบ”) เบˆเบฐเบ–เบทเบเป€เบ›เบตเบ”เบ•เบปเบงเปƒเบ™เบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”
เบ„เบดเบง.
เปเบ™เปˆเบ™เบญเบ™, เบชเบฒเบกเบฒเบ”เบกเบตเบซเบผเบฒเบเบเบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เบซเบ™เป‰เบฒเบงเบฝเบเปƒเบ™เปเบ–เบงเบชเบฐเป€เบžเบฒเบฐ, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™
เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบ‚เบปเบฒเบˆเบฐเบกเบตเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ”เบฝเบงเบเบฑเบ™. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบเบปเบ™เป„เบเบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰
RR เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเปƒเบ™เบšเบฑเบ™เบ”เบฒเบงเบฝเบเบ‡เบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰.
เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบกเบฒเบฎเบญเบ”เบชเบญเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบžเบทเป‰เบ™เบ–เบฒเบ™เบชเปเบฒเบฅเบฑเบš MLFQ:

  • เบเบปเบ”เบฅเบฐเบšเบฝเบš 1: เบ–เป‰เบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”(A) > เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”(B), เบงเบฝเบเบ‡เบฒเบ™ A เบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ (B เบˆเบฐเบšเปเปˆ)
  • Rule2: เบ–เป‰เบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”(A) = เบšเบธเบฅเบดเบกเบฐเบชเบดเบ”(B), A&B เปเบกเปˆเบ™เป€เบฅเบตเปˆเบกเบ™เบณเปƒเบŠเป‰ RR

เบญเบตเบ‡เบ•เบฒเบกเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เปƒเบ™เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™ MLFQ เปเบกเปˆเบ™
เปเบกเปˆเบ™เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเปƒเบซเป‰เบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ„เบปเบ‡เบ—เบตเปˆเปเบ•เปˆเบฅเบฐเบ„เบปเบ™
เบงเบฝเบเบ‡เบฒเบ™, MLFQ เบ›เปˆเบฝเบ™เปเบ›เบ‡เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ‚เบญเบ‡เบกเบฑเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเบžเบถเบ”เบ•เบดเบเปเบฒเบ—เบตเปˆเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™.
เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ–เป‰เบฒเบงเบฝเบเปƒเบ”เบ™เบถเปˆเบ‡เบขเบธเบ”เบขเบนเปˆ CPU เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡ เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบฅเปเบ–เป‰เบฒเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เปเบ›เป‰เบ™เบžเบดเบก,
MLFQ เบˆเบฐเบฎเบฑเบเบชเบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบชเบนเบ‡เป€เบžเบฒเบฐเบงเปˆเบฒเบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบงเบดเบ—เบตเบเบฒเบ™
เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ„เบงเบ™เป€เบฎเบฑเบ”เบงเบฝเบ. เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒ, เปƒเบ™เบ—เบฒเบ‡เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เบงเบฝเบเบ‡เบฒเบ™เปเบกเปˆเบ™เบขเบนเปˆเบชเบฐเป€เบซเบกเบตเปเบฅเบฐ
เปเบกเปˆเบ™ CPU เบ—เบตเปˆเป€เบ‚เบฑเป‰เบกเบ‚เบธเป‰เบ™เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™, MLFQ เบˆเบฐ downgrade เบกเบฑเบ™
เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, MLFQ เบˆเบฐเบชเบถเบเบชเบฒเบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเบเปเบฒเบฅเบฑเบ‡เปเบฅเปˆเบ™.
เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบžเบถเบ”โ€‹เบ•เบดโ€‹เบเปเบฒโ€‹.
เบ‚เปเปƒเบซเป‰เปเบ•เป‰เบกเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเบ„เบดเบงเบญเบฒเบ”เบˆเบฐเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”
เป€เบงเบฅเบฒเปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™เบ™เบตเป‰:
เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™: เบชเบฒเบกเบŠเบดเป‰เบ™เบ‡เปˆเบฒเบ. เบชเปˆเบงเบ™เบ—เบต 5: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™: เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš (เบเบฒเบ™เปเบ›)

เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ™เบตเป‰, 2 เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ A เปเบฅเบฐ B เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เปเบ–เบงเบ—เบตเปˆเบกเบตเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡เบชเบธเบ”. เบ‚เบฐเบšเบงเบ™เบเบฒเบ™
C เปเบกเปˆเบ™เบšเบฒเบ‡เบšเปˆเบญเบ™เบขเบนเปˆเบเบฒเบ‡, เปเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™ D เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡เปเบ–เบง. เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡
เบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเบ‚เบญเบ‡ MLFQ algorithm, เบœเบนเป‰เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒเบงเบฝเบเบ—เบตเปˆเบชเบนเบ‡เบชเบธเบ”เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™
เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ•เบฒเบก RR, เปเบฅเบฐเบงเบฝเบเบ‡เบฒเบ™ C, D เบˆเบฐเบญเบญเบเบˆเบฒเบเบงเบฝเบ.
เบ•เบฒเบกเบ—เปเบฒเบกเบฐเบŠเบฒเบ”, เบžเบฒเบšเบ–เปˆเบฒเบเปเบšเบšเบ„เบปเบ‡เบ—เบตเปˆเบˆเบฐเบšเปเปˆเปƒเบซเป‰เบฎเบนเบšเบžเบฒเบšเบ—เบตเปˆเบชเบปเบกเบšเบนเบ™เบ‚เบญเบ‡เบงเบดเบ—เบตเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡ MLFQ.
เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบขเปˆเบฒเบ‡เปเบ™เปˆเบ™เบญเบ™เบงเปˆเบฒเบฎเบนเบšเบžเบฒเบšเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒ.

เบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบก 1: เบงเบดเบ—เบตเบเบฒเบ™เบ›เปˆเบฝเบ™เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”

เปƒเบ™เบˆเบธเบ”เบ™เบตเป‰, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบงเปˆเบฒ MLFQ เบˆเบฐเบ›เปˆเบฝเบ™เบฅเบฐเบ”เบฑเบšเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เปเบ™เบงเปƒเบ”
เบงเบฝเบเบ‡เบฒเบ™ (เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ•เปเบฒเปเบซเบ™เปˆเบ‡เบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เปƒเบ™เปเบ–เบง) เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบงเบปเบ‡เบˆเบญเบ™เบŠเบตเบงเบดเบ”เบ‚เบญเบ‡เบกเบฑเบ™. เบชเปเบฒเบฅเบฑเบš
เปƒเบ™เบ™เบตเป‰, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบˆเบทเปˆเบˆเปเบฒเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ: เบˆเปเบฒเบ™เบงเบ™เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™
เบงเบฝเบเบ‡เบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ—เบตเปˆเบกเบตเป€เบงเบฅเบฒเปเบฅเปˆเบ™เบชเบฑเป‰เบ™ (เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบˆเบถเปˆเบ‡เบญเบญเบเป€เบฅเบทเป‰เบญเบเป†
CPU) เปเบฅเบฐเบงเบฝเบเบ‡เบฒเบ™เบเบฒเบงเบซเบผเบฒเบเบ—เบตเปˆเปƒเบŠเป‰ CPU เบ•เบฐเบซเบผเบญเบ”เป€เบงเบฅเบฒเป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ, เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ
เป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบกเปˆเบ™เบšเปเปˆเบชเปเบฒเบ„เบฑเบ™. เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบžเบฐเบเบฒเบเบฒเบกเบ—เปเบฒเบญเบดเบ”
เบ›เบฐเบ•เบดเบšเบฑเบ” MLFQ algorithm เบ”เป‰เบงเบเบเบปเบ”เบฅเบฐเบšเบฝเบšเบ•เปเปˆเป„เบ›เบ™เบตเป‰:

  • เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ—เบต 3: เป€เบกเบทเปˆเบญเบงเบฝเบเบ‡เบฒเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบฅเบฐเบšเบปเบš, เบกเบฑเบ™เบ–เบทเบเบˆเบฑเบ”เปƒเบชเปˆเปƒเบ™เปเบ–เบงเบ—เบตเปˆเบกเบตเบ„เปˆเบฒเบชเบนเบ‡เบชเบธเบ”
  • เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”.
  • Rule4a: เบ–เป‰เบฒเบงเบฝเบเปƒเบ”เบ™เบถเปˆเบ‡เปƒเบŠเป‰เปœเป‰เบฒเบˆเปเป€เบงเบฅเบฒเบ—เบฑเบ‡เปเบปเบ”เบ‚เบญเบ‡เบกเบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™
  • เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ–เบทเบเบซเบผเบธเบ”เบฅเบปเบ‡.
  • Rule4b: เบ–เป‰เบฒ Task เบ›เปˆเบญเบ CPU เบเปˆเบญเบ™เบ—เบตเปˆเป€เบงเบฅเบฒเบ‚เบญเบ‡เบกเบฑเบ™เบซเบกเบปเบ”เบญเบฒเบเบธ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™
  • เบเบฑเบ‡เบ„เบปเบ‡เป€เบ›เบฑเบ™เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบญเบฑเบ™เบ”เบฝเบงเบเบฑเบ™.

เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบต 1: เบงเบฝเบเบ‡เบฒเบ™เบญเบฑเบ™เบ”เบฝเบงเบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™

เบ”เบฑเปˆเบ‡เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เป€เบซเบฑเบ™เป„เบ”เป‰เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ™เบตเป‰, เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบฎเบฝเบ™เปเบกเปˆเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เบชเบนเบ‡เบชเบธเบ”
เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”. เบซเบผเบฑเบ‡เบˆเบฒเบเบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเป€เบงเบฅเบฒ 10ms, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบˆเบฐเบ–เบทเบเบซเบผเบธเบ”เบฅเบปเบ‡เปƒเบ™เบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™.
เบเบณเบ™เบปเบ”เป€เบงเบฅเบฒ. เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ›เปˆเบญเบ‡โ€‹เบขเป‰เบฝเบกโ€‹เบ—เบตเปˆโ€‹เปƒเบŠเป‰โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹, เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เบซเบผเบธเบ”โ€‹เบฅเบปเบ‡โ€‹เปƒเบ™โ€‹เบ—เบตเปˆโ€‹เบชเบธเบ”โ€‹
เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ•เปเปˆเบฒเบชเบธเบ”เปƒเบ™เบฅเบฐเบšเบปเบš, เบšเปˆเบญเบ™เบ—เบตเปˆเบกเบฑเบ™เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆ.
เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™: เบชเบฒเบกเบŠเบดเป‰เบ™เบ‡เปˆเบฒเบ. เบชเปˆเบงเบ™เบ—เบต 5: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™: เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš (เบเบฒเบ™เปเบ›)

เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบต 2: เป€เบเบฑเบšเบงเบฝเบเบชเบฑเป‰เบ™เป†

เบ•เบญเบ™เบ™เบตเป‰เปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบงเบดเบ—เบตเบเบฒเบ™ MLFQ เบˆเบฐเบžเบฐเบเบฒเบเบฒเบกเป€เบ‚เบปเป‰เบฒเบซเบฒ SJF. เปƒเบ™โ€‹เบ™เบฑเป‰เบ™
เบ•เบปเบงเบขเปˆเบฒเบ‡, เบงเบฝเบเบ‡เบฒเบ™เบชเบญเบ‡เบขเปˆเบฒเบ‡: A, เป€เบŠเบดเปˆเบ‡เป€เบ›เบฑเบ™เบงเบฝเบเบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡
เบเบฒเบ™เบ„เบญเบšเบ„เบญเบ‡ CPU เปเบฅเบฐ B, เป€เบŠเบดเปˆเบ‡เป€เบ›เบฑเบ™เบงเบฝเบเบ‡เบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบชเบฑเป‰เบ™. เบชเบปเบกเบกเบธเบ”เบงเปˆเบฒ
เบงเปˆเบฒ A เป„เบ”เป‰เปเบฅเปˆเบ™เป„เบ›เป€เบ›เบฑเบ™เป„เบฅเบเบฐเปœเบถเปˆเบ‡เปเบฅเป‰เบง เป€เบกเบทเปˆเบญเบงเบฝเบ B เบกเบฒเบฎเบญเบ”.
เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™: เบชเบฒเบกเบŠเบดเป‰เบ™เบ‡เปˆเบฒเบ. เบชเปˆเบงเบ™เบ—เบต 5: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™: เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš (เบเบฒเบ™เปเบ›)

เป€เบชเบฑเป‰เบ™เบชเบฐเปเบ”เบ‡เบ™เบตเป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เบญเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™. เบงเบฝเบโ€‹เบ‡เบฒเบ™ A, เป€เบŠเบฑเปˆเบ™โ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบเบฑเบšโ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เปƒเบ”โ€‹เบซเบ™เบถเปˆเบ‡,
เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ CPU เปเบกเปˆเบ™เบขเบนเปˆเบฅเบธเปˆเบกเบชเบธเบ”. Task B เบˆเบฐเบกเบฒเบฎเบญเบ”เป€เบงเบฅเบฒ T=100 เปเบฅเบฐเบˆเบฐ
เบ–เบทเบเบˆเบฑเบ”เปƒเบชเปˆเปƒเบ™เปเบ–เบงเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡เบชเบธเบ”. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเป€เบงเบฅเบฒเปเบฅเปˆเบ™เบชเบฑเป‰เบ™,
เบกเบฑเบ™เบˆเบฐเบชเปเบฒเป€เบฅเบฑเบ”เบเปˆเบญเบ™เบ—เบตเปˆเบกเบฑเบ™เบˆเบฐเบกเบฒเบฎเบญเบ”เปเบ–เบงเบชเบธเบ”เบ—เป‰เบฒเบ.

เบˆเบฒเบเบ•เบปเบงเบขเปˆเบฒเบ‡เบ™เบตเป‰, เบ—เปˆเบฒเบ™เบ„เบงเบ™เป€เบ‚เบปเป‰เบฒเปƒเบˆเป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ•เบปเป‰เบ™เบ•เปเบ‚เบญเบ‡ algorithm: เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบ algorithm เบšเปเปˆ
เบฎเบนเป‰โ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบเบฒเบงโ€‹เบซเบผเบทโ€‹เบชเบฑเป‰เบ™โ€‹, เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เบ—เปเบฒโ€‹เบญเบดเบ”โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹เบ—เบตเปˆโ€‹เป€เบ‚เบปเบฒโ€‹เบชเบปเบกโ€‹เบกเบธเบ”โ€‹เบงเปˆเบฒโ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบ™เบฑเป‰เบ™โ€‹
เบชเบฑเป‰เบ™ เปเบฅเบฐเปƒเบซเป‰เบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบชเบนเบ‡เบชเบธเบ”. เบ–เป‰เบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบงเบฝเบเบชเบฑเป‰เบ™เปเบ—เป‰เป†, เปเบฅเป‰เบง
เบกเบฑเบ™เบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เป„เบงเบงเบฒ, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ–เป‰เบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบงเบฝเบเบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™, เบกเบฑเบ™เบˆเบฐเป€เบฅเบทเปˆเบญเบ™เป„เบ›เบŠเป‰เบฒเป†
เปƒเบ™ เบšเบน เบฅเบด เบกเบฐ เบชเบดเบ” เบฅเบปเบ‡ เปเบฅเบฐ เบ—เบฑเบ™ เบ—เบต เบ—เบตเปˆ เบˆเบฐ เบžเบด เบชเบนเบ” เบงเปˆเบฒ เบ™เบฒเบ‡ เป€เบ›เบฑเบ™ เบˆเบดเบ‡ เบงเบฝเบ เบ‡เบฒเบ™ เบ—เบตเปˆ เบเบฒเบง เบ™เบฒเบ™ เบ—เบตเปˆ เบšเปเปˆ เป„เบ”เป‰
เบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡.

เบ•เบปเบงเบขเปˆเบฒเบ‡ 3: I/O เปเบกเปˆเบ™เบซเบเบฑเบ‡?

เบ•เบญเบ™เบ™เบตเป‰เปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบ•เบปเบงเบขเปˆเบฒเบ‡ I/O. เบ”เบฑเปˆเบ‡เบ—เบตเปˆเป„เบ”เป‰เบเปˆเบฒเบงเป„เบงเป‰เปƒเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบš 4b,
เบ–เป‰เบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ›เปˆเบญเบเป‚เบ›เป€เบŠเบ”เป€เบŠเบตเป‚เบ”เบเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เป€เบงเบฅเบฒเบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบ—เบตเปˆ,
เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบฑเบ™เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปƒเบ™เบฅเบฐเบ”เบฑเบšเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ”เบฝเบงเบเบฑเบ™. เบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ‚เบญเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ™เบตเป‰เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบ pretty.
- เบ–เป‰เบฒเบงเบฝเบเป‚เบ•เป‰เบ•เบญเบšเป€เบฎเบฑเบ” I/O เบซเบผเบฒเบ, เบ•เบปเบงเบขเปˆเบฒเบ‡, เบฅเปเบ–เป‰เบฒ
เบˆเบฒเบเบเบฒเบ™เบเบปเบ”เปเบ›เป‰เบ™เบžเบดเบก เบซเบผเบทเป€เบกเบปเป‰เบฒเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰, เบงเบฝเบเบ‡เบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบŸเบฃเบต
เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ•เปˆเบฒเบ‡เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบš. เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบขเบฒเบเบเบปเบเป€เบฅเบตเบเบงเบฝเบเบ‡เบฒเบ™เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง,
เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบกเบฑเบ™เบˆเบฐเบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปƒเบ™เบฅเบฐเบ”เบฑเบšเบ”เบฝเบงเบเบฑเบ™.
เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™: เบชเบฒเบกเบŠเบดเป‰เบ™เบ‡เปˆเบฒเบ. เบชเปˆเบงเบ™เบ—เบต 5: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™: เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš (เบเบฒเบ™เปเบ›)

เบ•เบปเบงเบขเปˆเบฒเบ‡เบ™เบตเป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเบดเบ—เบตเบเบฒเบ™ algorithm เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง - เบงเบฝเบเบ‡เบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš B, เป€เบŠเบดเปˆเบ‡เบ•เป‰เบญเบ‡เบเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆ CPU เบชเปเบฒเบฅเบฑเบš 1ms เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™.
เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ I/O เปเบฅเบฐเบงเบฝเบเบเบฒเบง A, เป€เบŠเบดเปˆเบ‡เปƒเบŠเป‰ CPU เบ•เบฐเบซเบผเบญเบ”เป€เบงเบฅเบฒ.
MLFQ เบฎเบฑเบเบชเบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™ B เบขเบนเปˆเปƒเบ™เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡เบชเบธเบ”เบเป‰เบญเบ™เบงเปˆเบฒเบกเบฑเบ™เบเบฑเบ‡เบชเบทเบšเบ•เปเปˆ
เบ›เปˆเบญเบ CPU. เบ–เป‰เบฒ B เป€เบ›เบฑเบ™เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบกเบตเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ algorithm เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰เป„เบ”เป‰เบšเบฑเบ™เบฅเบธ
เบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ‚เบญเบ‡เบกเบฑเบ™เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เบงเบฝเบเบ‡เบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบขเปˆเบฒเบ‡เป„เบงเบงเบฒ.

เบšเบฑเบ™เบซเบฒเบเบฑเบš MLFQ algorithm เบ›เบฐเบˆเบธเบšเบฑเบ™

เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เบชเบฐเบšเบฑเบšเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ MLFQ. เปเบฅเบฐเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบฅเบฒเบง
เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบกเบฑเบ™เป„เบ”เป‰เบ”เบตเปเบฅเบฐเบเบธเบ•เบดเบ—เปเบฒ, เปเบˆเบเบขเบฒเบเป€เบงเบฅเบฒ CPU เบขเปˆเบฒเบ‡เบเบธเบ”เบ•เบดเบ—เปเบฒเบฅเบฐเบซเบงเปˆเบฒเบ‡
เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบเบฒเบงโ€‹เปเบฅเบฐโ€‹เปƒเบซเป‰โ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบชเบฑเป‰เบ™โ€‹เบซเบผเบทโ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เป€เบ–เบดเบ‡โ€‹เบซเบผเบฒเบโ€‹
เป„เบ›เบซเบฒ I/O เป€เบžเบทเปˆเบญเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบขเปˆเบฒเบ‡เป„เบงเบงเบฒ. เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เบกเบตเบซเบผเบฒเบเป†เบขเปˆเบฒเบ‡
เบšเบฑเบ™เบซเบฒเบฎเป‰เบฒเบเปเบฎเบ‡.
เบ›เบฐโ€‹เบเบฒเบ™โ€‹เบ—เปเบฒโ€‹เบญเบดเบ”, เบšเบฑเบ™เบซเบฒเบ„เบงเบฒเบกเบญเบถเบ”เบซเบดเบง: เบ–เป‰เบฒเบฅเบฐเบšเบปเบšเบˆเบฐเบกเบตเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบซเบผเบฒเบ
เบงเบฝเบเบ‡เบฒเบ™, เบžเบงเบเป€เบ‚เบปเบฒเบˆเบฐเปƒเบŠเป‰เป€เบงเบฅเบฒ CPU เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบšเปเปˆเปเบกเปˆเบ™เป€เบงเบฅเบฒเบ”เบฝเบง
เบงเบฝเบ เบ‡เบฒเบ™ เบˆเบฐ เบšเปเปˆ เป„เบ”เป‰ เบฎเบฑเบš เป‚เบญ เบเบฒเบ” เบ—เบตเปˆ เบˆเบฐ เป„เบ”เป‰ เบฎเบฑเบš เบเบฒเบ™ เบ›เบฐ เบ•เบด เบšเบฑเบ” (เบžเบงเบ เป€เบ‚เบปเบฒ เป€เบˆเบปเป‰เบฒ เปเบกเปˆเบ™ starving).

เบ—เบตเบชเบญเบ‡, เบœเบนเป‰เปƒเบŠเป‰ smart เบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™
เป‚เบ‡เปˆโ€‹เบœเบนเป‰โ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เป„เบ”เป‰โ€‹. เบเบฒเบ™เบซเบฅเบญเบเบฅเบงเบ‡เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป€เบžเบทเปˆเบญเบšเบฑเบ‡เบ„เบฑเบš
เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเป€เบžเบทเปˆเบญเปƒเบซเป‰เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒ CPU เบซเบผเบฒเบ. เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบงเปˆเบฒ
เบญเบฐเบ—เบดเบšเบฒเบเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบกเบตเบ„เบงเบฒเบกเบชเปˆเบฝเบ‡เบ•เปเปˆเบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง: เบเปˆเบญเบ™เบ—เบตเปˆเบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒเปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”
เบซเบผเบฒเบเบเบงเปˆเบฒ, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ I / O (เบเบฑเบšเบšเบฒเบ‡, เบšเปเปˆเบงเปˆเบฒเป„เบŸเบฅเปŒเปƒเบ”)
เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบˆเบถเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰ CPU เบซเบงเปˆเบฒเบ‡. เบžเบถเบ”เบ•เบดเบเปเบฒเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบˆเบปเป‰เบฒเบขเบนเปˆเบ„เบทเบเบฑเบ™
เปเบ–เบงเบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡เปเบฅเบฐเบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡เป„เบ”เป‰เบฎเบฑเบšเบญเบฑเบ”เบ•เบฒเบชเปˆเบงเบ™เปƒเบซเบเปˆเบ‚เบญเบ‡เป€เบงเบฅเบฒ CPU. เบ–เป‰เบฒเป€เบฎเบฑเบ”เปเบฅเป‰เบง
เบ™เบตเป‰เปเบกเปˆเบ™เบ–เบทเบเบ•เป‰เบญเบ‡ (เป€เบŠเบฑเปˆเบ™: เปเบฅเปˆเบ™ 99% เบ‚เบญเบ‡เป€เบงเบฅเบฒเบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ›เปˆเบญเบ CPU),
เบงเบฝเบเบ‡เบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ”เบœเบนเบเบ‚เบฒเบ”เป‚เบฎเบ‡เบ‡เบฒเบ™เบœเบฐเบฅเบดเบ”.

เบชเบธเบ”เบ—เป‰เบฒเบ, เป‚เบ„เบ‡เบเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เปเบ›เบ‡เบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เบกเบฑเบ™เปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒ. เบงเบฝเบเบ‡เบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™
เบ—เบตเปˆเปƒเบŠเป‰ CPU เบชเบฒเบกเบฒเบ”เบเบฒเบเป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš. เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™
เบงเบฝเบเบ‡เบฒเบ™เบˆเบฐเบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบดเปˆเบ™เบ›เบปเบงเบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบˆเบฒเบเบœเบนเป‰เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒ, เบ„เบทเบเบฑเบšเบ„เบปเบ™เบญเบทเปˆเบ™
(เบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบš) เบงเบฝเบเบ‡เบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš.

เบ„เปเบฒเบ–เบฒเบกเบเบฑเบšเบœเบนเป‰เบŠเบปเบก: เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบญเบฑเบ™เปƒเบ”เบ•เปเปˆเบœเบนเป‰เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เปƒเบ™เป‚เบฅเบเบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบก?

เบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบก 2: เป€เบžเบตเปˆเบกเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”

เปƒเบซเป‰เบžเบฐเบเบฒเบเบฒเบกเบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเปเบฅเบฐเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบšเบฑเบ™เบซเบฒเบเบฑเบš
เบ„เบงเบฒเบกเบญเบถเบ”เบซเบดเบง. เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡
เบงเบฝเบเบ‡เบฒเบ™ CPU เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเป€เบงเบฅเบฒเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ (เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบšเปเปˆเบ”เบปเบ™).
เป€เบ›เบฑเบ™โ€‹เบเบฒเบ™โ€‹เปเบเป‰โ€‹เป„เบ‚โ€‹เบ‡เปˆเบฒเบโ€‹เบ”เบฒเบโ€‹เบ‚เบญเบ‡โ€‹เบšเบฑเบ™โ€‹เบซเบฒโ€‹, เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เปเบ™เบฐโ€‹เบ™เปเบฒโ€‹เปเบ•เปˆโ€‹เบฅเบฐโ€‹เป„เบฅโ€‹เบเบฐโ€‹
เป€เบžเบตเปˆเบกเบ—เบฐเบงเบตเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบฅเบฐเบšเบปเบš. เบกเบตเบซเบผเบฒเบเบงเบดเบ—เบต
เป€เบžเบทเปˆเบญเบšเบฑเบ™เบฅเบธเบชเบดเปˆเบ‡เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เปƒเบซเป‰เบžเบฐเบเบฒเบเบฒเบกเบ›เบฐเบ•เบดเบšเบฑเบ”เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเป†เป€เบ›เบฑเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡: เปเบ›
เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ”เบฝเบงโ€‹เบเบฑเบšโ€‹เบšเบนโ€‹เบฅเบดโ€‹เบกเบฐโ€‹เบชเบดเบ”โ€‹เบชเบนเบ‡โ€‹เบชเบธเบ”โ€‹, เบชเบฐโ€‹เบ™เบฑเป‰เบ™โ€‹เบเบปเบ”โ€‹เบฅเบฐโ€‹เบšเบฝเบšโ€‹เปƒเบซเบกเปˆโ€‹:

  • เบเบปเบ”เบฅเบฐเบšเบฝเบš 5: เบซเบผเบฑเบ‡เบˆเบฒเบเป„เบฅเบเบฐเป€เบงเบฅเบฒ S, เป‚เบญเบ™เบซเบ™เป‰เบฒเบงเบฝเบเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบฅเบฐเบšเบปเบšเป„เบ›เบซเบฒเบ„เบดเบงเบ—เบตเปˆเบชเบนเบ‡เบ—เบตเปˆเบชเบธเบ”.

เบเบปเบ”เบฅเบฐเบšเบฝเบšเปƒเบซเบกเปˆเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบชเบญเบ‡เบขเปˆเบฒเบ‡เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™. เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™
เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบšเปเปˆเปƒเบซเป‰เบซเบดเบง: เบงเบฝเบเบ‡เบฒเบ™เปƒเบ™เปเบ–เบงเบ—เบตเปˆเบชเบนเบ‡เบ—เบตเปˆเบชเบธเบ”เบˆเบฐเปเบšเปˆเบ‡เบ›เบฑเบ™
เป€เบงเบฅเบฒเป‚เบฎเบ‡เบ‡เบฒเบ™เบœเบฐเบฅเบดเบ”เบ•เบฒเบก RR algorithm เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฐเป„เบ”เป‰เบฎเบฑเบš
เป€เบงเบฅเบฒเป‚เบฎเบ‡เบ‡เบฒเบ™เบœเบฐเบฅเบดเบ”. เบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เบ–เป‰เบฒเบšเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เป€เบกเบทเปˆเบญเบเปˆเบญเบ™
เบžเบฝเบ‡เปเบ•เปˆเป‚เบฎเบ‡เบ‡เบฒเบ™เบœเบฐเบฅเบดเบ”เบเบฒเบเป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš, เบกเบฑเบ™เบˆเบฐเบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปƒเบ™เปเบ–เบงเบ—เบตเปˆเบกเบตเบฅเบฐเบ”เบฑเบšเบชเบนเบ‡เบชเบธเบ”
เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบซเบผเบฑเบ‡เบˆเบฒเบเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบŠเบธเบเบเบนเป‰เปƒเบซเป‰เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡เบชเบธเบ”เบ„เบฑเป‰เบ‡เบ”เบฝเบง.
เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบ•เบปเบงเบขเปˆเบฒเบ‡. เปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ™เบตเป‰, เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ”เบฝเบงเป‚เบ”เบเปƒเบŠเป‰
เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™: เบชเบฒเบกเบŠเบดเป‰เบ™เบ‡เปˆเบฒเบ. เบชเปˆเบงเบ™เบ—เบต 5: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™: เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš (เบเบฒเบ™เปเบ›)

CPU เปเบฅเบฐเบชเบญเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบชเบฑเป‰เบ™. เบขเบนเปˆเป€เบšเบทเป‰เบญเบ‡เบŠเป‰เบฒเบเปƒเบ™เบฎเบนเบš, เบ•เบปเบงเป€เบฅเบเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบžเบถเบ”เบ•เบดเบเปเบฒเบ—เบตเปˆเบšเปเปˆเบกเบตเบเบฒเบ™เบŠเบธเบเบเบนเป‰เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”, เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™เป€เบฅเบตเปˆเบกเบญเบถเบ”เบซเบดเบงเบซเบผเบฑเบ‡เบˆเบฒเบเบชเบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบกเบฒเบฎเบญเบ”เบฅเบฐเบšเบปเบš. เปƒเบ™เบฎเบนเบšเบ”เป‰เบฒเบ™เบ‚เบงเบฒ, เบ—เบธเบเป† 50ms เบเบฒเบ™เป€เบžเบตเปˆเบกเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเป€เบงเบฅเบฒเบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเปเบฅเบฐเบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™เปเบ•เปˆเบฅเบฐเป„เบฅเบเบฐ. 50ms เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰เบ–เบทเบเป€เบญเบปเบฒเป€เบ›เบฑเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เบ•เบปเบงเป€เบฅเบเบ™เบตเป‰เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบชเบนเบ‡.
เปเบ™เปˆเบ™เบญเบ™, เบเบฒเบ™เป€เบžเบตเปˆเบกเป„เบฅเบเบฐเป€เบงเบฅเบฒเป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™ S เบ™เปเบฒเป„เบ›เบชเบนเปˆ
เบ„เปเบฒเบ–เบฒเบกเบขเปˆเบฒเบ‡เบกเบตเป€เบซเบ”เบœเบปเบ™: เบ„เบงเบ™เบเปเบฒเบ™เบปเบ”เบ„เปˆเบฒเปƒเบ”? เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ”เบตเบชเบปเบกเบ„เบงเบ™
เบงเบดเบชเบฐเบงเบฐเบเบญเบ™เบฅเบฐเบšเบปเบš John Ousterhout เป„เบ”เป‰เบเปˆเบฒเบงเป€เบ–เบดเบ‡เบ›เบฐเบฅเบดเบกเบฒเบ™เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เปƒเบ™เบฅเบฐเบšเบปเบšเป€เบ›เบฑเบ™ voo-doo
เบ„เบปเบ‡เบ—เบตเปˆ, เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบžเบงเบเป€เบ‚เบปเบฒเปƒเบ™เบšเบฒเบ‡เบ—เบฒเบ‡เบ•เป‰เบญเบ‡เบเบฒเบ™ magic เบชเบตเบ”เปเบฒเบชเปเบฒเบฅเบฑเบšเบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡
โ€‹เบเบฒเบ™โ€‹เบชเบณโ€‹เบœเบฑเบ”โ€‹เป€เบŠเบทเป‰เบญ. เปเบฅเบฐ, เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, S เบกเบตเบฅเบปเบ”เบŠเบฒเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ„เบทเบเบฑเบ™
เบ‚เบฐโ€‹เบซเบ™เบฒเบ”โ€‹เปƒเบซเบเปˆ - เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบเบฒเบงโ€‹เบˆเบฐ starveโ€‹. เปเบฅเบฐ เบ–เป‰เบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบ•เบฑเป‰เบ‡โ€‹เบกเบฑเบ™โ€‹เบ•เปˆเบณโ€‹เป€เบเบตเบ™โ€‹เป„เบ›,
เบงเบฝเบเบ‡เบฒเบ™เปเบšเบšเป‚เบ•เป‰เบ•เบญเบšเบˆเบฐเบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเป€เบงเบฅเบฒ CPU เบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบก.

เบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบก 3: เบšเบฑเบ™เบŠเบตเบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ

เปƒเบ™โ€‹เบ›เบฑเบ”โ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เบญเบตเบโ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบšเบฑเบ™โ€‹เบซเบฒโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เปเบเป‰โ€‹เป„เบ‚โ€‹: เป€เบฎเบฑเบ”โ€‹เปเบ™เบงโ€‹เปƒเบ”โ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹
เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เป‚เบเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ? culprits เบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ™เบตเป‰เปเบกเปˆเบ™
เบเบปเบ”เบฅเบฐเบšเบฝเบš 4a, 4b เบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เป€เบฎเบฑเบ”เบงเบฝเบเป€เบžเบทเปˆเบญเบฎเบฑเบเบชเบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ‚เบญเบ‡เบ•เบปเบ™เป‚เบ”เบเบเบฒเบ™เบ›เบปเบ”เบ›เปˆเบญเบเป‚เบ›เป€เบŠเบ”เป€เบŠเบต
เบเปˆเบญเบ™เปเบปเบ”เบเบณเบ™เบปเบ”เป€เบงเบฅเบฒเบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบš. เบงเบดเบ—เบตเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเบกเบฑเบ™?
เบเบฒเบ™เปเบเป‰เป„เบ‚เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบงเปˆเบฒเป€เบ›เบฑเบ™เบšเบฑเบ™เบŠเบตเบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒเบ‚เบญเบ‡เป€เบงเบฅเบฒ CPU เปƒเบ™เปเบ•เปˆเบฅเบฐเบ„เบปเบ™
เบฅเบฐเบ”เบฑเบš MLFQ. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบฅเบทเบกเป€เบงเบฅเบฒเบ—เบตเปˆเป‚เบ„เบ‡เบเบฒเบ™เปƒเบŠเป‰
เป‚เบฎเบ‡เบ‡เบฒเบ™เบœเบฐเบฅเบดเบ”เบชเปเบฒเบฅเบฑเบšเป„เบฅเบเบฐเป€เบงเบฅเบฒเบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบš, เบ—เปˆเบฒเบ™เบ„เบงเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเปเบฅเบฐเบ›เบฐเบซเบเบฑเบ”เบกเบฑเบ™. เบซเบผเบฑเบ‡เบˆเบฒเบ
เบ‚เบฐโ€‹เบšเบงเบ™โ€‹เบเบฒเบ™โ€‹เป„เบ”เป‰โ€‹เปƒเบŠเป‰โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ—เบตเปˆโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบˆเบฑเบ”โ€‹เบชเบฑเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ•เบปเบ™โ€‹, เบกเบฑเบ™โ€‹เบ„เบงเบ™โ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™ demoted เป„เบ›โ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹
เบฅเบฐเบ”เบฑเบšเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบฑเบ™เบšเปเปˆเบชเปเบฒเบ„เบฑเบ™เบงเปˆเบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบˆเบฐเปƒเบŠเป‰เป€เบงเบฅเบฒเบ‚เบญเบ‡เบกเบฑเบ™ - เปเบ™เบงเปƒเบ”
เบ„เบญเบกโ€‹เบžเบดเบงโ€‹เป€เบ•เบตโ€‹เบขเบนเปˆโ€‹เบชเบฐโ€‹เป€เบซเบกเบตโ€‹เปƒเบ™โ€‹เป‚เบฎเบ‡โ€‹เบ‡เบฒเบ™โ€‹เบœเบฐโ€‹เบฅเบดเบ”โ€‹เบซเบผเบทโ€‹เป€เบ›เบฑเบ™โ€‹เบŠเบธเบ”โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เป‚เบ—โ€‹. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™,
เบเบปเบ”เบฅเบฐเบšเบฝเบš 4 เบ„เบงเบ™เบ–เบทเบเบ‚เบฝเบ™เบ„เบทเบ™เปƒเบซเบกเปˆเบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

  • เบเบปเบ”เบฅเบฐเบšเบฝเบš 4: เบซเบผเบฑเบ‡เบˆเบฒเบเบงเบฝเบเปƒเบ”เบ™เบถเปˆเบ‡เป„เบ”เป‰เปƒเบŠเป‰เป€เบงเบฅเบฒเบ—เบตเปˆเบˆเบฑเบ”เบชเบฑเบ™เบขเบนเปˆเปƒเบ™เบ„เบดเบงเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™ (เบšเปเปˆเบงเปˆเบฒเบกเบฑเบ™เบˆเบฐเบ›เปˆเบญเบ CPU เป€เบ—เบปเปˆเบฒเปƒเบ”), เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ‚เบญเบ‡เบงเบฝเบเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบˆเบฐเบซเบผเบธเบ”เบฅเบปเบ‡ (เบกเบฑเบ™เป€เบฅเบทเปˆเบญเบ™เบฅเบปเบ‡เบ•เบฒเบกเบ„เบดเบง).

เบ‚เปโ€‹เปƒเบซเป‰โ€‹เป€เบšเบดเปˆเบ‡โ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡โ€‹:
เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™: เบชเบฒเบกเบŠเบดเป‰เบ™เบ‡เปˆเบฒเบ. เบชเปˆเบงเบ™เบ—เบต 5: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™: เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš (เบเบฒเบ™เปเบ›)ยป

เบ•เบปเบงเป€เบฅเบเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบžเบฐเบเบฒเบเบฒเบกเบซเบฅเบญเบเบฅเบงเบ‡เบœเบนเป‰เบˆเบฑเบ”เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบŠเบฑเปˆเบ™
เบ–เป‰เบฒเบกเบฑเบ™เบขเบนเปˆเบเบฑเบšเบเบปเบ”เบฅเบฐเบšเบฝเบšเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ 4a, 4b เบˆเบฐเป€เบ›เบฑเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบขเบนเปˆเป€เบšเบทเป‰เบญเบ‡เบŠเป‰เบฒเบ. เบเบฑเบšเปƒเบซเบกเปˆ
เบเบปเบ”เบฅเบฐเบšเบฝเบšเปเบกเปˆเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบกเปˆเบ™เบขเบนเปˆเป€เบšเบทเป‰เบญเบ‡เบ‚เบงเบฒ. เบเปˆเบญเบ™โ€‹เบเบฒเบ™โ€‹เบ›เบปเบโ€‹เบ›เบฑเบโ€‹เบฎเบฑเบโ€‹เบชเบฒโ€‹, เบ‚เบฐโ€‹เบšเบงเบ™โ€‹เบเบฒเบ™โ€‹เปƒเบ”โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป‚เบ—โ€‹เบซเบฒ I/O เบเปˆเบญเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบชเปเบฒโ€‹เป€เบฅเบฑเบ”โ€‹เปเบฅเบฐโ€‹
เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบˆเบถเปˆเบ‡เบ„เบญเบšเบ‡เปเบฒ CPU, เบซเบผเบฑเบ‡เบˆเบฒเบเป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡, เป‚เบ”เบเบšเปเปˆเบชเบปเบ™เป€เบฅเบทเปˆเบญเบ‡เบ‚เบญเบ‡เบžเบถเบ”เบ•เบดเบเปเบฒ
I/O, เบฅเบฒเบงเบเบฑเบ‡เบˆเบฐเบฅเบปเบ‡เปƒเบ™เปเบ–เบงเปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบˆเบถเปˆเบ‡เบšเปเปˆเบชเบฒเบกเบฒเบ”เบ—เบตเปˆเบˆเบฐเบšเปเปˆเบŠเบทเปˆเบชเบฑเบ”
เป€เบญเบปเบฒเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU.

เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡ MLFQ เปเบฅเบฐเบšเบฑเบ™เบซเบฒเบญเบทเปˆเบ™เป†

เบ”เป‰เบงเบเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เบšเบฑเบ™เบซเบฒเปƒเบซเบกเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™: เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ•เบปเป‰เบ™เบ•เป
เบ„เปเบฒเบ–เบฒเบก - เบงเบดเบ—เบตเบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง? เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™. เบ„เบงเบ™เป€เบ—เบปเปˆเบฒเปƒเบ”
เบ„เบดเบง? เบชเบดเปˆเบ‡เบ—เบตเปˆเบ„เบงเบ™เป€เบ›เบฑเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เบžเบฒเบเปƒเบ™เปเบ–เบง? เปเบ™เบงเปƒเบ”
เป‚เบ„เบ‡เบเบฒเบ™เบกเบฑเบเบˆเบฐเบ–เบทเบเบˆเบฑเบ”เบฅเปเบฒเบ”เบฑเบšเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™ starvation เปเบฅเบฐ
เบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™? เบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบ–เบฒเบกเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบšเปเปˆเบกเบตเบ‡เปˆเบฒเบเบ”เบฒเบ
เบเบฒเบ™เบ•เบญเบšเบชเบฐ เปœเบญเบ‡ เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบเบฑเบšเบเบฒเบ™เป‚เบซเบผเบ”เปเบฅเบฐเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เปเปˆเป„เบ›
เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบชเบฒเบกเบฒเบ”เบ™เปเบฒเป„เบ›เบชเบนเปˆเบ„เบงเบฒเบกเบชเบปเบกเบ”เบธเบ™เบ—เบตเปˆเบซเบ™เป‰เบฒเบžเปเปƒเบˆ.

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” MLFQ เบชเปˆเบงเบ™เปƒเบซเบเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบกเบญเบšเบซเบกเบฒเบเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™
เบŠเปˆเบญเบ‡เป€เบงเบฅเบฒเบชเปเบฒเบฅเบฑเบšเปเบ–เบงเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบ›เบปเบเบเบฐเบ•เบดเบ„เบดเบงเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡
เป„เบฅโ€‹เบเบฐโ€‹เบชเบฑเป‰เบ™โ€‹. เปเบ–เบงเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบงเบฝเบเบ‡เบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš,
เบชเบฐเบซเบผเบฑเบšเบฅเบฐเบซเบงเปˆเบฒเบ‡เบ—เบตเปˆเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบญเปˆเบญเบ™เป„เบซเบง เปเบฅเบฐเบ„เบงเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒ 10 เบซเบผเบทเปœเป‰เบญเบเบเบงเปˆเบฒ
เบ™เบฒเบ‡โ€‹เบชเบฒเบง. เปƒเบ™เบ—เบฒเบ‡เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เปเบ–เบงเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ•เปเปˆเบฒเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™เบ—เบตเปˆเปƒเบŠเป‰
CPU. เปเบฅเบฐเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เป„เบฅเบเบฐเบซเปˆเบฒเบ‡เบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™เป€เบซเบกเบฒเบฐเบซเบผเบฒเบ (100ms).
เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™: เบชเบฒเบกเบŠเบดเป‰เบ™เบ‡เปˆเบฒเบ. เบชเปˆเบงเบ™เบ—เบต 5: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™: เบ„เบดเบงเบ„เปเบฒเบ•เบดเบŠเบปเบกเบซเบผเบฒเบเบฅเบฐเบ”เบฑเบš (เบเบฒเบ™เปเบ›)

เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ™เบตเป‰, เบกเบต 2 เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เปเบ–เบงเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡ 20
ms เปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™ 10ms windows. 40ms เปƒเบ™เปเบ–เบงเบเบฒเบ‡ (เบซเบ™เป‰เบฒเบ•เปˆเบฒเบ‡ 20ms) เปเบฅเบฐเบขเบนเปˆเปƒเบ™เบ„เบดเบงเบ—เบตเปˆเบกเบตเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ•เปเปˆเบฒ
เบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเป€เบงเบฅเบฒเบ„เบดเบงเบเบฒเบเป€เบ›เบฑเบ™ 40ms เบšเปˆเบญเบ™เบ—เบตเปˆเบงเบฝเบเบ‡เบฒเบ™เบชเปเบฒเป€เบฅเบฑเบ”เบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ.

เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” MLFQ เปƒเบ™ Solaris OS เปเบกเปˆเบ™เบซเป‰เบญเบ‡เบฎเบฝเบ™เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เป€เบงเบฅเบฒ.
เบœเบนเป‰เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบˆเบฐเบชเบฐเบซเบ™เบญเบ‡เบŠเบธเบ”เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เบขเปˆเบฒเบ‡เปเบ™เปˆเบ™เบญเบ™เบงเปˆเบฒเบกเบฑเบ™เบ„เบงเบ™เบˆเบฐเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”
เบ›เปˆเบฝเบ™เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ™เป„เบฅเบเบฐเบŠเบตเบงเบดเบ”เบ‚เบญเบ‡เบกเบฑเบ™, เบชเบดเปˆเบ‡เบ—เบตเปˆเบ„เบงเบ™เบˆเบฐเป€เบ›เบฑเบ™เบ‚เบฐเบซเบ™เบฒเบ”
เบ›เปˆเบญเบ‡โ€‹เบขเป‰เบฝเบกโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบˆเบฑเบ”โ€‹เบชเบฑเบ™โ€‹เปเบฅเบฐโ€‹เบกเบฑเบโ€‹เบˆเบฐโ€‹เบเบปเบโ€‹เบชเบนเบ‡โ€‹เบ„เบงเบฒเบกโ€‹เบชเปเบฒโ€‹เบ„เบฑเบ™โ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹. เบœเบนเป‰โ€‹เบšเปโ€‹เบฅเบดโ€‹เบซเบฒเบ™
เบฅเบฐเบšเบปเบšเบชเบฒเบกเบฒเบ”เบžเบปเบงเบžเบฑเบ™เบเบฑเบšเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ™เบตเป‰เปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบœเบนเป‰เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบปเบง
เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ™เบตเป‰เบกเบต 60 เบ„เบดเบงเบ—เบตเปˆเบกเบตเบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เป€เบ—เบทเปˆเบญเบฅเบฐเบเป‰เบฒเบง
เบ‚เบฐเบซเบ™เบฒเบ”เบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเบˆเบฒเบ 20ms (เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡) เบซเบฒเบซเบผเบฒเบเบฎเป‰เบญเบ ms (เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ•เปˆเปเบฒเบชเบธเบ”), เปเบฅเบฐ
เบžเป‰เบญเบกโ€‹เบ—เบฑเบ‡โ€‹เป€เบžเบตเปˆเบกโ€‹เบ—เบฐโ€‹เบงเบตโ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบ„เบฑเป‰เบ‡โ€‹เบ•เปเปˆโ€‹เบงเบดโ€‹เบ™เบฒโ€‹เบ—เบตโ€‹.

เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ MLFQ เบญเบทเปˆเบ™เป†เบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบซเบผเบทเบชเบฐเป€เบžเบฒเบฐเปƒเบ”เป†
เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ—เบตเปˆเป„เบ”เป‰เบญเบฐเบ—เบดเบšเบฒเบเป„เบงเป‰เปƒเบ™เบšเบปเบ”เบ™เบตเป‰, เปƒเบ™เบ—เบฒเบ‡เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เบžเบงเบเป€เบ‚เบปเบฒเบ„เบดเบ”เป„เบฅเปˆเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เป‚เบ”เบเปƒเบŠเป‰
เบชเบนเบ”โ€‹เบ„เบฐโ€‹เบ™เบดเบ”โ€‹เบชเบฒเบ”โ€‹. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเปƒเบ™ FreeBSD เปƒเบŠเป‰เบชเบนเบ”เบชเปเบฒเบฅเบฑเบš
เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบงเบฝเบเบ‡เบฒเบ™เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบซเบผเบฒเบเบ›เบฒเบ™เปƒเบ”
เปƒเบŠเป‰ CPU. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ CPU rot เปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒ, เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™
เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบฒเบ™เป€เบžเบตเปˆเบกเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เปเบกเปˆเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบผเบฒเบเบเปˆเบงเบฒเบ—เบตเปˆเบญเบฐเบ—เบดเบšเบฒเบเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡. เบ™เบตเป‰โ€‹เปเบกเปˆเบ™โ€‹เบ„เบงเบฒเบกโ€‹เบˆเบดเบ‡
เป€เบญเบตเป‰เบ™เบงเปˆเบฒ algorithms decay. เปƒเบ™เบ–เบฒเบ™เบฐเป€เบ›เบฑเบ™เบชเบฐเบšเบฑเบš 7.1, FreeBSD เปƒเบŠเป‰เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒ ULE.

เบชเบธเบ”เบ—เป‰เบฒเบ, เบœเบนเป‰เบงเบฒเบ‡เปเบœเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบเบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบญเบทเปˆเบ™เป†. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบšเบฒเบ‡เบ„เบปเบ™
เบœเบนเป‰เบˆเบฑเบ”เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบชเบฐเบซเบ‡เบงเบ™เบฅเบฐเบ”เบฑเบšเบ—เบตเปˆเบชเบนเบ‡เบเบงเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™
เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบšเปเปˆเบกเบตเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบœเบนเป‰เปƒเบŠเป‰เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบชเบนเบ‡เบชเบธเบ”เปƒเบ™
เบฅเบฐเบšเบปเบš. เบšเบฒเบ‡เบฅเบฐเบšเบปเบšเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เปƒเบซเป‰เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเป€เบžเบทเปˆเบญเบŠเปˆเบงเบ
เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบˆเบฑเบ”เบฅเปเบฒเบ”เบฑเบšเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡. เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ„เปเบฒเบชเบฑเปˆเบ‡ เบ‡เบฒเบก
เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป€เบžเบตเปˆเบกโ€‹เบซเบผเบทโ€‹เบซเบผเบธเบ”โ€‹เบœเปˆเบญเบ™โ€‹เบšเบนโ€‹เบฅเบดโ€‹เบกเบฐโ€‹เบชเบดเบ”โ€‹เบ‚เบญเบ‡โ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เปเบฅเบฐโ€‹เบ”เบฑเปˆเบ‡โ€‹เบ™เบฑเป‰เบ™โ€‹เบเบฒเบ™โ€‹เป€เบžเบตเปˆเบกโ€‹เบซเบผเบทโ€‹เบซเบผเบธเบ”โ€‹เบฅเบปเบ‡โ€‹
เบซเบผเบธเบ”เบœเปˆเบญเบ™เป‚เบญเบเบฒเบ”เบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเป€เบงเบฅเบฒ CPU.

MLFQ: เบชเบฐเบซเบผเบธเบš

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบญเบฐเบ—เบดเบšเบฒเบเบงเบดเบ—เบตเบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ MLFQ. เบŠเบทเปˆโ€‹เบ‚เบญเบ‡โ€‹เบฅเบฒเบง
เบชเบฐเบซเบผเบธเบšเปƒเบ™เบซเบผเบฑเบเบเบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™ - เบกเบฑเบ™เบกเบตเบซเบผเบฒเบเป†เบ„เบดเบงเปเบฅเบฐเบ™เปเบฒเปƒเบŠเป‰เบ„เปเบฒเบ„เบถเบ”เบ„เปเบฒเป€เบซเบฑเบ™
เป€เบžเบทเปˆเบญเบˆเบฑเบ”เบฅเปเบฒเบ”เบฑเบšเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™.
เบฎเบนเบšเปเบšเบšเบชเบธเบ”เบ—เป‰เบฒเบเบ‚เบญเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบˆเบฐเป€เบ›เบฑเบ™เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

  • เบเบปเบ”เบฅเบฐเบšเบฝเบš 1: เบ–เป‰เบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”(A) > เบšเบธเบฅเบดเบกเบฐเบชเบดเบ”(B), เบงเบฝเบ A เบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ (B เบˆเบฐเบšเปเปˆ)
  • เบเบปเบ”เบฅเบฐเบšเบฝเบš 2: เบ–เป‰เบฒเบšเบธเบฅเบดเบกเบฐเบชเบดเบ”(A) = เบšเบธเบฅเบดเบกเบฐเบชเบดเบ”(B), A&B เปเบกเปˆเบ™เป€เบฅเบตเปˆเบกเบ™เบณเปƒเบŠเป‰ RR
  • เบเบปเบ”เบฅเบฐเบšเบฝเบš 3: เป€เบกเบทเปˆเบญเบงเบฝเบเปƒเบ”เบ™เบถเปˆเบ‡เป€เบ‚เบปเป‰เบฒเบกเบฒเปƒเบ™เบฅเบฐเบšเบปเบš, เบกเบฑเบ™เบˆเบฐเบ–เบทเบเบˆเบฑเบ”เปƒเบชเปˆเปƒเบ™เปเบ–เบงเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡เบชเบธเบ”.
  • เบเบปเบ”เบฅเบฐเบšเบฝเบš 4: เบซเบผเบฑเบ‡เบˆเบฒเบเบงเบฝเบเปƒเบ”เบ™เบถเปˆเบ‡เป„เบ”เป‰เปƒเบŠเป‰เป€เบงเบฅเบฒเบ—เบตเปˆเบˆเบฑเบ”เบชเบฑเบ™เบขเบนเปˆเปƒเบ™เบ„เบดเบงเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™ (เบšเปเปˆเบงเปˆเบฒเบกเบฑเบ™เบˆเบฐเบ›เปˆเบญเบ CPU เป€เบ—เบปเปˆเบฒเปƒเบ”), เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ‚เบญเบ‡เบงเบฝเบเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบˆเบฐเบซเบผเบธเบ”เบฅเบปเบ‡ (เบกเบฑเบ™เป€เบฅเบทเปˆเบญเบ™เบฅเบปเบ‡เบ•เบฒเบกเบ„เบดเบง).
  • เบเบปเบ”เบฅเบฐเบšเบฝเบš 5: เบซเบผเบฑเบ‡เบˆเบฒเบเป„เบฅเบเบฐเป€เบงเบฅเบฒ S, เป‚เบญเบ™เบซเบ™เป‰เบฒเบงเบฝเบเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบฅเบฐเบšเบปเบšเป„เบ›เบซเบฒเบ„เบดเบงเบ—เบตเปˆเบชเบนเบ‡เบ—เบตเปˆเบชเบธเบ”.

MLFQ เปเบกเปˆเบ™เบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบชเปเบฒเบฅเบฑเบšเป€เบซเบ”เบœเบปเบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰ - เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบงเบฒเบกเบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบš
เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เบฅเปˆเบงเบ‡เบซเบ™เป‰เบฒ, algorithm เบฎเบฝเบ™เบฎเบนเป‰เบžเบถเบ”เบ•เบดเบเปเบฒเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เปเบฅเบฐเบŠเบธเบ”
เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเป€เบซเบกเบฒเบฐเบชเบปเบก. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบฅเบฒเบงเบžเบฐเบเบฒเบเบฒเบกเบ™เบฑเปˆเบ‡เบขเบนเปˆเป€เบ—เบดเบ‡เป€เบเบปเป‰เบฒเบญเบตเป‰เบชเบญเบ‡เบ•เบปเบงเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™ - เป€เบžเบทเปˆเบญเบšเบฑเบ™เบฅเบธเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ (SJF, STCF) เปเบฅเบฐเปเบฅเปˆเบ™เบขเปˆเบฒเบ‡เบŠเบทเปˆเบชเบฑเบ”,
เบงเบฝเบเบเบฒเบ™เป‚เบซเบผเบ” CPU. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบซเบผเบฒเบเบฅเบฐเบšเบปเบš, เบฅเบงเบกเบ—เบฑเบ‡ BSD เปเบฅเบฐเบญเบฐเบ™เบธเบžเบฑเบ™เบ‚เบญเบ‡เบžเบงเบเบกเบฑเบ™,
Solaris, Windows, Mac เปƒเบŠเป‰เบšเบฒเบ‡เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡ algorithm เป€เบ›เบฑเบ™เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒ
MLFQ เป€เบ›เบฑเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™.

เบญเบธเบ›เบฐเบเบญเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบก:

  1. manpages.debian.org/stretch/manpages/sched.7.en.html
  2. en.wikipedia.org/wiki/Scheduling_(เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเป‰)
  3. pages.lip6.fr/Julia.Lawall/atc18-bouron.pdf
  4. www.usenix.org/legacy/event/bsdcon03/tech/full_papers/roberson/roberson.pdf
  5. chebykin.org/freebsd-process-scheduling

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™