Читайте также: |
|
-SRT - выбирается каждый раз тот, кому осталось меньше всего выполняться.
-HRRN - выбирается задача с наибольшим относительным обращением.
Синхронизация процессов и потоков, цели и средства синхронизации
-процессы и потоки выполняются асинхронно
-возникает необходимость синхронизации.
-критическая секция: должен выполняться один поток, а при выполнении нескольких
результат будет непредсказуемым.
-как выяснить кого остановить?
создание переменной-флага - плохо, операции проверки не атомарны
-запрет прерываний, а потом разрешение.
на пользовательском уровне запрещено.
поэтому - семафор, mutex.
Гонки (race). Примеры.
-два процесса хотят один ресурс
Критическая секция, блокирующие переменные, семафоры.
-критичес секция.
-семафор - блокир. переменная, но может хранить целые неотрицательные значения
-блоки. переменные.
Тупики (deadlock), примеры
- четыре дороги, каждая машина хочет два ресурса.
Способы решения проблемы тупиков, PAID (Prevent, Avoid, Ignore, Detect)
-таблицы распределения ресурсов.
-таблицы запросов к занятым ресурсам.
-снять часть из них, остальные скинуть на диск.
-PAID
-prevent (позволять захват. только один ресурс, захватывать по порядку, захватывать все, приоритеты)
-avoid - избегать
-ignore - игнорировать, задача пользователя.
-detect - обнаруживать, строить граф, находить циклы.
Сигналы.
-сигнал дает возможность задаче реагировать на событие, вызванное ОС или другой задачей.
-они выполняют прерывание и выполняют заранее предусмотренные действия
-могут приходить от ОС и от программ (асинхронные).
-ctrl-c
Функции ОС по управлению памятью.
- отслеживание свободной и занятой памяти
- выделение памяти процессам и освобождение памяти по завершении процессов
- вытеснение кодов и данных процессов из оперативной памяти на диск (полное или частичное),
когда размеры основной памяти не достаточны для размещения в ней всех процессов, и
возвращение их в оперативную память, когда в ней освобождается место;
- настройка адресов программы на конкретную область физической памяти.
Типы адресов.
-символьные имена - описывает пользователь (переменные)
-виртуальные адреса - после компиляции (адрес относительно нуля)
-физические адреса - реальные адреса исполняемого программного кода.
Соотношение объемов виртуальной и физической памяти.
-если имеется ввиду для программы то чем больше объем виртуальной памяти тем больше программа тупит
Дата добавления: 2015-11-16; просмотров: 98 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Алгоритм Liu, Layland для жестких систем реального времени. | | | Алгоритмы распределения памяти. |