Выделение памяти – это процесс, с помощью которого компьютерным программам выделяется память или пространство.
Здесь основная память делится на два типа разделов
Недостаточно памяти – Операционная система находится в этом типе памяти.
High Memory – пользовательские процессы хранятся в верхней памяти.
Память делится на разные блоки или разделы. Каждый процесс распределяется в соответствии с требованием. Распределение разделов – это идеальный способ избежать внутренней фрагментации.
Ниже приведены различные схемы распределения разделов:
Первая подгонка: при этой подгонке выделяется раздел, который является первым достаточным блоком с начала основной памяти.
Best Fit: Распределяет процесс по разделу, который является первым наименьшим разделом среди свободных разделов.
Наихудшая подгонка: он распределяет процесс по разделу, который является самым большим достаточным свободно доступным разделом в основной памяти.
Следующая подгонка: в большинстве случаев она похожа на первую подгонку, но эта подгонка ищет первый достаточный раздел из последней точки размещения.
Пейджинг – это механизм хранения, который позволяет ОС извлекать процессы из вторичного хранилища в основную память в виде страниц. В методе Paging основная память делится на небольшие блоки физической памяти фиксированного размера, которые называются кадрами. Размер кадра должен быть таким же, как и размер страницы, чтобы максимально использовать основную память и избежать внешней фрагментации. Пейджинг используется для более быстрого доступа к данным, и это логическая концепция.
Процессы сохраняются и удаляются из памяти, что создает свободное место в памяти, которое слишком мало для использования другими процессами.
После этого процесс, который не может быть выделен для блоков памяти, поскольку его небольшой размер и блоки памяти всегда остаются неиспользованными, называется фрагментацией. Этот тип проблемы возникает во время системы динамического выделения памяти, когда свободных блоков достаточно мало, поэтому она не может выполнить любой запрос.
Внешнюю фрагментацию можно уменьшить, переставив содержимое памяти, чтобы разместить всю свободную память вместе в одном блоке.
Внутренняя фрагментация может быть уменьшена путем назначения наименьшего раздела, который все еще достаточно хорош для выполнения всего процесса.
Метод сегментации работает почти так же, как пейджинг. Единственное различие между ними состоит в том, что сегменты имеют переменную длину, тогда как в методе подкачки страницы всегда имеют фиксированный размер.
Программный сегмент включает в себя основную функцию программы, структуры данных, служебные функции и т. Д. ОС поддерживает таблицу сегментной карты для всех процессов. Он также включает в себя список свободных блоков памяти, а также его размер, номера сегментов и места в памяти в основной или виртуальной памяти.
Do'stlaringiz bilan baham: |