- •Классификация ос по назначению:
- •Монолитная структура ос.
- •Переносимость ос может быть достигнута при соблюдении:
- •Процесс – отдельная программа в момент ее выполнения, а также выделенные ей ресурсы.
- •Описание процессов.
- •Создание процесса.
- •Сигнал в ос unix — это асинхронное уведомление процесса о каком-либо событии.
- •Поток — это независимо планируемый контекст выполнения, разделяющий единое адресное пространство с другими потоками своего процесса.
- •Два процесса называются параллельными, если их выполнение может перекрываться во времени.
- •Аппаратные способы достижения взаимного исключения.
- •Семафор – специальная переменная, имеющая целое значение и связанную с ним очередь
- •Классические проблемы межпроцессорного взаимодействия.
- •Планирование – обеспечение поочередного доступа процессов к одному процессору.
- •Фиксированное распределение памяти.
- •Система двойников.
- •Алгоритмы управления виртуальной памятью.
- •Цели и задачи файловой системы.
- •Устройство диска.
- •Атрибуты файлов.
- •Переменные окружения (переменные среды) используются для настройки многих ос. Они задаются в реестре Windows и программным обеспечением.
Семафор – специальная переменная, имеющая целое значение и связанную с ним очередь
Операции над семафорами:
может быть минимизирован неотрицательным значением
операция wait уменьшает значение семафора
операция signal увеличивает значение семафора
Для хранения процессов, ожидающих семафоры, используется очередь.
Мьютекс – переменная, которая может находиться в одном из двух состояний – блокированном и неблокированном.
Монитор – набор процедур, переменных, объединенных в особый модуль.
Основные характеристики монитора:
локальные переменные монитора доступны только его процедурам
процесс входит в монитор путем вызова одной из его процедур
в мониторе может выполняться только один процесс
любой другой процесс, который вызвал монитор, будет ждать доступности монитора
Классические проблемы межпроцессорного взаимодействия.
Производителя и потребителя (ограниченного буфера) – два процесса совместно используют буфер ограниченного размера. Производитель помещает данные, потребитель считывает
Условия синхронизации:
производитель ждет, если буфер полон
потребитель ждет, если буфер пуст
работать с буфером может только один процесс
Проблема читателей и писателей – доступ процессов к разделяемой БД.
Читатели – никогда не модифицировать БД.
Писатели – могут читать и модифицировать БД.
Правила синхронизации:
читатели могут работать параллельно, если никто из писателей не модифицирует БД
модифицировать БД может только один писатель, когда никто не читает информацию из БД
переменная состояния просматривает и меняет только одни процесс
Задача об обедающих философах.
каждый философ должен ждать пока не освободится две вилки рядом с ним
модификация переменных состояния должна выполняться в критической секции
Задача о спящем парикмахере.
В парикмахерской, в которой работает один парикмахер, имеется одно кресло для стрижки и несколько кресел в приемной для посетителей (3-5), ожидающих своей очереди.
Если в парикмахерской нет посетителей, парикмахер засыпает прямо на своем рабочем месте.
Появившийся посетитель должен его разбудить, в результате чего парикмахер приступает к работе.
Если в процессе стрижки появляются новые посетители, они должны либо подождать своей очереди, либо покинуть парикмахерскую, если в приемной нет свободного кресла для ожидания.
Задача о ж/д перегоне.
Железная дорога, соединяющая два города А и В, включает участок, на котором имеется только единственный путь. Движение поездов на единственном пути подчиняется следующим ограничениям:
на свободный единственный путь может войти поезд любого направления
пока на единственном пути находится поезд некоторого направления, на него не может войти поезд другого направления, но может войти поезд того же направления.
Планирование – обеспечение поочередного доступа процессов к одному процессору.
Краткосрочное планирование – решение о том, какой из доступных процессов будет выполняться процессором.
Основные критерии краткосрочного планирования:
время оборота – интервал времени между поступлением процесса и его завершением
время отклика – время между подачей запроса и началом получения ответа на него
предсказуемость – данное задание должно выполняться примерно за одно и то же время
пропускная способность – количество процессов, завершающихся за единицу времени
использование процессора – проценты времени, в течение которого процессор занят
Стратегии краткосрочного планирования:
первым поступил – первым обслужен
кратчайшая задача – первая
наименьшее оставшееся время выполнения
трехуровневое планирование
Циклическое (круговое) планирование (20-200 мс)
приоритетное планирование
Оперативная память — энергозависимая часть системы компьютерной памяти, в которой временно хранятся данные и команды, необходимые процессору для выполнения им операции. Обязательным условием является адресуемость (каждое машинное слово имеет индивидуальный адрес) памяти. Оперативное запоминающее устройство, ОЗУ — техническое устройство, реализующее функции оперативной памяти.
Внешняя память - это память, предназначенная для длительного хранения программ и данных. Целостность содержимого ВЗУ не зависит от того, включен или выключен компьютер.
Динамическая память - это оперативная память ПК, предоставляемая программе при ее работе, за вычетом сегмента данных (64 Кбайт), стека (обычно 16 Кбайт) и собственно тела программы. Размер динамической памяти можно варьировать в широких пределах. По умолчанию этот размер определяется всей доступней памятью ПК и, как правило, составляет не менее 200…300 Кбайт. Динамическая память - это фактически единственная возможность обработки массивов данных большой размерности.
Свопинг – размещение в памяти всего процесса целиком, в запуске его на некоторое время, а затем в сбросе его на диск.
Функции ОС по управлению памятью:
отслеживание свободной и занятой памяти
выделение памяти процессам и освобождение памяти по завершению этих процессов
защита памяти
настройка адресов программ
выделение динамической памяти
перемещение программ между оперативной и внешней памятью
Главная операция по управлению памятью – размещение программы в ОП для ее выполнения процессором.