УПРАВЛЕНИЕ ПАМЯТЬЮ
При управлении памятью ОС выполняет следующие задачи:
1)отслеживание свободной и занятой памяти;
2)выделение памяти процессам;
3)освобождение памяти в случае завершения процесса;
4)вытеснение процессов из памяти при необходимости;
5)возвращение процессов в оперативную память после вытеснения;
6)настройка адресов процесса на физические адреса оперативной памяти.
Виды памяти вычислительной машины.
Внешняя память – память, распределенная по уровню (по классу) ниже оперативной и которая не может напрямую быть использована для выполнения процессов.
Оперативная память – это встроенная память, которая используется для непосредственного выполнения процессов.
Сверхоперативная память – это встроенный вид оперативной памяти, имеющий гораздо более высокую скорость работы.
Регистр процессора – память, расположенная непосредственно в процессоре.
Внешняя память и оперативная память управляют ОС.
Типы адресов
Символьные имена. Это имена элементов процесса (переменные, процедуры, функции), которые определяются пользователем в момент программирования.
|
|
Виртуальные имена (виртуальные адреса). Это условные адреса, которые вырабатываются транслятором (компилятором) из символьных имен. Обычно оно начинается с ячейки «0» и размер его определяется, во-первых, размером программ, а во-вторых разрядностью используемого кода.
Физические адреса. Это адреса ячеек физической памяти.
Преобразование виртуальных адресов в физические происходит 2мя способами:
1) статическое преобразование и использование перемещающего загрузчика (в момент загрузки процессора в физическую оперативную память перемещающий загрузчик определяет начальную свободную ячейку оперативной памяти и на основе этой информации преобразовывает виртуальные адреса в физические; «+» простота реализации и высокая скорость работы; «-» невозможность перемещения процесса в другой участок оперативной памяти (ОП)
2) динамическое преобразование при каждом обращении к ячейке процессора (в этом случае процесс загружается в физическую ОП с использованием своих виртуальных адресов, при каждом обращении к какому-либо виртуальному адресу процесса средствами ОС производится преобразование от виртуального адреса к физическому; «+» возможность перемещения процесса в другие участки ОП в любой момент времени; «-» более сложная реализация и большее время выполнения процесса (более низкая скорость)).