Что такое пейджинг?
Пейджинг — это механизм хранения, который позволяет ОС извлекать процессы из вторичного хранилища в основную память в виде страниц. В методе пейджинга основная память делится на небольшие блоки фиксированного размера физического адреса, которые называются кадрами.
Размер кадра должен быть таким же, как и размер страницы, чтобы максимально использовать основную память и избежать внешней фрагментации. Пейджинг используется для более быстрого доступа к данным, и это логическая концепция.
В этом уроке вы узнаете
- Что такое пейджинг?
- Что такое сегментация?
- Пейджинг против сегментации
- Преимущества пейджинга
- Преимущество сегментации
- Недостатки пейджинга
- Недостатки сегментации
Что такое сегментация?
Метод сегментации работает почти так же, как и пейджинг. Разница между ними заключается лишь в том, что сегменты имеют переменную длину, тогда как в методе пейджинга страницы всегда имеют фиксированный размер.
Программный сегмент включает в себя основную функцию программы, структуры данных, служебные функции и т. Д. ОС поддерживает таблицу сегментной карты для всех процессов. Он также включает в себя список свободных блоков памяти, а также его размер, номера сегментов и места в памяти в основной или виртуальной памяти.
Разница между пейджингом и сегментацией
Здесь есть различия между пейджингом и методом сегментации:
Paging | сегментация |
Страница имеет фиксированный размер блока. | Сегмент имеет переменный размер. |
Это может привести к внутренней фрагментации. | Это может привести к внешней фрагментации. |
В пейджинге аппарат решает размер страницы. | Размер сегмента указывается пользователем. |
Адресное пространство процесса разбивается на блоки фиксированного размера, которые называются страницами. | Адресное пространство процесса разбито на блоки разных размеров, называемые разделами. |
Техника подкачки быстрее для доступа к памяти. | Сегментация медленнее, чем метод подкачки. |
Таблица страниц хранит данные страницы | Таблица сегментации хранит данные сегментации. |
Пейджинг не способствует совместному использованию процедур. | Сегментация позволяет разделять процедуры. |
Пейджинг не может различить и защищать процедуры и данные отдельно. | Сегментация может быть в состоянии разделить безопасные процедуры и данные. |
Пейджинговое адресное пространство является одномерным | В сегментации есть доступность многих независимых адресных пространств |
В пейджинге пользователь просто предоставляет одно целое число в качестве адреса, который делится аппаратными средствами на номер страницы и смещение. | В методе сегментации пользователь указывает адрес в двух величинах: 1) номер сегмента, 2) смещение. |
Преимущества пейджинга
Вот преимущества / преимущества использования метода пейджинга
- На уровне программиста пейджинг является прозрачной функцией и не требует вмешательства.
- Рамки не должны быть смежными.
- Простой в использовании алгоритм управления памятью
- Легко поменять местами страницы одинакового размера и рамки страниц.
Преимущество сегментации
Вот преимущества / преимущества сегментации:
- Простое перемещение сегментов, чем все адресное пространство.
- Отсутствие внутренней фрагментации как внешней фрагментации должно быть сделано.
- Таблица сегментов имеет меньший размер по сравнению с таблицей страниц в подкачке.
- Средний размер сегмента больше фактического размера страницы.
- Предложить защиту внутри сегмента
- Не предлагает внутренней фрагментации
- Сегментные таблицы используют меньше памяти, чем подкачка
- Поскольку он предлагает небольшую таблицу сегментов, ссылка на память проста, что позволяет обмениваться данными между процессами.
Недостатки пейджинга
Вот минусы / недостатки пейджинга:
- Пейджинг вызывает внутреннюю фрагментацию в старых системах.
- Более длительное время поиска в памяти по сравнению с сегментацией
- Это может привести к внутренней фрагментации
- Комплексный алгоритм управления памятью
- Таблицы страниц потребляют дополнительную память.
- Многоуровневое разбиение на страницы может привести к дополнительным затратам памяти.
Недостатки сегментации
Вот минусы / недостатки Сегментации:
- Неравный размер сегментов не подходит в случае замены.
- Портировать Linux на разные архитектуры сложно, потому что он предлагает очень ограниченную поддержку сегментации.
- Это требует вмешательства программиста.
- Трудно выделить заразную память для раздела, поскольку она имеет переменный размер.
- Это дорогостоящий алгоритм управления памятью.
ОСНОВНЫЕ РАЗЛИЧИЯ:
- Страница имеет фиксированный размер блока, тогда как сегмент имеет переменный размер.
- В пейджинге аппаратное обеспечение определяет размер страницы, а размер сегмента задается пользователем.
- Техника подкачки быстрее для доступа к памяти, но сегментация медленнее, чем метод подкачки.
- В пейджинге пользователь просто предоставляет одно целое число в качестве адреса, в то время как в сегментации существует множество независимых адресных пространств
- Таблица страниц хранит данные страницы, а таблица сегментации хранит данные сегментации.