- •Лекция №1
- •История операционных систем.
- •Управление памятью.
- •Однозадачные системы.
- •Лекция №2
- •Способы учета участков памяти.
- •2 Алгоритм (наиболее подходящий).
- •3 Алгоритм (наименее подходящий).
- •4 Алгоритм (алгоритм двоичного разбиения).
- •Лекция №4
- •Принципы
- •Лекция №5
- •Лекция №6 Управление процессами.
- •Алгоритмы планирования системы.
- •Лекция №7
- •Два подхода к планированию.
- •Синхронизация.
- •Лекция №8
- •Тупики.
- •Способы взаимодействия между процессами.
- •Лекция №9 Управление процессами в среде Window’s.
- •Лекция №10
- •Волокна
- •Лекция №11 Синхронизация процессов.
- •Ссобытия
- •Способы взаимодействия процессов.
- •Серверная сторона
- •Второй семестр Управление процессами в среде unix Лекция №1
- •Лекция №2
- •Сигналы.
- •Способ взаимодействия общая память.
- •Лекция №3
- •Семафоры.
- •Лекция №4 Файлы как средства сообщения.
- •Файловыe системы.
- •Примеры файловых систем
- •Лекция № 6
- •Система ext 2
- •Лекция № 7
- •Лекция № 8 Функции работы с файлами в unix.
- •Лекция № 9 Java — скрипт.
- •Лекция № 10
- •Лекция № 11
Лекция №2
Регистр раздела – это регистр, в который записывают адрес начала раздела, в котором сейчас выполняется программа.
ОС
1
2
3
100
А
500
В
100
1,2,3,4
С
Таблица переменных может находиться в любом *.ехе
m ov [101], 10 3B 10 101 add ax, [150]
inc [150] asm 21 150 mov ax,20
mov ax,20 =>8A 20
add ax,[150] 43 15 150
3B 10 101 21 150 8A 20 43 15 150
0 1 2 3 4 5 6 7 8 99
1 способ: ОС направляет адреса ячеек, в соответствии с разделом.
Преимущества: не нужно изменять аппаратную часть, нет никаких накладных расходов.
Недостатки: необходимо изменять программу, увеличивается размер кода.
2 способ: Сегменты.
Введем регистр раздела, в который записывается адрес начала раздела, в котором сейчас выполняется программа.
Как только было обращение к памяти, значение регистра прибавляется к адресу.
Преимущества: не надо править код, не надо интегрировать таблиц.
Недостатки: надо изменять аппаратуру, появление накладных расходов.
ОС
1
2
3
1,2,3,4,5…
Способы учета участков памяти.
Списки (нач. длина) - списки пустых блоков
Карты. Есть массив, каждый элемент которого описывает состояние одного участка, размер элемента массива.
1 алгоритм.
Находится первый подходящий свободный участок памяти и добавляется новый процесс.
2 Алгоритм (наиболее подходящий).
Выбирается самый маленький участок памяти из тех, что свободны и подходят для добавляемого процесса.
3 Алгоритм (наименее подходящий).
Из всей области выбирается самый большой кусок свободной памяти, в который затем и добавляется процесс.
4 Алгоритм (алгоритм двоичного разбиения).
Несколько списков свободных блоков, в каждом списке блоки строго фиксированного и одинакового размера. Причем в каждом следующем списке блоки в два раза больше, чем в предыдущем.
8
8
16
16
32
32
Необходимо вписать 17. Простой случай. Находим подходящий по размеру и выделяем весь. В случае отсутствия подходящего блок берется из старшего, в случае отсутствия процедура повторяется.
ЛЕКЦИЯ №3
Освобождение памяти.
Виртуальная память.
Виртуальная память – это механизм, позволяющий программе обращаться к пространству адресов большему, чем оперативная память вычислительной системы.
У операционной системы должен быть доступ к внешней памяти.
Виртуальная память состоит двух уровней:
уровень логических адесов
уровень физических адесов
Сегментная организация
<сегмент>: смещение (логический уровень)
(сегменты: cs,ds,es,ss,fs,gs)
Алгоритм DAT (динамического преобразования памяти).
Таблица дескрипторов. Каждый элемент таблицы описывает один сегмент. Он содержит адрес начала сегмента в памяти, уровень доступа сегмента и признак наличия сегмента в памяти.
Если обратиться 4, а его не оказывается в памяти, то ОС генерирует прерывание специального вида, которое называется ОТАКЗ СЕГМЕНТА. ОС должна найти этот сегмент и загрузить его в ОЗУ.
Каталог таблиц – это одна таблица, содержащая 4-х байтные записи (1024 записей)
Каждая 4-х байтная запись содержит описание одной страницы, а конкретно номер страницы в памяти.
Таблица страниц имеет тот же самый формат, что и каталог.
12 бит определяют смещение внутри страницы.
Если памяти нет, то генерируется исключение ОТКАЗ СТРАНИЦЫ.