- •Дайте определение диспетчеру памяти и адресным пространствам. Поясните механизм использования базового и ограничительного регистров.
- •Приведите классификацию ос
- •Проведите обзор файловых систем (ntfs и ufs) Структура ntfs
- •Структура ufs
- •Дайте определение ос, опишите функции ос
- •Опишите основные этапы развития ос
- •Дайте определение виртуальной памяти, страничной организации памяти. Опишите структуру таблиц страниц
- •Опишите механизмы работы буфера быстрого преобразования адреса, многоуровневых и инвертированных таблицы страниц.
- •Дайте определение процессу и опишите блок управления процессом.
- •Опишите механизмы создания и уничтожения процессов Создание процесса
- •Удаление процесса
- •Опишите основные состояния процессов и возможные переходы между ними. Дайте определение переключению контекста.
- •Опишите механизмы диспетчеризации процессов.
- •Дайте определение свопинг. Опишите механизм управления свободной памятью при свопинге (битовые матрицы)
- •Опишите механизм управления свободной памятью при свопинге (связные списки и поиск по ним)
- •Проведите обзор аппаратного обеспечения пк
- •Дайте определение состязательной ситуации, критической области. Поясните механизм работы барьеров и обмена сообщениями
- •Проведите обзор файловых систем (общая информация и fat)
- •Опишите алгоритм замещения страниц wsClock
- •Опишите алгоритм замещения страниц lru
- •Опишите алгоритм замещения страниц ws.
- •Опишите алгоритм замещения страниц Clock
- •Опишите алгоритм замещения страниц nru
- •Опишите оптимальный алгоритм замещения страниц
- •Опишите алгоритм замещения страниц Second Chance
- •Опишите алгоритм замещения страниц fifo
- •Опишите алгоритм диспетчеризации процессов rr
- •Опишите алгоритм диспетчеризации процессов srtf
- •Опишите алгоритм диспетчеризации процессов fcfs
- •Опишите алгоритм диспетчеризации процессов sjf
- •Перечислите основные команды языка сценариев bat
- •Решите задачу производителя/потребителя через sleep и wakeup
- •Решите задачу производителя/потребителя через алгоритм Петерсона
- •Решите задачу производителя/потребителя через семафоры и мьютексы
- •Решите задачу обедающих философов через семафоры и мьютексы
Опишите алгоритм замещения страниц Second Chance
Модификация FIFO, исключающая проблему удаления часто востребуемой страницы через проверку бита R самой старой страницы. Если бит R удаляемой страницы равен 0 – она сразу удаляется. Если бит R удаляемой страницы равен 1 – он сбрасывается в 0, а страница помещается в конец списка страниц и время ее загрузки обновляется, как будто она только что поступила в память. Затем поиск продолжается. Предположим, что ошибка отсутствия страницы возникла на отметке времени 20. Самой старой является страница A, время поступления которой соответствует началу процесса и равно 0. Если бит R для страницы A сброшен, страница либо удаляется из памяти с записью на диск (если она измененная), либо просто удаляется (если она неизмененная). Но если бит R установлен, то A помещается в конец списка и ее «время загрузки» переключается на текущее (20). Также при этом сбрасывается бит R. А поиск подходящей страницы продолжается со страницы B. Алгоритм «второй шанс» занимается поиском ранее загруженной в память страницы, к которой за только что прошедший интервал времени таймера не было обращений. Если обращения были ко всем страницам, то алгоритм «второй шанс» превращается в простой алгоритм FIFO. У всех страниц на рис. а бит R установлен. ОС поочередно перемещает страницы в конец списка, очищая R при каждом добавлении страницы к концу списка. В конце концов она возвращается к странице A, у которой бит R теперь уже сброшен. И тогда страница A выселяется. Таким образом, алгоритм всегда завершает свою работу.
Опишите алгоритм диспетчеризации процессов RR с приоритетами
Cтратегия Round Robin (RR, круговая система) – это предоставление всем процессам по очереди одинаковых квантов времени. Название стратегии происходит от названия популярной в США карточной игры. При данной стратегии каждый процесс получает небольшой квант процессорного времени, обычно – 10-100 миллисекунд. После того, как это время закончено, процесс прерывается и помещается в конец очереди готовых процессов. Если процесс переходит в заблокированное состояние или завершает свою работу до истечения кванта времени, то переключение ЦП происходит именно в этот момент. Если всего имеется n процессов в очереди готовых к выполнению, и квант времени равен q, то каждый процесс получает 1/ n процессорного времени порциями самое большее по q единиц за один раз. Ни один процесс не ждет больше, чем (n-1) q единиц времени. При использовании приоритетов первым в очереди будет выставляться процесс с наивысшим приоритетом.
Механизм планирования должен оказывать предпочтение коротким заданиям с лимитируемым вводом-выводом, чтобы обеспечить хороший коэффициент использования устройств ввода-вывода; как можно быстрее определять характер задания, чтобы соответствующим образом ппланировать его выполнение. Многоуровневые очереди с обратными связями позволяют достичь этих целей.
Важной концепцией, лежащей в основе многих вытесняющих алгоритмов планирования (в том числе, RR), является приоритетное обслуживание. Оно предполагает наличие у процессов некоторой изначально известной характеристики – приоритета, на основании которого определяется порядок выполнения потоков. Чем выше приоритет, тем выше привилегии потока, тем меньше времени поток находится в очередях. Приоритет процесса назначается операционной системой при его создании, его значение включается в дескриптор процесса. При назначении приоритетов вновь созданному процессу ОС учитывается, является ли этот процесс системным или прикладным, каков статус пользователя, запустившего процесс (администратор, пользователь, часть и т.п.), было ли явное указание пользователя на присвоение процессу определенного уровня приоритета.
При диспетчеризации по приоритетам возникает проблема «голодания» (starvation) - ситуации, когда процессы с низким приоритетом могут никогда не исполниться и бесконечно ждать. Традиционным способом решение данной проблемы в операционных системах является учет возраста процесса (aging): c течением времени приоритет процесса повышается системой.