Пейджинг против сегментации: ключевые различия

Содержание:

Anonim

Что такое пейджинг?

Пейджинг - это механизм хранения, который позволяет ОС извлекать процессы из вторичного хранилища в основную память в виде страниц. В методе пейджинга основная память делится на небольшие блоки физического адреса фиксированного размера, которые называются кадрами.

Размер кадра должен быть таким же, как и у страницы, чтобы максимально использовать основную память и избежать внешней фрагментации. Пейджинг используется для более быстрого доступа к данным, и это логическая концепция.

В этом руководстве вы узнаете

  • Что такое пейджинг?
  • Что такое сегментация?
  • Пейджинг против сегментации
  • Преимущества пейджинга
  • Преимущество сегментации
  • Недостатки пейджинга
  • Недостатки сегментации

Что такое сегментация?

Метод сегментации работает почти так же, как разбиение на страницы, с той лишь разницей, что сегменты имеют переменную длину, тогда как в методе разбиения на страницы страницы всегда имеют фиксированный размер.

Сегмент программы включает в себя основную функцию программы, структуры данных, служебные функции и т. Д. ОС поддерживает таблицу карты сегментов для всех процессов. Он также включает в себя список свободных блоков памяти с указанием их размера, номеров сегментов и ячеек памяти в основной или виртуальной памяти.

КЛЮЧЕВЫЕ ОТЛИЧИЯ:

  • Страница имеет фиксированный размер блока, тогда как сегмент имеет переменный размер.
  • В пейджинге оборудование определяет размер страницы, в то время как размер сегмента задается пользователем.
  • Метод разбиения на страницы быстрее для доступа к памяти, но сегментация медленнее, чем метод разбиения на страницы.
  • При разбивке по страницам пользователь просто предоставляет одно целое число в качестве адреса, а при сегментации доступно множество независимых адресных пространств.
  • Таблица страниц хранит данные страницы, а таблица сегментации хранит данные сегментации.

Разница между разбиением на страницы и сегментацией

Вот различия между методом разбиения по страницам и сегментации:

Пейджинг Сегментация
Страница имеет фиксированный размер блока. Сегмент имеет переменный размер.
Это может привести к внутренней фрагментации. Это может привести к внешней фрагментации.
В пейджинге размер страницы определяет оборудование. Размер сегмента задается пользователем.
Адресное пространство процесса разбивается на блоки фиксированного размера, которые называются страницами. Адресное пространство процесса разбито на блоки разного размера, называемые секциями.
Техника разбиения на страницы быстрее для доступа к памяти. Сегментация выполняется медленнее, чем метод разбиения по страницам.
Таблица страниц хранит данные страницы В таблице сегментации хранятся данные сегментации.
Пейджинг не способствует совместному использованию процедур. Сегментация позволяет разделять процедуры.
Пейджинг не может различать и защищать процедуры и данные по отдельности. Сегментация позволяет разделить защищенные процедуры и данные.
Адресное пространство подкачки одномерно При сегментации доступно множество независимых адресных пространств.
При пейджинге пользователь предоставляет в качестве адреса только одно целое число, которое аппаратно делит на номер страницы и смещение. В методе сегментации пользователь указывает адрес в двух величинах: 1) номер сегмента 2) смещение.

Преимущества пейджинга

Вот плюсы / преимущества использования метода пейджинга

  • На уровне программиста подкачка является прозрачной функцией и не требует вмешательства.
  • Фреймы не обязательно должны быть смежными.
  • Простой в использовании алгоритм управления памятью
  • Легко переключаться между страницами одинакового размера и рамками страниц.

Преимущество сегментации

Вот плюсы / преимущества сегментации:

  • Легче перемещать сегменты, чем все адресное пространство.
  • Отсутствие внутренней фрагментации, поскольку фрагментация внешняя должна быть выполнена.
  • Таблица сегментов имеет меньший размер по сравнению с таблицей страниц в разбивке по страницам.
  • Средний размер сегмента больше фактического размера страницы.
  • Предлагаем защиту внутри сегмента
  • Не предлагает внутренней фрагментации
  • Таблицы сегментов используют меньше памяти, чем разбиение на страницы
  • Поскольку он предлагает небольшую таблицу сегментов, обращение к памяти является простым, что позволяет обмениваться данными между процессами.

Недостатки пейджинга

Вот минусы / недостатки пейджинга:

  • Пейджинг вызывает внутреннюю фрагментацию в старых системах.
  • Более длительное время поиска в памяти по сравнению с сегментацией
  • Это может вызвать внутреннюю фрагментацию
  • Сложный алгоритм управления памятью
  • Таблицы страниц занимают дополнительную память.
  • Многоуровневое разбиение на страницы может привести к перегрузке ссылок на память.

Недостатки сегментации

Вот минусы / недостатки сегментации:

  • Неравный размер сегментов не годится в случае обмена местами.
  • Перенос Linux на разные архитектуры сложно, потому что он предлагает очень ограниченную поддержку сегментации.
  • Это требует вмешательства программиста.
  • Трудно выделить для раздела заразную память, так как она имеет переменный размер.
  • Это дорогостоящий алгоритм управления памятью.