- •Классификация ос по назначению:
- •Монолитная структура ос.
- •Переносимость ос может быть достигнута при соблюдении:
- •Процесс – отдельная программа в момент ее выполнения, а также выделенные ей ресурсы.
- •Описание процессов.
- •Создание процесса.
- •Сигнал в ос unix — это асинхронное уведомление процесса о каком-либо событии.
- •Поток — это независимо планируемый контекст выполнения, разделяющий единое адресное пространство с другими потоками своего процесса.
- •Два процесса называются параллельными, если их выполнение может перекрываться во времени.
- •Аппаратные способы достижения взаимного исключения.
- •Семафор – специальная переменная, имеющая целое значение и связанную с ним очередь
- •Классические проблемы межпроцессорного взаимодействия.
- •Планирование – обеспечение поочередного доступа процессов к одному процессору.
- •Фиксированное распределение памяти.
- •Система двойников.
- •Алгоритмы управления виртуальной памятью.
- •Цели и задачи файловой системы.
- •Устройство диска.
- •Атрибуты файлов.
- •Переменные окружения (переменные среды) используются для настройки многих ос. Они задаются в реестре Windows и программным обеспечением.
Алгоритмы управления виртуальной памятью.
Стратегия выборки – определяет, когда страница должна быть передана в ОП
Выборка по требованию – страница передается в ОП тогда, когда выполняется обращение к ячейке памяти, расположенной на этой странице.
Предварительная выборка – загрузка в ОП нескольких последовательных страниц за один раз
Стратегия размещения – определяет, где именно в физической памяти будут располагаться части процесса
Стратегия замещения – отвечает за выбор страниц в ОП для их замещения страницами, загружаемыми из вторичной памяти
Оптимальный алгоритм – выбор для замещения той страницы, обращение к которой будет выполняться через наибольший промежуток времени по сравнению со всеми остальными страницами
Стратегия дольше всех неиспользовавшегося элемента – замещает в памяти ту страницу, обращений к которой не было дольше, чем к другим страницам: согласно принципу локализации, можно ожидать, что эта страница не будет использоваться и в ближайшем будущем
Стратегия «первым вошел - первым вышел» - рассматривает кадры страниц процесса как циклический буфер с циклическим же удалением страниц из него
Алгоритм «часы» - все страничные блоки в циклическом списке в виде часов. Стрелка указывает на самую старую страницу
Алгоритм «второй шанс» - позволяет избежать потери часто используемых страниц - анализ бита r для самой старой страницы. Если бит 1, то страница в отличие от FIFO не выталкивается, а очищается бит и страница становится в конец очереди
Принципы программного обеспечения ввода-вывода.
независимость от устройств - означает возможность написания программ, способных получать доступ к любому устройству ввода-вывода без предварительного указания конкретного устройства
единообразное именование - имя файла или устройства должно представлять собой просто текстовую строку или целое число и никак не должно зависеть от физического устройства
Способы осуществления ввода-вывода:
программный ввод-вывод
ввод-вывод, управляемый прерываниями
ввод-вывод с использованием прямого доступа к памяти
Программные уровни ввода-вывода.
Программное обеспечение ввода-вывода обычно организовано в виде четырех уровней, где у каждого уровня есть свои функции и строго определенный интерфейс с соседними уровнями.
Когда происходит прерывание, начинает работу обработчик прерываний. По выполнении необходимой работы он может разблокировать драйвер, запустивший его.
Драйверы устройств.
Команды, выдаваемые устройству, зависят от конкретного типа этого устройства, поэтому для управления каждым устройством ввода-вывода требуется специальная программа.
Независимое от устройств, программное обеспечение ввода-вывода.
Оно обеспечивает функции:
единообразный интерфейс для драйверов устройств
буферизацию
сообщения об ошибках
захват и освобождение выделенных устройств
размер блока, не зависящий от устройства
Программное обеспечение ввода-вывода пространства пользователя.
Состоит из библиотек, присоединенных к программам пользователя. Системные вызовы ввода обычно состоят из библиотечных процедур.