
- •1.Определение ос. Требования, предъявляемые к ос. Классификация ос.
- •2.Основные принципы построения ос.
- •3.Понятие процесса и ресурса. Классификация процессов
- •4. Диаграмма состояний процесса
- •5. Контекст и дескриптор процесса.
- •6. Классификация процессов.
- •7. Понятие потока. Способы реализации потоков. Планирование потоков.
- •8. Планирование и диспетчеризация процессов. Стратегии планирования.
- •9. Планирование в системах пакетной обработки данных. Дисциплины fcfs, sjn, snr.
- •10. Планирование в интерактивных системах. Дисциплина rr (круговое планирование), дисциплины приоритетного планирования.
- •11. Планирование в системах реального времени.
- •12. Системные вызовы. Схема обработки системных вызовов.
- •22.Динамическое распределение памяти
- •23.Сегментная организация памяти. Трансляция адресов, основанная на сегментации.
- •24.Сегментно–страничная организация памяти. Преимущества и недостатки данного способа.
- •2 6. Организация виртуальной памяти в операционных системах.
- •27. Физические принципы I/o.
- •28. Структура системы ввода-вывода. Классификация устройств.
- •29. Сетевые операционные системы
- •30. Операционные системы суперкомпьютеров.
- •Семейство суперкомпьютеров sсif
8. Планирование и диспетчеризация процессов. Стратегии планирования.
Одной из важных задач, которую решает ОС является проблема, связанная с определением когда и каким процессам следует выделять ресурсы процессора – задача планирования загрузки процессоров.
Планирование - это организация процессов в некоторую последовательность, согласно заданной стратегии.
Планировщик - это программа, ответственная за постановку процессов в очередь-на-выполнение и управляющая этой очередью.
3 уровня планирования:
Долгосрочное планирование - выбор процесса на запуск системы.
Краткосрочное планирование (диспетчеризация) - определяет поведение системы в ближайшее время вплоть до нескольких тиков таймера.
Среднесрочный – выбор процесса, который может быть выгружен во вторичную память с последующем возвратом в оперативную.
Вытесняющее планирование – в системе есть возможность возврата процесса из выполнения непосредственно в готовность.
Невытесняющее планирование – из выполнения можно перейти только в ожидание.
Планирование производится в вынужденных и не вынужденных случаях:
Выполняющийся процесс завершил работу и покинул систему
Выполняющийся процесс перешел в состояние ожидания
Поступление нового процесса в очередь готовности
Окончание кванта времени выполняющегося процесса
Невытесняющее планирование - только в вынужденных случаях.
Диспетчеризация – поочередное выделение планировщиком операционной система процессам квантов процессорного времени.
9. Планирование в системах пакетной обработки данных. Дисциплины fcfs, sjn, snr.
Используются следующие алгоритмы:
FCFS(первым пришел первым обслужился)
Процессам предоставляется доступ к процессору в том порядке, в котором они его запрашивают. Чаще всего формируется единая очередь ждущих процессов. Как только появляется первая задача, она немедленно запускается и работает столько, сколько необходимо. Остальные задачи ставятся в конец очереди. Когда текущий процесс блокируется, запускается следующий в очереди, а когда блокировка снимается, процесс попадает в конец очереди.
Основным преимуществом этого алгоритма является то, что его легко понять и столь же легко программировать. Он справедлив в том же самом смысле, в каком справедливо распределение дефицитных билетов на концерт или соревнования среди всех желающих стоять в очереди с двух часов ночи. В этом алгоритме все процессы в состоянии готовности контролируются одним связным списком. Чтобы выбрать процесс для запуска, нужно всего лишь взять первый элемент списка и удалить его. Появление нового процесса приводит к помещению его в конец списка - что может быть проще
Достоинства: Простота реализации
Недостатки: Алгоритм очень сильно зависим от входных донных, т.е. эффективность работы системы сильно зависит от порядка поступления процессов в систему. Если сначала выполняются длительные процессы, то коротким процессам придется долго ждать их завершения, значит, увеличивается время ожидания и время оборота. Если сначала выполняются короткие, то время ожидания значительно уменьшится
SJN( Shortest Job Next)
Из очереди готовности на выполнение выбирается тот процесс, которому необходимо для выполнения наименьшее время.
Алгоритм близок к оптимальному
Недостатки:
Нереализуем, поскольку в момент выбора процесса из очереди неизвестно сколько времени этому процессу в будущем понадобиться для выполнения.
SRN( Shortest remain next)
Модификация алгоритма SJN c вытеснением выполняющегося процесса в случае поступления в систему нового процесса ,которому необходимо для выполнения меньше времени, чем осталось выполниться текущему.
Достоинства:
За счет возможности вытеснения короткие процессы не будут ждать долго независимо от момента поступления в систему.
Недостатки:
Нереализуем, поскольку в момент выбора процесса из очереди неизвестно сколько времени этому процессу в будущем понадобиться для выполнения.