Учебники

31) Пейджинг против сегментации

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

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

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

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

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

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

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

Разница между пейджингом и сегментацией

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ОСНОВНЫЕ РАЗЛИЧИЯ:

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