Управление памятью включает:
q распределение имеющейся физической памяти между всеми существующими в системе в данный момент процессами,
q загрузку кодов и данных процессов в отведенные им области памяти,
q настройку адресно-зависимых частей кодов процесса на физические адреса выделенной области, а также защиту областей памяти каждого процесса.
Алгоритмы распределения памятью отличаются между собой:
q Количеством выделяемых процессу областей памяти (в одних случаях память выделяется процессу в виде одной непрерывной области, а в других — в виде нескольких несмежных областей),
q Степенью свободы границы областей (она может быть жестко зафиксирована на все время существования процесса или же динамически перемещаться при выделении процессу дополнительных объемов памяти). В некоторых системах распределение памяти выполняется страницами фиксированного размера, а в других — сегментами переменной длины.
q Методами организации механизма виртуальной памяти. Наличие в ОС механизма виртуальной памяти позволяет программисту писать программу так, как будто в его распоряжении имеется однородная ОП большого объема. В действительности все данные, используемые программой, хранятся на диске и при необходимости частями (сегментами или страницами) отображаются в физическую память.
При перемещении кодов и данных между ОП и диском подсистема виртуальной памяти выполняет трансляцию виртуальных адресов, полученных в результате компиляции и компоновки программы, в физические адреса ячеек оперативной памяти. Очень важно, что все операции по перемещению кодов и данных между ОП и дисками, а также трансляция адресов выполняются ОС прозрачно для программиста.
q Методами защита памяти — это избирательная способность предохранять выполняемую задачу от записи или чтения памяти, назначенной другой задаче. Средства защиты памяти, реализованные в ОС, должны пресекать несанкционированный доступ процессов к чужим областям памяти.
Вывод ОС по отношению к памяти:
q отслеживает области свободной и занятой памяти;
q выделяет память процессам и освобождает память при завершении процессов с элементами защиты;
q вытесняет процессы из ОП на диск, когда размеры основной памяти недостаточны для размещения в ней всех процессов, и возвращение их в ОП, когда в ней освобождается место,
q осуществляет настройку адресов программы на конкретную область физической памяти.
Способность ОС к «экранированию» сложностей реальной аппаратуры очень ярко проявляется в одной из основных подсистем ОС — файловой системе. ОС подменяет реальную аппаратуру удобными для пользователя и программиста абстракциями.
Управление ОС файлами включает:
q Виртуализацию отдельного набора данных, хранящихся на ВЗУ, в виде файла — простой неструктурированной последовательности байтов, имеющей символьное имя.
q Группировку файлов в каталоги, которые, в свою очередь, образуют группы — каталоги более высокого уровня.
q Создание для пользователя среды (интерфейса), в которой легко выполнять действия поиска, удаления, вывода содержимого на внешнее устройство (например, на дисплей), изменение и сохранение содержимого.
q Преобразование символьных имен файлов, с которыми работает пользователь или прикладной программист, в физические адреса данных на диске, организует совместный доступ к файлам, защищает их от несанкционированного доступа, организует каталоги в виде иерархической структуры.
q Взаимодействие с подсистемой управления внешними устройствами, которая по запросам файловой системы осуществляет передачу данных между дисками и оперативной памятью.
q Создание интерфейса ко всем устройствам, подключенным к компьютеру, с учетом программных и аппаратных особенностей (с помощью драйвера). Номенклатура выпускаемых накопителей на жестких, гибких и оптических дисках, принтеров, сканеров, мониторов, плоттеров, модемов, сетевых адаптеров и более специальных устройств ввода-вывода, таких как, например, аналого-цифровые преобразователи, может насчитывать сотни моделей. Эти модели отличаться набором и последовательностью команд, с помощью которых осуществляется обмен информацией с ЦП и ОП, скоростью работы, кодировкой передаваемых данных, возможностью совместного использования и множеством других деталей.
q Поддержание высокоуровневого унифицированного интерфейса прикладного программирования к разнородным устройствам ввода-вывода является одной из наиболее важных задач ОС. Со времени появления ОС UNIX такой унифицированный интерфейс в большинстве ОС строится на основе концепции файлового доступа. Эта концепция заключается в том, что обмен с любым внешним устройством выглядит как обмен с файлом, имеющим имя и представляющим собой неструктурированную последовательность байтов. В качестве файла может выступать как реальный файл на диске, так и алфавитно-цифровой терминал, печатающее устройство или сетевой адаптер.
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет
studopedia.su - Студопедия (2013 - 2025) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав!Последнее добавление