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