Курсовая работа Операционные системы НГТУ АВТФ. Новосибирский государственный технический университет факультет автоматики и вычислительной техники кафедра вычислительной техники
Скачать 3.29 Mb.
|
3.1. ЗаданиеРазработать структуру функционирования диспетчера работ в вычислительной системе, заданной в разделе 1, на всём интервале работы. Квант времени, выделяемый каждой работе, выбирается исходя из конкретной ситуации: число работ, параллельно занимающих процессор, интервалы времени с коэффициентом многозадачности, дисциплины обслуживания. Диспетчер использует метод разделения времени в сочетании с приоритетами. 3.2. Исходные данныеВариант 8. БП – 1)LIFO , П – 3)SJF. 3.3. Временные диаграммы работы LIFO и SJF.ДО LIFO
Линейная дисциплина обслуживания LIFO (Last In – First Out). Из очереди заявок на обслуживание выбирается заявка, поступившая в очередь последней. Время обработки аналогично FIFO, однако приоритет зависит от того, что задание, пришедшее последним в один и тот же момент времени, что и другие, будет предпочтительнее отдаваться на выполнение на процессоре, нежели остальные. Рисунок 7. Исходная ВД (без ожидания и загрузки) для ДО LIFO. Расчёты: Временной диапазон: 13-16 16-13=63, 3/1=3 Задание 2 получает по Δt CPU = 3 τ2=30-3=27 Временной диапазон: 16-21 21-16=5, 5/1=5 Задание 2 получает по Δt CPU = 5 τ2=27-5=22 Временной диапазон: 21-24 24-21=3, 3/2=1.5 Задания 1 и 2 получают по Δt CPU = 1.5 τ1=90-1.5=88.5 τ2=22-1.5=20.5 Временной диапазон: 24-28 28-24=4, 4/2=2 Задания 1 и 2 получают по Δt CPU = 2 τ1=88.5-2=86.5 τ2=20.5-2=18.5 Временной диапазон: 28-31 31-28=3, 3/2=1.5 Задания 1, 2 получают по Δt CPU = 1.5 τ1=86.5-1.5=85 τ2=18.5-1.5=17 Временной диапазон: 31-32 32-31=1, 1/2=0.5 Задания 1, 2 получают по Δt CPU = 0.5 τ1=85-0.5=84.5 τ2=17-0.5=16.5 Временной диапазон: 32-40 40-32=8, 8/2=4 Задания 1, 2 получают по Δt CPU = 4 τ1=84.5-4=80.5 τ2=16.5-4=12.5 Временной диапазон: 40-44 44-40=4, 4/2=2 Задание 1, 2 получают по Δt CPU = 2 τ1=80.5-2=78.5 τ2=12.5-2=10.5 Временной диапазон: 44-46 46-44=2, 2/2=1 Задания 1, 2 получают по Δt CPU = 1 τ1=78.5-1=77.5 τ2=10.5-1=9.5 Временной диапазон: 46-47 47-46=1, 1/3=0.3 Задания 1, 2 и 3 получают по Δt CPU = 0.3 τ1=77.5-0.3=77.2 τ2=9.5-0.3=9.2 τ3=40-0.3=39.7 Временной диапазон: 47-76 76-47=29, 29/3=9.7 Задания 1, 2 и 3 получают по Δt CPU = 9.7 τ1=77.2-9.7=67.5 τ2=9.2-9.7=0 τ3=39.7-9.7=30 Временной диапазон: 76-81 81-76=5, 5/2=2.5 Задания 1 и 3 получают по Δt CPU = 2.5 τ1=67.5-2.5=65 τ3=30-2.5=27.5 Временной диапазон: 81-121 121-81=40, 40/4=10 Задания 1, 3, 6 и 10 получают по Δt CPU = 10 τ1=65-10=55 τ3=27.5-10=17.5 τ6=10-10=0 τ10=10-10=0 Временной диапазон: 121-131 131-121=10, 10/2=5 Задания 1 и 3 получают по Δt CPU = 5 τ1=55-5=50 τ3=17.5-5=12.5 Временной диапазон: 131-168 168-131=37, 37/3=12.3 Задание 1, 3 и 9 получают по Δt CPU = 12.3 τ1=50-12.3=37.7 τ3=12.5-12.3=0 τ9=60-12.3=47.7 Временной диапазон: 168-198 198-168=30, 30/2=15 Задания 1 и 9 получают по Δt CPU = 15 τ1=37.7-15=22.7 τ9=47.7=32.7 Временной диапазон: 198-266 266-198=20, 68/3=22.7 Задание 1, 9 и 8 получает по Δt CPU = 22.7 τ1=22.7-22.7=0 τ9=32.7-22.7=10 τ8=40-22.7=17.3 Временной диапазон: 266-286 286-266=20, 20/2=10 Задания 9 и 8 получают по Δt CPU = 10 τ9=10-10=0 τ8=17.3-10=7.3 Временной диапазон: 286-296 296-286=10, 10/2=5 Задание 8 и 7 получают по Δt CPU = 5 τ8=7.3-5=2.3 τ7=90-5=85 Временной диапазон: 296-304 304-296=8, 8/3=2.7 Задания 7, 9 и 5 получают по Δt CPU = 2.7 τ8=2.3-2.7=0 τ7=85-2.7=82.3 τ5=60-2.7=57.3 Временной диапазон: 304-334 334-304=30, 30/2=15 Задания 7 и 5 получает по Δt CPU = 15 τ7=82.3-15=67.3 τ5=57.3-15=42.3 Временной диапазон: 334-454 334-454=120, 120/3=40 Задания 7, 9 и 4 получают по Δt CPU = 40 τ7=67.3-40=27.3 τ5=42.3-40=2.3 τ4=40-40=0 Временной диапазон: 454-459 459-454=5, 5/2=2.5 Задание 7 и 9 получают по Δt CPU = 3 τ7=27.3-2.5=24.7 τ5=2.3-2.5=0 Временной диапазон: 459-484 484-459=24, 24/1=24 Задание 7 получает по Δt CPU = 24 τ7=24.7-24=0 Таблица 7. Трассировка планировщика для до LIFO.
Рисунок 8. Временная диаграмма работы ДО LIFO. ДО SJF
Дисциплина обслуживания с фиксированным приоритетом SJF (Short Job First). Из очереди заявок на обслуживание выбирается заявка с минимальным временем обслуживания. Больший приоритет той работе, у которой меньше время ввода. Рисунок 9. Исходная ВД (без ожидания и загрузки) для ДО SJF. Расчёты: Временной диапазон: 13-16 16-13=63, 3/1=3 Задание 2 получает по Δt CPU = 3 τ2=30-3=27 Временной диапазон: 16-21 21-16=5, 5/1=5 Задание 2 получает по Δt CPU = 5 τ2=27-5=22 Временной диапазон: 21-24 24-21=3, 3/2=1.5 Задания 1 и 2 получают по Δt CPU = 1.5 τ1=90-1.5=88.5 τ2=22-1.5=20.5 Временной диапазон: 24-28 28-24=4, 4/2=2 Задания 1 и 2 получают по Δt CPU = 2 τ1=88.5-2=86.5 τ2=20.5-2=18.5 Временной диапазон: 28-31 31-28=3, 3/2=1.5 Задания 1, 2 получают по Δt CPU = 1.5 τ1=86.5-1.5=85 τ2=18.5-1.5=17 Временной диапазон: 31-32 32-31=1, 1/2=0.5 Задания 1, 2 получают по Δt CPU = 0.5 τ1=85-0.5=84.5 τ2=17-0.5=16.5 Временной диапазон: 32-40 40-32=8, 8/2=4 Задания 1, 2 получают по Δt CPU = 4 τ1=84.5-4=80.5 τ2=16.5-4=12.5 Временной диапазон: 40-44 44-40=4, 4/2=2 Задание 1, 2 получают по Δt CPU = 2 τ1=80.5-2=78.5 τ2=12.5-2=10.5 Временной диапазон: 44-46 46-44=2, 2/2=1 Задания 1, 2 получают по Δt CPU = 1 τ1=78.5-1=77.5 τ2=10.5-1=9.5 Временной диапазон: 46-47 47-46=1, 1/3=0.3 Задания 1, 2 и 3 получают по Δt CPU = 0.3 τ1=77.5-0.3=77.2 τ2=9.5-0.3=9.2 τ3=40-0.3=39.7 Временной диапазон: 47-76 76-47=29, 29/3=9.7 Задания 1, 2 и 3 получают по Δt CPU = 9.7 τ1=77.2-9.7=67.5 τ2=9.2-9.7=0 τ3=39.7-9.7=30 Временной диапазон: 76-81 81-76=5, 5/2=2.5 Задания 1 и 3 получают по Δt CPU = 2.5 τ1=67.5-2.5=65 τ3=30-2.5=27.5 Временной диапазон: 81-121 121-81=40, 40/4=10 Задания 1, 3, 6 и 10 получают по Δt CPU = 10 τ1=65-10=55 τ3=27.5-10=17.5 τ6=10-10=0 τ10=10-10=0 Временной диапазон: 121-131 131-121=10, 10/2=5 Задания 1 и 3 получают по Δt CPU = 5 τ1=55-5=50 τ3=17.5-5=12.5 Временной диапазон: 131-168 168-131=37, 37/3=12.3 Задание 1, 3 и 5 получают по Δt CPU = 12.3 τ1=50-12.3=37.7 τ3=12.5-12.3=0 τ5=60-12.3=47.7 Временной диапазон: 168-198 198-168=30, 30/2=15 Задания 1 и 5 получают по Δt CPU = 15 τ1=37.7-15=22.7 τ5=47.7-15=32.7 Временной диапазон: 198-266 266-198=20, 68/3=22.7 Задание 1, 5 и 4 получает по Δt CPU = 22.7 τ1=22.7-22.7=0 τ5=32.7-22.7=10 τ4=40-22.7=17.3 Временной диапазон: 266-276 286-266=10, 10/2=5 Задания 5 и 4 получают по Δt CPU = 5 τ5=10-5=5 τ4=17.3-5=12.3 Временной диапазон: 276-291 291-276=15, 15/3=5 Задание 5, 4 и 9 получают по Δt CPU = 5 τ5=5-5=0 τ4=12.3-5=7.3 τ9=60-5=55 Временной диапазон: 291-306 306-291=15, 15/2=7.5 Задания 4 и 9 получают по Δt CPU = 7.5 τ4=7.3-7.5=0 τ9=55-7.5=47.5 Временной диапазон: 306-311 311-306=5, 5/1=5 Задание 9 получает по Δt CPU = 5 τ9=47.5-5=42.5 Временной диапазон: 311-336 336-311=25, 25/2=12.5 Задания 9 и 7 получают по Δt CPU = 12.5 τ9=42.5-12.5=30 τ7=90-12.5=77.5 Временной диапазон: 336-426 426-336=90, 90/3=30 Задание 7, 9 и 8 получают по Δt CPU = 30 τ9=30-30=0 τ7=77.5-30=47.5 τ8=40-30=10 Временной диапазон: 426-446 446-426=20, 20/2=10 Задания 7 и 8 получает по Δt CPU = 10 τ7=47.5-10=37.5 τ8=10-10=0 Временной диапазон: 446-484 484-446=38, 38/1=38 Задание 7 получает по Δt CPU = 38 τ7=37.5-38=0 Таблица 8. Трассировка планировщика для до SJF.
Рисунок 10. Временная диаграмма работы ДО SJF. Выводы. В процессе выполнения работы были изучены дисциплины обслуживания FIFO, SJF. Для этих дисциплин обслуживания были построены временные диаграммы мультипрограммной работы. В выводе по первой части работы были сравнены дисциплины обслуживания FIFO и SJF (стр. 15-16 и стр. 20-21). Так же была изучена структура диспетчера. Были построены временные диаграммы диспетчеризации при дисциплинах обслуживания LIFO и SJF (стр. 29 и стр. 35). Расчётные данные, используемые при его проектировании, находятся на страницах 23 и 30. Квант времени, выделяемый каждой работе, выбирался исходя из конкретной ситуации: числа работ, параллельно занимающих процессор, интервалов времени с коэффициентом многозадачности, дисциплины обслуживания. Список источниковПособие - Коршикова Л. А. Операционные системы [Электронный ресурс] : электронный учебно-методический комплекс / Л. А. Коршикова ; Новосиб. гос. техн. ун-т. - Новосибирск, [2010]. Коршикова Л.А. Основы операционных систем. Учебное пособие. – Новосибирск.: НГТУ, 2009. – 356с., ил. |